NetworkManager/src
Beniamino Galvani 71270b8295 device: postpone updates of IP configuration when a commit is pending
When a new dynamic configuration is received, it is stored in a member
of private structure (e.g. @dhcp6_ip6_config) and a commit is
scheduled. Before the commit is executed, an update_ipx_config() could
be called and it would change the configuration before it is
committed.

This race condition causes failures in assigning the addresses
received through DHCPv6 when the internal client is used (but
potentially other clients and methods are affected).

To fix it, postpone updates of IP configurations when a commit is
already pending.

(cherry picked from commit a47c13a7a2)
2016-04-29 17:28:37 +02:00
..
devices device: postpone updates of IP configuration when a commit is pending 2016-04-29 17:28:37 +02:00
dhcp-manager core: use nm_utils_machine_id_read() in "nm-dhcp-client.c" 2016-04-26 12:59:20 +02:00
dns-manager dns: avoid using global "/etc/dnsmasq.conf" config for dnsmasq 2016-04-22 13:40:17 +02:00
dnsmasq-manager platform: change @plen field of NMPlatformIPxAddress to type guint8 2016-04-12 11:14:01 +02:00
platform linux-platform: re-read the link type if the name changed 2016-04-29 10:41:58 +02:00
ppp-manager platform: change @plen field of NMPlatformIPxAddress to type guint8 2016-04-12 11:14:01 +02:00
rdisc build: disable deprecation checks for internal compilation 2016-04-05 22:22:58 +02:00
settings settings: don't unload settings plugins on failure 2016-04-29 15:56:20 +02:00
supplicant-manager build: disable deprecation checks for internal compilation 2016-04-05 22:22:58 +02:00
systemd merge: merge branch 'systemd' into master 2016-04-01 15:15:43 +02:00
tests core: add nm_utils_machine_id_read() and parse() util 2016-04-26 12:59:20 +02:00
vpn-manager libnm-core/vpn-connection: get the service for bus path from plugin 2016-04-18 19:01:55 +02:00
main-utils.c main: create parent directories of NMSTATEDIR with permissions 755 2016-03-21 13:31:40 +01:00
main-utils.h main: create parent directories of NMSTATEDIR with permissions 755 2016-03-21 13:31:40 +01:00
main.c main: create parent directories of NMSTATEDIR with permissions 755 2016-03-21 13:31:40 +01:00
Makefile.am core: add nm_utils_machine_id_read() and parse() util 2016-04-26 12:59:20 +02:00
NetworkManager.ver build: hide internal symbols in NetworkManager binary 2016-03-08 17:45:50 +01:00
NetworkManagerUtils.c utils: inject platform into nm_utils_complete_generic() 2016-03-15 12:56:58 +01:00
NetworkManagerUtils.h utils: inject platform into nm_utils_complete_generic() 2016-03-15 12:56:58 +01:00
nm-activation-request.c all: don't include error->code in log messages 2016-03-03 18:54:20 +01:00
nm-activation-request.h core: separate active and applied connection 2015-09-18 17:32:11 +02:00
nm-active-connection.c active-connection: add parent active connection tracking 2016-03-26 11:31:18 +01:00
nm-active-connection.h active-connection: add parent active connection tracking 2016-03-26 11:31:18 +01:00
nm-audit-manager.c audit: use logging helpers 2016-03-04 11:55:41 +01:00
nm-audit-manager.h device: refactor reapply_connection() 2016-01-10 23:14:29 +01:00
nm-auth-manager.c auth: downgrade g_assert() to nm_assert() 2016-04-05 10:39:20 +02:00
nm-auth-manager.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-auth-subject.c auth: allow failures to read process start_time from /proc/$PID/stat with hidepid 2016-04-22 14:42:51 +02:00
nm-auth-subject.h all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-auth-utils.c all: don't include error->code in log messages 2016-03-03 18:54:20 +01:00
nm-auth-utils.h manager: export DNS global configuration D-Bus property 2015-10-01 09:05:08 +02:00
nm-bus-manager.c bus-manager: avoid leaking responses for sync bus calls 2016-03-04 19:08:25 +01:00
nm-bus-manager.h all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-config-data.c libnm,core: fix syntax of 'transfer' annotation 2016-02-24 17:23:01 +01:00
nm-config-data.h main: add argument --print-config to NetworkManager 2015-11-22 13:40:32 +01:00
nm-config.c shared: move nm_utils_ascii_str_to_bool() to shared/nm-shared-utils.h 2016-04-19 15:14:17 +02:00
nm-config.h config: implement nm_config_change_flags_to_string() via NM_UTILS_FLAGS2STR_DEFINE() 2016-01-19 11:14:51 +01:00
nm-connection-provider.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-connection-provider.h core: fix interface type names 2015-09-10 13:43:47 -04:00
nm-connectivity.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-connectivity.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-core-utils.c core: add nm_utils_machine_id_read() and parse() util 2016-04-26 12:59:20 +02:00
nm-core-utils.h core: add nm_utils_machine_id_read() and parse() util 2016-04-26 12:59:20 +02:00
nm-dcb.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-dcb.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-default-route-manager.c Revert "manager: don't remove the device before policy learns of ip config change" 2016-04-04 12:52:56 +02:00
nm-default-route-manager.h default-route-manager: make NMDefaultRouteManager namespace aware 2016-03-15 12:56:58 +01:00
nm-dhcp4-config.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-dhcp4-config.h core: port NMDhcp4Config/NMDhcp6Config to GVariant 2015-07-24 13:25:47 -04:00
nm-dhcp6-config.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-dhcp6-config.h core: port NMDhcp4Config/NMDhcp6Config to GVariant 2015-07-24 13:25:47 -04:00
nm-dispatcher.c dispatcher: use logging helpers 2016-03-04 11:48:04 +01:00
nm-dispatcher.h core: separate active and applied connection 2015-09-18 17:32:11 +02:00
nm-exported-object.c exported-object: reorder includes 2016-04-01 08:58:19 +02:00
nm-exported-object.h exported-object: refactor list of interfaces from GSList to an array 2016-04-01 08:58:18 +02:00
nm-firewall-manager.c core: use defines for signal names in NMDnsManager and NMFirewallManager 2016-04-04 16:48:10 +02:00
nm-firewall-manager.h core: use defines for signal names in NMDnsManager and NMFirewallManager 2016-04-04 16:48:10 +02:00
nm-iface-helper.c platform: change @plen field of NMPlatformIPxRoute to type guint8 2016-04-12 11:14:01 +02:00
nm-ip4-config.c core: expose NMIPAddress instances with prefix zero on D-Bus 2016-04-12 11:16:12 +02:00
nm-ip4-config.h platform: change @plen field of NMPlatformIPxRoute to type guint8 2016-04-12 11:14:01 +02:00
nm-ip6-config.c core: expose NMIPAddress instances with prefix zero on D-Bus 2016-04-12 11:16:12 +02:00
nm-ip6-config.h platform: change @plen field of NMPlatformIPxRoute to type guint8 2016-04-12 11:14:01 +02:00
nm-logging.c logging: add new logging domain "SYSTEMD" for internal systemd logging 2016-03-17 15:00:48 +01:00
nm-logging.h logging: add new logging domain "SYSTEMD" for internal systemd logging 2016-03-17 15:00:48 +01:00
nm-manager.c manager: fix wrongly removing DNS configuration on shutdown 2016-04-20 17:54:24 +02:00
nm-manager.h manager: use defines for signal names 2016-04-04 16:45:48 +02:00
nm-multi-index.c libnm,core: fix syntax of 'transfer' annotation 2016-02-24 17:23:01 +01:00
nm-multi-index.h core: optimize NMMultiIndex by special caseing ids with one value only 2015-12-17 18:42:54 +01:00
nm-policy.c core: use defines for signal names in NMDnsManager and NMFirewallManager 2016-04-04 16:48:10 +02:00
nm-policy.h policy: embed pointer to private data into NMPolicy 2016-04-04 15:47:22 +02:00
nm-rfkill-manager.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-rfkill-manager.h core: skip generating gtype for rfkill enums 2015-08-19 13:49:33 +02:00
nm-route-manager.c platform: change @plen field of NMPlatformIPxRoute to type guint8 2016-04-12 11:14:01 +02:00
nm-route-manager.h route-manager: make NMRouteManager namespace aware 2016-03-15 12:56:58 +01:00
nm-session-monitor.c session-monitor/trivial: rename local functions for unique prefix 2016-03-11 11:12:00 +01:00
nm-session-monitor.h session-monitor: explicitly use singleton instance 2015-08-13 10:06:42 +02:00
nm-sleep-monitor-systemd.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-sleep-monitor-upower.c all: cleanup includes and let "nm-default.h" include "config.h" 2016-02-19 17:53:25 +01:00
nm-sleep-monitor.h all: make use of new header file "nm-default.h" 2015-08-05 15:32:40 +02:00
nm-types.h rdisc: make NMRDisc namespace aware 2016-03-15 12:56:58 +01:00
org.freedesktop.NetworkManager.conf dns: use DBus to make dnsmasq nameserver changes 2016-04-22 13:39:23 +02:00