NetworkManager/src
Thomas Haller 43b77d7c32 device: always pickup externally configured default routes for a device
Even more eagerly pickup external default routes from the device.
For assumed devices we already picked up the default route.

(a) For assumed devices we already did not enforce the default route at all.
Instead it was always picked up by from the actualy system
configuration. Note that this is the case for assumed-generated
connections and for assuming existing connections.
That means that when NM assumes a connection at startup, it will never
actively manage the default route on that interface. It will only react
on what is present.

(b) For managed devices that have by configuration no default route, still pick up
the default route. That means, that even a device that is managed and
never-default=yes, can have the default route -- if configured externally.

(c) Only during a commit phase (i.e. when we have new configuraiton to be
applied), we enforce the default route or its absence.

(d) During any IP change event from platform, we again pickup whatever
is present. That means if you remove the default route from a managed
interface, NM will not re-add it until anything triggers (c).

This also means, that during the commit phase, we add default routes as
'synced' to the default-route-manager, but the following event from platform,
will change the route entry immediately to 'non-synced'. That is
expected and correct.

(cherry picked from commit da708059da)
2015-06-22 10:23:14 +02:00
..
devices device: always pickup externally configured default routes for a device 2015-06-22 10:23:14 +02:00
dhcp-manager core: add nm_utils_setpgid(), and use it 2015-06-20 11:01:27 +02:00
dns-manager core: add nm_utils_setpgid(), and use it 2015-06-20 11:01:27 +02:00
dnsmasq-manager core: add nm_utils_setpgid(), and use it 2015-06-20 11:01:27 +02:00
platform platform: don't assert for valid ifindex in nm_platform_link_get() 2015-06-22 09:56:06 +02:00
ppp-manager core: add nm_utils_setpgid(), and use it 2015-06-20 11:01:27 +02:00
rdisc builds: only enable TAP driver for glib >= 2.37.6 2015-06-19 11:52:50 +02:00
settings settings: print filename of loaded setting plugins 2015-06-22 09:56:05 +02:00
supplicant-manager supplicant: disconnect properties handler on dispose 2015-06-20 11:28:48 +02:00
tests Revert "core: add NMRefString" 2015-06-22 09:54:36 +02:00
vpn-manager platform: signal missing firmware in nm_platform_set_up() 2015-06-22 09:54:52 +02:00
main-utils.c core: use GUnixSignalWatchSource to simplify signal handling 2015-06-20 10:48:21 +02:00
main-utils.h core: use GUnixSignalWatchSource to simplify signal handling 2015-06-20 10:48:21 +02:00
main.c platform: signal missing firmware in nm_platform_set_up() 2015-06-22 09:54:52 +02:00
Makefile.am platform: add nmp-object.h file 2015-06-21 15:21:56 +02:00
NetworkManagerUtils.c platform: refactor virtual methods for link objects in NMPlatform 2015-06-22 09:56:06 +02:00
NetworkManagerUtils.h Revert "core: add NMRefString" 2015-06-22 09:54:36 +02:00
nm-activation-request.c core, dispatcher: drop unnecessary setpgid() calls 2015-06-20 10:56:58 +02: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 logging: use _nm_log() to avoid duplicate check of whether logging is enabled 2015-04-29 15:15:39 +02: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-data.c build: rename file "include/nm-utils-internal.h" to "nm-macros-internal.h" 2015-06-19 12:21:58 +02:00
nm-config-data.h config: support a [connection] section to NetworkManager.conf to specify connection defaults 2015-06-19 12:10:51 +02:00
nm-config.c config: publish nm_config_keyfile_get_boolean() utility function 2015-06-19 12:10:51 +02:00
nm-config.h config: publish nm_config_keyfile_get_boolean() utility function 2015-06-19 12:10:51 +02: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 build: use compat version of g_clear_pointer() 2015-06-18 12:11:37 +02:00
nm-connectivity.h connectivity: make NMConnectivity independent of NMConfig 2015-05-05 16:50:10 +02:00
nm-dbus-manager.c dbus-manager: harden registering/unregistering object 2015-04-23 19:51:42 +02:00
nm-dbus-manager.h dbus-manager: add nm_dbus_manager_setup() function for testing 2015-03-13 11:50:50 +01:00
nm-dcb.c core: use GUnixSignalWatchSource to simplify signal handling 2015-06-20 10:48:21 +02: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: fix syncing routes to consider non-synced routes 2015-06-19 13:43:02 +02:00
nm-default-route-manager.h default-route: add @out_is_never_default argument to has_default_route() 2015-06-19 13:42:21 +02: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 trivial: remove a tautological compare 2015-05-11 15:31:16 +02: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 nm-iface-helper: small signal handling fixup 2015-06-20 10:53:12 +02:00
nm-ip4-config.c core: add intersect() functions to NMIP?Config 2015-06-22 10:23:14 +02:00
nm-ip4-config.h core: add intersect() functions to NMIP?Config 2015-06-22 10:23:14 +02:00
nm-ip6-config.c core: add intersect() functions to NMIP?Config 2015-06-22 10:23:14 +02:00
nm-ip6-config.h core: add intersect() functions to NMIP?Config 2015-06-22 10:23:14 +02:00
nm-logging.c logging/trivial: rename _nm_log() to _nm_log_impl() 2015-04-29 15:15:17 +02:00
nm-logging.h build: rename file "include/nm-utils-internal.h" to "nm-macros-internal.h" 2015-06-19 12:21:58 +02:00
nm-manager.c platform: refactor virtual methods for link objects in NMPlatform 2015-06-22 09:56:06 +02: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-multi-index.c all: fix additional compiler warningis about function declarations 2015-06-22 09:56:05 +02:00
nm-multi-index.h core: add NMMultiIndex class 2015-06-21 15:21:56 +02:00
nm-policy.c core: (trivial) fix spelling in comments 2015-06-19 13:38:49 +02:00
nm-policy.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 platform: implement NMPObject and NMPCache 2015-06-21 15:21:56 +02:00
org.freedesktop.NetworkManager.conf dbus: increase 'max_replies_per_connection' limit in D-Bus configuration 2015-05-29 08:29:04 +02:00