diff options
author | Dan Williams <dcbw@redhat.com> | 2010-08-11 17:26:33 -0500 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2010-08-11 17:31:25 -0500 |
commit | 37c578a2a25a232321f3a541304a11983ef7fcec (patch) | |
tree | 967d7c9d2e39cd1f502bb3996710f7cecba39ee3 /data | |
parent | 92babdb658109cab5cdf9fc0280264ef0715f37d (diff) | |
download | NetworkManager-37c578a2a25a232321f3a541304a11983ef7fcec.tar.gz |
core: fix unmanaging of devices when quitting
When NM quits, we don't want to unmanage a device that has
an active connection and can take that connection over again when
NM starts back up. This makes '/etc/init.d/NetworkManager restart'
work seamlessly. All other devices get unmanaged so their
connection (and any dependent VPN connections or wpa_supplicant
processes) get terminated. This bug caused active VPN connections
over wifi to be left running even when they didn't have IP
connectivity.
There were two bugs:
1) the NMDevice class implemented connection_match_config() for
all device subclasses, but only Ethernet devices can assume
connections at startup. Thus the quit-time check passed for
active wifi devices too, and they weren't properly cleaned up
2) The logic for figuring out which devices to clean up after when
quitting was somewhat flawed; we want to default to unmanaging
devices and then skip that step for ones that meet specific
criteria. Instead the code defaulted to leaving all devices active
at shutdown.
Diffstat (limited to 'data')
0 files changed, 0 insertions, 0 deletions