* src/nm-ip4-config.c
src/nm-ip4-config.h
- (nm_ip4_config_new): don't export over D-Bus here
- (nm_ip4_config_export): new function; export the config over D-Bus
- (nm_ip4_config_is_exported): new function
* src/nm-device.c
- (nm_device_activate_stage5_ip_config_commit): fix leak of IP4Config
objects by balancing the IP4Config constructor; the device holds
a reference to the IP4Config already
- (nm_device_set_ip4_config): export the IP4Config when needed
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4037 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* libnm-util/nm-setting-vpn.c
libnm-util/nm-setting-vpn.h
- Split VPN secrets from VPN data so that settings services can actually
figure out that they are secrets and store them accordingly
* system-settings/plugins/keyfile/nm-keyfile-connection.c
system-settings/plugins/keyfile/reader.c
system-settings/plugins/keyfile/reader.h
system-settings/plugins/keyfile/writer.c
- Store VPN secrets separately from VPN data so that they can be fetched
on demand
- Implement the get_secrets() call so that (a) secrets don't leak out
to unprivileged callers, and (b) secrets can be sent to privileged
callers when needed
* vpn-daemons/vpnc/src/nm-vpnc-service.c
- Handle split VPN secrets
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4031 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* common-gnome/Makefile.am
common-gnome/keyring-helpers.c
common-gnome/keyring-helpers.h
Makefile.am
- Split out keyring read/write routines to common library
* configure.in
- Don't require libgnomeui anymore
* auth-dialog/main.c
- (get_secrets): use common keyring helpers
- (main): remove usage of libgnomeui
* auth-dialog/gnome-two-password-dialog.c
- (gnome_two_password_dialog_get_password,
gnome_two_password_dialog_get_password_secondary): use gnome-keyring
secure memory
* properties/nm-vpnc.c
properties/nm-vpnc-dialog.glade
properties/Makefile.am
- Grab VPN passwords from the keyring if available and allow them to
be edited
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4030 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* auth-dialog/main.c
- (get_secrets): don't gtk_widget_show_all() because that exposes
widgets that were supposed to be hidden
- (main): don't segfault on missing passwords (like hitting Cancel)
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4026 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* auth-dialog/main.c
- (get_secrets): don't gtk_widget_show_all() because that exposes
widgets that were supposed to be hidden
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4025 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* auth-dialog/main.c
- (get_secrets): don't gtk_widget_show_all() because that exposes
widgets that were supposed to be hidden
- (main): don't segfault on missing passwords (like hitting Cancel)
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4024 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Ensure zombie children get cleaned up. To get notifications when children
die abnormally, g_spawn_async() requires G_SPAWN_DO_NOT_REAP_CHILD, but
that requires calling waitpid() yourself if you've removed the child watch
handler before the process has actually died, which NM needs to do in a few
places. So ensure that everything uses G_SPAWN_DO_NOT_REAP_CHILD and also
cleans up after the child when required. Should fix problems trying to
activate mobile broadband connections after a previous failure.
* src/dhcp-manager/nm-dhcp-dhclient.c
src/dhcp-manager/nm-dhcp-dhcpcd.c
- Use G_SPAWN_DO_NOT_REAP_CHILD
* src/dhcp-manager/nm-dhcp-manager.c
- (nm_dhcp_device_destroy): ensure child is cleaned up
- (nm_dhcp_client_stop, nm_dhcp_manager_cancel_transaction_real): always
block on child quitting, since the non-blocking functionality was
never actually used
* src/dnsmasq-manager/nm-dnsmasq-manager.c
- (dm_watch_cb): child is already reaped here
- (ensure_killed, nm_dnsmasq_manager_stop): block until child is dead
* src/nm-device.c
- (aipd_cleanup): block until child is dead
* src/named-manager/nm-named-manager.c
- (run_netconfig): don't use G_SPAWN_DO_NOT_REAP_CHILD if we aren't
event bothering to watch the child
* src/ppp-manager/nm-ppp-manager.c
- (ppp_watch_cb): child is already reaped here
- (ensure_killed, nm_ppp_manager_stop): block until child is dead
* src/vpn-manager/nm-vpn-service.c
- (vpn_service_watch_cb): child is already reaped here
- (nm_vpn_service_daemon_exec): use G_SPAWN_DO_NOT_REAP_CHILD so that
status of the child is actually tracked
- (ensure_killed, finalize): block until child is dead
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4020 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* system-settings/plugins/keyfile/nm-keyfile-connection.c
- (update): Update filename of the connection if the connection id
was changed
* system-settings/plugins/keyfile/plugin.c
- (dir_changed): first pass at handling connection renames correctly
* system-settings/plugins/keyfile/writer.c
system-settings/plugins/keyfile/writer.h
- (write_connection): replace '/' with '*' when writing out the filename
from the connection id
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4018 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
* auth-dialog/main.c
- Convert to connection UUIDs (requires NM svn 4013 or later)
- General cleanups
- Store secrets in the keyring the same way the pptp and vpnc plugins do
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4016 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
Add connection UUIDs, since connection names can be changed, and since
old-style connection IDs could change over the life of the connection. The
UUID should be assigned at connection creation time, be stable for a given
connection, and should be unique among all connections for a given settings
service.
* configure.in
libnm-util/Makefile.am
- Require libuuid
* introspection/nm-exported-connection.xml
- Remove "GetID" method
* libnm-glib/nm-dbus-connection.c
libnm-glib/nm-settings.c
libnm-glib/nm-settings.h
- Remove id-related stuff
* libnm-util/nm-utils.c
libnm-util/nm-utils.h
libnm-util/libnm-util.ver
- (nm_utils_uuid_generate, nm_utils_uuid_generate_from_string): Add
utility functions to generate UUIDs
* libnm-util/nm-setting-connection.c
libnm-util/nm-setting-connection.h
- Add 'uuid' member to the connection setting
- (verify): require valid 'uuid' for a valid connection
* system-settings/plugins/ifcfg-fedora/nm-ifcfg-connection.c
system-settings/plugins/ifcfg-fedora/reader.c
system-settings/plugins/ifcfg-suse/nm-suse-connection.c
system-settings/plugins/ifcfg-suse/parser.c
system-settings/plugins/keyfile/nm-keyfile-connection.c
system-settings/src/main.c
- Remove id-related stuff
- Give connections UUIDs where needed
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4013 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is based on a patch by Roy Marples <roy@marples.name>
Refine the detection logic of the dhcp client to not require a installed dhcp
client and be more backwards compatible:
1.) If no argument is given, first search for dhclient, then dhcpcd. If none is
found, fall back to /sbin/dhclient (old behaviour)
2.) If either dhclient or dhcpcd is used as argument to --with-dhcp-client,
search for the binary and the correct version. Fail if not found.
3.) If a complete path is given, do no search for the binary.
Finally, check if the backend is either "dhclient" or "dhcpcd" and fail
otherwise.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4002 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
The crypto functions are no longer part of the public API/ABI.
Make sure test-crypto compiles all necessary sources and links against the
crypto libraries.
git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3996 4912f4e0-d625-0410-9fb7-b9a5a253dbdc