NetworkManager/src
Thomas Haller 1b0fd9fae0 keyfile: read_connections() must skip duplicate connections
If there are keyfiles with duplicate UUIDs, read_connections()
would iterate over the files, loading them as they appear and
overwriting duplicate connections that were just loaded.

For example, have keyfiles 'A' and 'B' with the same UUID.
On start, NM might first load 'A', then 'B'. 'B' would replace the
content of 'A' which was just loaded.
On reload, NM would first overwrite 'B' with 'A', and then again
overwriting 'A' with 'B'.

Fix that by accept the first found connection and don't overwrite
it during the same read_connections() run.

Also sort the files by file modification timestamp so that we
get a reproducible and sensible behavior.

(cherry picked from commit 8a4e64c6aa)
2015-03-11 17:07:55 +01:00
..
devices wwan: refactor nm_modem_ip_type_to_string() and fix return type 2015-03-05 12:55:04 +01:00
dhcp-manager dhclient: use fqdn.fqdn for server DDNS updates 2015-02-27 10:06:25 -06:00
dns-manager all: consistently include config.h 2014-11-13 17:18:42 -05:00
dnsmasq-manager all: consistently include config.h 2014-11-13 17:18:42 -05:00
platform route-manager: refactor: a readability improvement 2015-03-09 14:27:44 +01:00
ppp-manager ppp-manager: new async stop() method to request stop and wait for it to complete 2015-02-24 16:15:26 -06:00
rdisc ndp: memleak: unregister router advertisement handler on dispose 2015-02-18 18:15:35 +01:00
settings keyfile: read_connections() must skip duplicate connections 2015-03-11 17:07:55 +01:00
supplicant-manager all: consistently include config.h 2014-11-13 17:18:42 -05:00
tests tests: fix NEGATIVE_RETURNS (CWE-394) in tests 2014-12-16 21:47:01 +01:00
vpn-manager core: adjust values for default route-metrics per device type 2014-11-26 20:39:18 +01:00
main-utils.c libnm: remove nm_utils_init() from the public API 2014-12-04 08:39:54 -05:00
main-utils.h core: split signal/pidfile/option handling into separate source file 2014-11-07 12:18:32 -06:00
main.c core: quit if manager startup completed before starting the mainloop 2015-03-11 09:29:32 -05:00
Makefile.am dhcp: re-fix system-dhcp code after re-import 2014-11-19 12:02:12 -05:00
NetworkManagerUtils.c core: log object type in nm_utils_log_connection_diff() 2015-03-11 17:07:55 +01:00
NetworkManagerUtils.h all: move STRLEN() macro to global header nm-utils-internal.h 2014-12-18 17:38:35 +01:00
nm-activation-request.c all: remove a bunch of unnecessary dbus/dbus-glib includes 2014-09-03 10:45:24 -04:00
nm-activation-request.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-active-connection.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-active-connection.h vpn/core: move VPN gateway route between devices when routing changes 2014-11-06 21:17:34 -06:00
nm-auth-manager.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-auth-manager.h core: drop all remaining core-internal error domains 2014-10-22 08:29:10 -04:00
nm-auth-subject.c auth: fix memleak in _new_unix_process() 2015-01-29 15:04:22 +01:00
nm-auth-subject.h auth: support disabling POLKIT authentication entirely at compile time 2014-09-29 13:51:11 +02:00
nm-auth-utils.c auth-utils: memleak: free the key when we steal data 2015-02-18 18:16:31 +01:00
nm-auth-utils.h auth: rework polkit autorization to use DBUS interface directly 2014-09-29 13:51:11 +02:00
nm-config.c config: fix memleak in read_config() 2015-01-29 15:04:23 +01:00
nm-config.h core: add option to quit when startup is complete (rh #863515) (rh #1083683) 2014-11-07 12:18:33 -06:00
nm-connection-provider.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-connection-provider.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-connectivity.c connectivity: memleak: drop async result reference on complete 2015-02-18 18:16:27 +01:00
nm-connectivity.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-dbus-manager.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-dbus-manager.h core: fill in nm-types.h, clean out other headers 2014-07-23 10:56:26 -04:00
nm-dcb.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-dcb.h core: drop all remaining core-internal error domains 2014-10-22 08:29:10 -04:00
nm-default-route-manager.c default-route-manager/trivial: add code comment 2015-02-17 12:29:34 +01:00
nm-default-route-manager.h policy: remove redundant remove_default_route() functions from NMDefaultRouteManager 2014-11-19 22:55:32 +01:00
nm-dhcp4-config.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-dhcp4-config.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-dhcp6-config.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-dhcp6-config.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-dispatcher.c dispatcher: pass CONNECTION_FILENAME to dispatcher scripts 2015-01-14 11:35:17 -05:00
nm-dispatcher.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-firewall-manager.c firewall: always complete callbacks asynchronously 2014-11-19 12:59:42 +01:00
nm-firewall-manager.h firewall: make call handle an opaque pointer type 2014-11-19 12:58:36 +01:00
nm-iface-helper.c iface-helper: disambiguate route priority for IPv4 and IPv6 2014-12-01 16:58:31 +01:00
nm-ip4-config.c core: fix memleak releasing priv->path in NMIP4Config and NMIP6Config 2015-01-29 15:04:22 +01:00
nm-ip4-config.h core: fix route metrics for subnet routes 2014-11-25 22:30:38 +01:00
nm-ip6-config.c core: fix memleak releasing priv->path in NMIP4Config and NMIP6Config 2015-01-29 15:04:22 +01:00
nm-ip6-config.h core: add nm_ip4_config_get_subnet_for_host() function 2014-11-07 15:23:11 +01:00
nm-logging.c logging: pass file:line as separate arguments to _nm_log() 2014-12-18 17:38:35 +01:00
nm-logging.h logging: pass file:line as separate arguments to _nm_log() 2014-12-18 17:38:35 +01:00
nm-manager.c manager: don't re-assume generated connections 2015-02-24 18:55:03 +01:00
nm-manager.h iface-helper: add nm-iface-helper for dynamic configure-then-quit support 2014-11-07 12:18:33 -06:00
nm-policy.c firewall: don't set firewall zone for assumed devices 2014-11-19 12:59:42 +01:00
nm-policy.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-posix-signals.c core: merge src/config, src/logging, src/posix-signals into src/ 2014-07-30 15:56:29 -04:00
nm-posix-signals.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-properties-changed-signal.c core: log ignored property notification with level TRACE 2015-03-11 17:07:55 +01: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 all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-rfkill-manager.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-session-monitor-ck.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-monitor-null.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-monitor-systemd.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-monitor.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-session-utils.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-utils.h core: drop all remaining core-internal error domains 2014-10-22 08:29:10 -04:00
nm-sleep-monitor-systemd.c core: don't auto-launch logind (bgo #741572) 2014-12-16 09:26:32 -06:00
nm-sleep-monitor-upower.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-sleep-monitor.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-types.h policy: add manager for default routes and support multiple default routes 2014-11-07 15:23:12 +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