summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBeniamino Galvani <bgalvani@redhat.com>2019-10-23 21:52:48 +0200
committerBeniamino Galvani <bgalvani@redhat.com>2019-10-23 21:52:48 +0200
commitd6ee22d198b4939162e6b6d2edd4444829616148 (patch)
tree278d4ccfa9f8982f3728f43eab4de5d590a1c81a
parentea1679aac03f709667d2f89574b2ee1b5af0a361 (diff)
downloadNetworkManager-bg/prefix-route.tar.gz
core: don't add prefix route for /32 addresses without peerbg/prefix-route
Kernel doesn't do it either, see function fib_add_ifaddr().
-rw-r--r--src/nm-ip4-config.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/nm-ip4-config.c b/src/nm-ip4-config.c
index f132e50754..30bd5c6790 100644
--- a/src/nm-ip4-config.c
+++ b/src/nm-ip4-config.c
@@ -713,6 +713,13 @@ nm_ip4_config_add_dependent_routes (NMIP4Config *self,
continue;
}
+ if ( my_addr->plen == 32
+ && my_addr->address == my_addr->peer_address) {
+ /* Kernel doesn't add device-routes for /32 addresses unless
+ * they have a peer. */
+ continue;
+ }
+
r = nmp_object_new (NMP_OBJECT_TYPE_IP4_ROUTE, NULL);
route = NMP_OBJECT_CAST_IP4_ROUTE (r);