network: prevent adding endpoint routes for addresses on the network
[project/unetd.git] / host.c
diff --git a/host.c b/host.c
index aa3c5b2ffa165cf77329236ef9623fbb0d0a064e..7522e8b1fba8ee0140ff9d7ebb0914b98017114c 100644 (file)
--- a/host.c
+++ b/host.c
@@ -414,7 +414,8 @@ network_hosts_connect_cb(struct uloop_timeout *t)
                if (!ep)
                        continue;
 
-               if (memcmp(ep, &peer->state.endpoint, sizeof(*ep)) != 0)
+               if (memcmp(ep, &peer->state.endpoint, sizeof(*ep)) != 0 &&
+                   !network_skip_endpoint_route(net, ep))
                        unetd_ubus_netifd_add_route(net, ep);
 
                wg_peer_connect(net, peer, ep);