summaryrefslogtreecommitdiffstats
path: root/sysdep/unix
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1999-04-02 15:38:54 +0200
committerMartin Mares <mj@ucw.cz>1999-04-02 15:38:54 +0200
commitfe662dfd782619fd6505a1456b973b2525ab6ebf (patch)
tree1f662f8e0130e18302440251a656c5f42e7cb50a /sysdep/unix
parent0498d92f955f011ceb70e1124f25ac567c359005 (diff)
downloadbird-fe662dfd782619fd6505a1456b973b2525ab6ebf.tar
bird-fe662dfd782619fd6505a1456b973b2525ab6ebf.zip
Fixed `too many interfaces' cases.
Diffstat (limited to 'sysdep/unix')
-rw-r--r--sysdep/unix/krt-iface.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdep/unix/krt-iface.c b/sysdep/unix/krt-iface.c
index 6303558..083af29 100644
--- a/sysdep/unix/krt-iface.c
+++ b/sysdep/unix/krt-iface.c
@@ -147,7 +147,7 @@ krt_if_scan(struct kif_proto *p)
res = ioctl(if_scan_sock, SIOCGIFCONF, &ic);
if (res < 0 && errno != EFAULT)
die("SIOCCGIFCONF: %m");
- if (res < last_ifbuf_size)
+ if (res >= 0 && ic.ifc_len < last_ifbuf_size)
{
scan_ifs(r, ic.ifc_len);
break;