lib: if_lookup_by_name should be more robust to null argument
* if.c: (if_lookup_by_name) shouldn't crash just cause we got a NULL name
diff --git a/lib/if.c b/lib/if.c
index ecf9ff9..e310711 100644
--- a/lib/if.c
+++ b/lib/if.c
@@ -205,7 +205,8 @@
{
struct interface *ifp;
- return ((ifp = if_lookup_by_name(name)) != NULL) ? ifp->ifindex : 0;
+ return ((ifp = if_lookup_by_name(name)) != NULL) ? ifp->ifindex
+ : IFINDEX_INTERNAL;
}
/* Interface existance check by interface name. */
@@ -214,12 +215,13 @@
{
struct listnode *node;
struct interface *ifp;
-
- for (ALL_LIST_ELEMENTS_RO (iflist, node, ifp))
- {
- if (strcmp(name, ifp->name) == 0)
- return ifp;
- }
+
+ if (name)
+ for (ALL_LIST_ELEMENTS_RO (iflist, node, ifp))
+ {
+ if (strcmp(name, ifp->name) == 0)
+ return ifp;
+ }
return NULL;
}