mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-03 22:37:49 +00:00
2003-09-24 sowmini.varadhan@sun.com
* lib/if.c: (if_cmp_func) fix infinite loop if ifp1->name == ifp2->name
This commit is contained in:
parent
878ef2e780
commit
90578521e5
7
lib/if.c
7
lib/if.c
@ -59,7 +59,7 @@ if_cmp_func (struct interface *ifp1, struct interface *ifp2)
|
||||
p1 = ifp1->name;
|
||||
p2 = ifp2->name;
|
||||
|
||||
while (1) {
|
||||
while (*p1 && *p2) {
|
||||
/* look up to any number */
|
||||
l1 = strcspn(p1, "0123456789");
|
||||
l2 = strcspn(p2, "0123456789");
|
||||
@ -91,6 +91,11 @@ if_cmp_func (struct interface *ifp1, struct interface *ifp2)
|
||||
/* numbers were equal, lets do it again..
|
||||
(it happens with name like "eth123.456:789") */
|
||||
}
|
||||
if (*p1)
|
||||
return 1;
|
||||
if (*p2)
|
||||
return -1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Create new interface structure. */
|
||||
|
Loading…
Reference in New Issue
Block a user