NetworkManager/src
Dan Williams 4040198b47 core: queue re-activations to allow DEACTIVATING state
If a device is already activated, queue the new activation to allow
the transition through the DEACTIVATING state.

---

Also remove the "HACK" bits in nm_device_deactivate(). This hack was
added on 2007-09-25 in commit 9c2848d.  At the time, with user settings
services, if a client created a connection and requested that NM
activate it, NM may not have read the connection from the client over
D-Bus yet.  So NM created a "deferred" activation request which waited
until the connection was read from the client, and then began activation.

The Policy watched for device state changes and other events (like
it does now) and activated a new device if the old one was no longer
valid.  It specifically checked for deferred activations and then
did nothing.  However, when the client's connection was read, then
nm-device.c cleared the deferred activation bit, leading to a short
period of time where the device was in DISCONNECTED state but there
was no deferred activation, because the device only changes state to
PREPARE from the idle handler for stage1.  If other events happened
during this time, the policy would tear down the device that was
about to be activated. This early state transition to PREPARE
worked around that.

We need to remove it now though, because (a) the reason for its
existence is no longer valid, and (b) _device_activate() may now
be called from inside nm_device_state_changed() and thus it cannot
change to a new state inside the function.
2014-02-25 18:03:02 -06:00
..
bluez-manager core: remove useless NMSettings::connections-loaded signal 2014-01-23 15:14:49 -05:00
config coverity: fix various warnings detected with Coverity 2013-11-13 15:29:24 +01:00
devices core: queue re-activations to allow DEACTIVATING state 2014-02-25 18:03:02 -06:00
dhcp-manager core: use nm_utils_get_monotonic_timestamp_s for timestamp of NMPlatformIP[46]Address 2014-01-30 19:51:45 +01:00
dns-manager dns-manager: allow NULL interface name for IP configs 2014-01-24 09:42:51 -06:00
dnsmasq-manager trivial: fix a coverity warning 2014-01-31 19:49:52 +01:00
firewall-manager firewall: ignore UNKNOWN_INTERFACE errors 2014-02-25 17:22:08 -06:00
logging logging: fix "nmcli gen log level FOO" 2014-01-22 09:48:42 -05:00
modem-manager mobile: use gateway returned from ModemManager 2014-02-21 09:45:06 -06:00
platform platform: downgrade error logging about NLE_DUMP_INTR on event socket 2014-02-25 16:31:53 +01:00
posix-signals core: use non-recursive build 2013-05-08 15:07:18 -04:00
ppp-manager core/platform: add address/route sources (rh#1005416, bgo#722843) 2014-01-24 09:42:52 -06:00
rdisc rdisc: print gateway for routes in rdisc debugging output 2014-02-24 18:29:25 +01:00
settings settings: free memory in finalize(), not in dispose() in NMSecretAgent (rh #1061911) 2014-02-25 14:27:48 +01:00
supplicant-manager core: use nm_utils_get_monotonic_timestamp_s in nm-supplicant-interface 2014-01-30 19:51:45 +01:00
tests core: add function nm_utils_ip6_address_clear_host_address() 2014-02-14 21:40:58 +01:00
vpn-manager core/platform: add address/route sources (rh#1005416, bgo#722843) 2014-01-24 09:42:52 -06:00
wifi replace snprintf by g_snprintf 2014-02-24 21:35:33 +01:00
main.c replace snprintf by g_snprintf 2014-02-24 21:35:33 +01:00
Makefile.am libnm-util, libnm-glib: add versioned deprecation/availability macros 2014-02-13 11:24:37 -05:00
NetworkManagerUtils.c trivial: fix whitespace 2014-02-24 21:35:33 +01:00
NetworkManagerUtils.h core: add function nm_utils_ip6_address_clear_host_address() 2014-02-14 21:40:58 +01:00
nm-activation-request.c core: add IP/DHCP config properties to o.fd.NM.Connection.Active 2013-12-19 11:49:50 -05:00
nm-activation-request.h core: allow active connection 'master' to be set after object creation 2013-10-31 14:15:08 -05:00
nm-active-connection.c core: don't block startup on assumed connections 2014-02-13 16:40:12 -05:00
nm-active-connection.h core: add IP/DHCP config properties to o.fd.NM.Connection.Active 2013-12-19 11:49:50 -05:00
nm-atm-manager.c trivial: whitespace fix 2013-11-07 21:32:08 +01:00
nm-atm-manager.h core: split NMAtmManager out of NMUdevManager 2013-06-05 17:49:25 -03:00
nm-auth-subject.c settings: prefer secret agents in the same process as the request 2013-12-03 16:41:00 -05:00
nm-auth-subject.h settings: prefer secret agents in the same process as the request 2013-12-03 16:41:00 -05:00
nm-connection-provider.c core: remove useless NMSettings::connections-loaded signal 2014-01-23 15:14:49 -05:00
nm-connection-provider.h core: remove useless NMSettings::connections-loaded signal 2014-01-23 15:14:49 -05:00
nm-connectivity.c trivial: nm_connectivity_check_async() returns void -> use g_return_if_fail() 2013-08-29 10:22:22 +02:00
nm-connectivity.h core: provide additional network connectivity information 2013-08-28 10:54:08 -04:00
nm-dbus-manager.c core: suppress logging warning when trying to create existing directory 2013-12-04 17:14:34 +01:00
nm-dbus-manager.h core: grab remote process id when authenticating D-Bus clients 2013-10-31 14:15:07 -05:00
nm-dcb.c core: add dcbtool manipulation logic 2013-10-31 13:29:22 -05:00
nm-dcb.h core: add dcbtool manipulation logic 2013-10-31 13:29:22 -05:00
nm-dhcp4-config.c core: make nm-properties-changed-signal always export the right properties 2013-05-20 16:38:33 -03:00
nm-dhcp4-config.h core: make nm-properties-changed-signal always export the right properties 2013-05-20 16:38:33 -03:00
nm-dhcp6-config.c core: make nm-properties-changed-signal always export the right properties 2013-05-20 16:38:33 -03:00
nm-dhcp6-config.h core: make nm-properties-changed-signal always export the right properties 2013-05-20 16:38:33 -03:00
nm-dispatcher.c dispatcher: handle VPN connections without interface names 2014-01-24 09:42:51 -06:00
nm-dispatcher.h core: add cancelation to dispatcher calls 2012-09-11 17:17:58 -05:00
nm-hostname-provider.c misc: license fixups 2010-01-21 15:11:50 -08:00
nm-hostname-provider.h misc: license fixups 2010-01-21 15:11:50 -08:00
nm-ip4-config.c core/platform: preserve external and static route metrics 2014-01-24 09:42:52 -06:00
nm-ip4-config.h platform/core: add back support for PtP/peer addresses (rh #1018317) 2013-12-02 15:00:28 -05:00
nm-ip6-config.c core/platform: preserve external and static route metrics 2014-01-24 09:42:52 -06:00
nm-ip6-config.h platform/core: add back support for PtP/peer addresses (rh #1018317) 2013-12-02 15:00:28 -05:00
nm-manager-auth.c core: fix crash when connecting to new Wi-Fi network (bgo #723163) 2014-01-28 12:09:22 -05:00
nm-manager-auth.h core: remove unused auth chain creation functions 2013-10-31 14:15:08 -05:00
nm-manager.c core: queue re-activations to allow DEACTIVATING state 2014-02-25 18:03:02 -06:00
nm-manager.h core: provide useful error messages to main() on Manager creation failure 2014-01-24 13:14:05 -06:00
nm-policy-hosts.c trivial: plug some memory leaks 2013-02-25 16:07:03 +01:00
nm-policy-hosts.h policy: stop touching /etc/hosts 2010-12-17 09:28:49 -06:00
nm-policy.c core: don't recursively schedule an autoactivate check on a device 2014-02-17 14:57:15 -05:00
nm-policy.h core: add NMManager:primary-connection and :activating-connection 2013-08-28 11:01:13 -04:00
nm-properties-changed-signal.c logging: tweak logging-enabled functions 2013-12-20 09:57:13 -05:00
nm-properties-changed-signal.h core: make nm-properties-changed-signal always export the right properties 2013-05-20 16:38:33 -03:00
nm-rfkill-manager.c core: split NMRfkillManager out of NMUdevManager 2013-06-05 17:49:24 -03:00
nm-rfkill-manager.h core: split NMRfkillManager out of NMUdevManager 2013-06-05 17:49:24 -03:00
nm-session-monitor-ck.c core: make NMSessionMonitor non-refcounted 2013-12-03 16:39:37 -05:00
nm-session-monitor-null.c core: make NMSessionMonitor non-refcounted 2013-12-03 16:39:37 -05:00
nm-session-monitor-systemd.c sessions: fix return value handling for sd_uid_get_sessions() (bgo #707983) 2014-01-23 16:48:19 -06:00
nm-session-monitor.h settings: clean up connection visibility and session change handling 2010-10-26 16:33:47 -05:00
nm-session-utils.c Use glib-mkenums to generate enum types 2012-02-15 11:42:15 -05:00
nm-session-utils.h Fix names of error enum values 2012-03-12 15:29:52 -04:00
nm-sleep-monitor-systemd.c sleep-monitor: add missing include 2013-09-13 09:05:07 -04:00
nm-sleep-monitor-upower.c core: convert the DBus manager to a single-ref object 2013-05-20 16:38:33 -03:00
nm-sleep-monitor.h core: factor out the upower suspend/resume code (bgo #677694) 2012-10-13 09:20:00 -05:00
nm-types.h core: add header for NM object types 2012-12-17 17:01:10 -06:00
nm-wifi-ap-utils.c coverity: fix various warnings detected with Coverity (fixup) 2013-11-13 18:43:18 +01:00
nm-wifi-ap-utils.h wifi: fix scanned signal strength calculation for WEXT-based drivers 2011-03-13 12:50:40 -05:00
nm-wifi-ap.c core: use nm_utils_get_monotonic_timestamp_s for nm_ap_set_last_seen 2014-01-30 19:51:45 +01:00
nm-wifi-ap.h core: use nm_utils_get_monotonic_timestamp_s for nm_ap_set_last_seen 2014-01-30 19:51:45 +01:00
org.freedesktop.NetworkManager.conf dbus: kill at_console usage in permissions (bgo #707983) (rh #979416) 2014-01-23 16:48:19 -06:00