summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2015-07-13 12:29:18 +0200
committerThomas Haller <thaller@redhat.com>2015-07-13 13:39:33 +0200
commitbefb36691a9336e5e4b80b4f87e5f483da3a4f3f (patch)
treeaabe91d9643bf936cbe99778f1deb85839c0a405
parent09d5fa03928f6915271bd379ab18e5a28b64c9b9 (diff)
downloadNetworkManager-befb36691a9336e5e4b80b4f87e5f483da3a4f3f.tar.gz
default-route-manager: don't add entries with (!synced && never_default)
Entries with (!synced && never_default) make no sense. Don't add them to the list of tracked entires.
-rw-r--r--src/nm-default-route-manager.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/nm-default-route-manager.c b/src/nm-default-route-manager.c
index 8107ae9274..0dfe2d52bf 100644
--- a/src/nm-default-route-manager.c
+++ b/src/nm-default-route-manager.c
@@ -792,8 +792,15 @@ _ipx_update_default_route (const VTableIP *vtable, NMDefaultRouteManager *self,
synced = TRUE;
}
}
+
g_assert (!default_route || default_route->plen == 0);
+ if (!synced && never_default) {
+ /* having a non-synced, never-default entry is non-sensical. Unset
+ * @default_route so that we don't add such an entry below. */
+ default_route = NULL;
+ }
+
if (!entry && !default_route)
/* nothing to do */;
else if (!entry) {