lib/if.c part from [quagga-dev 552] and lib/inklist.c part from [quagga-dev
555]. Okayed by Paul.
diff --git a/lib/if.c b/lib/if.c
index db10bc0..8237b2f 100644
--- a/lib/if.c
+++ b/lib/if.c
@@ -120,7 +120,8 @@
assert (namelen <= (INTERFACE_NAMSIZ + 1));
strncpy (ifp->name, name, namelen);
ifp->name[INTERFACE_NAMSIZ] = '\0';
- listnode_add_sort (iflist, ifp);
+ if (if_lookup_by_name(ifp->name) == NULL)
+ listnode_add_sort (iflist, ifp);
ifp->connected = list_new ();
ifp->connected->del = (void (*) (void *)) connected_free;