NetworkManager/src
Beniamino Galvani a39fac2248 manager: set interface as removed when the link disappears
Set the device state as removed when the link disappears, so that in
the call to unrealize() when the device is unmanaged we also perform a
cleanup of it and especially, we terminate any DHCP client instances
running on the device.

If we keep DHCP clients running, we can hit assertions later when we
start another instance on the same interface, because we kill the old
dhclient from the pidfile, and the g_child_watch_add() done by the
first client instance is not able to waitpid() it, complaining with:

  GChildWatchSource: Exit status of a child process was requested but
  ECHILD was received by waitpid(). Most likely the process is
  ignoring SIGCHLD, or some other thread is invoking waitpid() with a
  nonpositive first argument; either behavior can break applications
  that use g_child_watch_add()/g_spawn_sync() either directly or
  indirectly.

https://bugzilla.redhat.com/show_bug.cgi?id=1436602
(cherry picked from commit df537d2eac)
2017-04-18 15:10:45 +02:00
..
devices wifi: only attempt to set the scan MAC address when it actually changes 2017-04-11 16:41:27 +02:00
dhcp Remove assertion for empty DHCP options 2017-03-28 06:50:54 +02:00
dns logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
dnsmasq dnsmasq: use ipv4.dns and ipv4.dns-search with ipv4.method=shared 2017-03-03 13:51:05 +01:00
ndisc ndisc: log the device context 2017-03-24 12:42:09 +01:00
platform platform: fix a typo 2017-04-18 09:43:43 +02:00
ppp ppp: allow disabling IPv4 too 2017-04-18 09:41:44 +02:00
settings ifcfg-rh: also check BONDING_OPTS to determine the connection type 2017-03-29 09:48:47 +02:00
supplicant supplicant: log the device context 2017-03-24 12:42:09 +01:00
systemd systemd: merge branch systemd into master 2017-04-04 17:21:46 +02:00
tests core: ignore host part when comparing routes for route-manager 2017-04-15 00:37:22 +02:00
vpn vpn: inline call_plugin_disconnect() 2017-04-15 00:32:23 +02:00
main-utils.c all: use O_CLOEXEC for file descriptors 2016-12-13 11:26:59 +01:00
main-utils.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
main.c core: make connectivity checking per-device 2017-03-28 15:26:47 +02:00
NetworkManagerUtils.c src: only compare network parts of routes in nm_utils_match_connection() 2017-04-15 00:37:22 +02:00
NetworkManagerUtils.h manager: simplify searching assumed connection 2017-03-16 18:27:33 +01:00
nm-act-request.c active-connection: emit a StateChanged signal on state changes 2017-03-17 10:21:19 +01:00
nm-act-request.h core: add activation-type property to active-connection 2017-03-16 18:27:33 +01:00
nm-active-connection.c active-connection: log the connection context 2017-03-24 12:42:09 +01:00
nm-active-connection.h active-connection: emit a StateChanged signal on state changes 2017-03-17 10:21:19 +01:00
nm-audit-manager.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-audit-manager.h audit: add @args to device logging functions 2017-03-06 10:29:37 +01:00
nm-auth-manager.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-auth-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-auth-subject.c all: use "unsigned long" instead of "long unsigned" 2017-03-14 11:23:46 +01:00
nm-auth-subject.h auth: embed private data NMAuthSubjectPrivate in NMAuthSubject struct 2016-05-12 10:24:36 +02:00
nm-auth-utils.c auth-utils: fix possibly uninitialized variables 2017-04-07 12:03:14 -05:00
nm-auth-utils.h all: move NM_AUTH_PERMISSION_* defines to "nm-common-macros.h" header 2016-06-01 19:06:35 +02:00
nm-bus-manager.c core: introduce default logging macros 2016-10-14 15:57:43 +02:00
nm-bus-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-checkpoint-manager.c build: don't add subdirectories to include search path but require qualified include 2016-11-21 14:26:37 +01:00
nm-checkpoint-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-checkpoint.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-checkpoint.h checkpoint: introduce new flags to better restore previous state 2016-10-24 09:57:18 +02:00
nm-config-data.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-config-data.h build: fix -Wignored-qualifiers warnings 2017-02-06 19:27:21 +01:00
nm-config.c config: fix assertion in nm_config_device_state_write() 2017-04-08 10:24:10 +02:00
nm-config.h core: only persist explicit managed state in device's state file 2017-04-07 15:27:26 +02:00
nm-connectivity.c core: make connectivity checking per-device 2017-03-28 15:26:47 +02:00
nm-connectivity.h core: make connectivity checking per-device 2017-03-28 15:26:47 +02:00
nm-core-utils.c tests/general: allow error margin on comparing floats 2017-03-28 13:52:27 +02:00
nm-core-utils.h core/trivial: rename nm_utils_10pow() to nm_utils_exp10() 2017-03-24 11:28:57 +01:00
nm-dcb.c build: don't add subdirectories to include search path but require qualified include 2016-11-21 14:26:37 +01:00
nm-dcb.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
nm-default-route-manager.c default-route-manager: fix possibly uninitialized variable 2017-04-07 12:03:04 -05:00
nm-default-route-manager.h default-route-manager: return whether the default route changed 2017-04-01 15:50:52 +02:00
nm-dhcp4-config.c exported-object: use NM_EXPORT_PATH_NUMBERED() macro 2017-01-03 15:40:17 +01:00
nm-dhcp4-config.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-dhcp6-config.c exported-object: use NM_EXPORT_PATH_NUMBERED() macro 2017-01-03 15:40:17 +01:00
nm-dhcp6-config.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-dispatcher.c core: make connectivity checking per-device 2017-03-28 15:26:47 +02:00
nm-dispatcher.h core/dispatcher: pass act-request to device dispatcher calls 2017-03-16 18:27:33 +01:00
nm-exported-object.c all: use "unsigned long" instead of "long unsigned" 2017-03-14 11:23:46 +01:00
nm-exported-object.h exported-object: add "path" GObject property to have notify signal 2017-01-25 13:12:08 +01:00
nm-firewall-manager.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-firewall-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-iface-helper.c iface-helper: log the device context 2017-03-24 12:42:09 +01:00
nm-ip4-config.c core,libnm-core: use same route attribute names of iproute2 2017-03-22 12:04:25 +01:00
nm-ip4-config.h ip4-config: sort addresses only when reading the property value 2016-12-05 10:56:51 +01:00
nm-ip6-config.c core,libnm-core: use same route attribute names of iproute2 2017-03-22 12:04:25 +01:00
nm-ip6-config.h ip6-config: add nm_ip6_config_set_privacy() 2016-12-05 10:56:51 +01:00
nm-logging.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-logging.h logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-manager.c manager: set interface as removed when the link disappears 2017-04-18 15:10:45 +02:00
nm-manager.h core: add activation-type property to active-connection 2017-03-16 18:27:33 +01:00
nm-multi-index.c all: modify line separator comments to be 80 chars wide 2016-10-03 12:01:15 +02:00
nm-multi-index.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
nm-pacrunner-manager.c pacrunner: remove failed and pending items from configuration list 2017-04-11 10:37:10 +02:00
nm-pacrunner-manager.h pacrunner: rework processing of configuration entries 2017-04-11 10:36:56 +02:00
nm-policy.c policy: add some verbose logging for tracking hostname management 2017-03-24 15:18:09 +01:00
nm-policy.h policy: add support to configurable hostname mode 2017-03-24 15:18:09 +01:00
nm-proxy-config.c proxy: reorder parts in nm-proxy-config.c and nm-pacrunner-manager.c 2016-10-04 11:58:32 +02:00
nm-proxy-config.h proxy: remove unnecessary APIs 2016-10-04 11:44:44 +02:00
nm-rfkill-manager.c udev: drop libgudev in favor of libudev 2017-03-22 12:41:06 +01:00
nm-rfkill-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-route-manager.c core: ignore host part when comparing routes for route-manager 2017-04-15 00:37:22 +02:00
nm-route-manager.h route-manager: emit a signal when IPv4 routes change 2017-03-22 12:21:39 +01:00
nm-session-monitor.c session: make systemd-logind and elogind conflicting build options 2017-02-24 13:06:13 +01:00
nm-session-monitor.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-sleep-monitor.c session: make systemd-logind and elogind conflicting build options 2017-02-24 13:06:13 +01:00
nm-sleep-monitor.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-test-utils-core.h all: use "unsigned long" instead of "long unsigned" 2017-03-14 11:23:46 +01:00
nm-types.h core: track external activations types in the active-connection 2017-03-16 18:27:33 +01:00
org.freedesktop.NetworkManager.conf dns: use DBus to make dnsmasq nameserver changes 2016-04-21 15:32:07 +02:00