chiark / gitweb /
netlink: Fix up link down behaviour
[secnet.git] / slip.c
diff --git a/slip.c b/slip.c
index 7c138d10fe02306cbe792c11520f7520d537a08d..db89a274c2fe1769c055b496a208462e160a44a1 100644 (file)
--- a/slip.c
+++ b/slip.c
@@ -257,11 +257,13 @@ static void userv_invoke_userv(struct userv *st)
 
     allnets=ipset_new();
     for (r=st->slip.nl.clients; r; r=r->next) {
-       struct ipset *nan;
-       r->kup=True;
-       nan=ipset_union(allnets,r->networks);
-       ipset_free(allnets);
-       allnets=nan;
+       if (r->link_quality > LINK_QUALITY_UNUSED) {
+           struct ipset *nan;
+           r->kup=True;
+           nan=ipset_union(allnets,r->networks);
+           ipset_free(allnets);
+           allnets=nan;
+       }
     }
     snets=ipset_to_subnet_list(allnets);
     ipset_free(allnets);