--- ipme.c.dist 2004-07-04 20:46:50.000000000 -0400 +++ ipme.c 2004-07-04 20:49:33.000000000 -0400 @@ -48,7 +48,7 @@ if ((s = socket(AF_INET,SOCK_STREAM,0)) == -1) return -1; - len = 256; + len = 8192; /* any value big enough to get all the interfaces in one read is good */ for (;;) { if (!stralloc_ready(&buf,len)) { close(s); return 0; } buf.len = 0; @@ -60,7 +60,7 @@ break; } if (len > 200000) { close(s); return -1; } - len += 100 + (len >> 2); + len *= 2; } x = buf.s; while (x < buf.s + buf.len) {