aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/generic/ifreq.h
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-09-20 20:06:45 +0000
committerRoland McGrath <roland@gnu.org>2002-09-20 20:06:45 +0000
commitfcdc67f963a44603553e52a0f883e5d0e5727b34 (patch)
tree64b68e8749cca4a3a7630d9e3b63874ca5845be0 /sysdeps/generic/ifreq.h
parent51104ec01415a078b6d8ab2717721b578dd5d1b3 (diff)
downloadglibc-fcdc67f963a44603553e52a0f883e5d0e5727b34.tar
glibc-fcdc67f963a44603553e52a0f883e5d0e5727b34.tar.gz
glibc-fcdc67f963a44603553e52a0f883e5d0e5727b34.tar.bz2
glibc-fcdc67f963a44603553e52a0f883e5d0e5727b34.zip
* sysdeps/powerpc/bits/setjmp.h [__WORDSIZE]: Add 64-bit jmpbuf.
* sysdeps/powerpc/bits/wordsize.h: New file. * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Change long array to int array for 32-/64-bit compatibility. 2002-09-20 Roland McGrath <roland@redhat.com> * login/programs/utmpdump.c: Don't include <error.h>, <errno.h>. * sysdeps/generic/utimes.c (__utimes): Don't check TVP for null. Reported by Bruno Haible <bruno@clisp.org>. * sysdeps/generic/ifreq.h (__ifreq): Compute termination condition before doubling RQ_LEN. * sysdeps/unix/sysv/linux/ifreq.h (__ifreq): Likewise. Reported by Bruno Haible <bruno@clisp.org>. 2002-09-18 Bruno Haible <bruno@clisp.org> * login/logout.c (logout): Don't assume ut_time has the same size as a time_t. * login/logwtmp.c (logwtmp): Likewise. * sysdeps/pthread/configure: New file, moved here from linuxthreads/sysdeps/unix/sysv/linux/configure.
Diffstat (limited to 'sysdeps/generic/ifreq.h')
-rw-r--r--sysdeps/generic/ifreq.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/sysdeps/generic/ifreq.h b/sysdeps/generic/ifreq.h
index c96d1c8789..f750065cd3 100644
--- a/sysdeps/generic/ifreq.h
+++ b/sysdeps/generic/ifreq.h
@@ -44,10 +44,10 @@ __ifreq (struct ifreq **ifreqs, int *num_ifs, int sockfd)
}
ifc.ifc_buf = NULL;
- rq_len = RQ_IFS * sizeof (struct ifreq);
+ rq_len = RQ_IFS * sizeof (struct ifreq) / 2; /* Doubled in the loop. */
do
{
- ifc.ifc_len = rq_len;
+ ifc.ifc_len = rq_len *= 2;
ifc.ifc_buf = realloc (ifc.ifc_buf, ifc.ifc_len);
if (ifc.ifc_buf == NULL || __ioctl (fd, SIOCGIFCONF, &ifc) < 0)
{
@@ -60,7 +60,6 @@ __ifreq (struct ifreq **ifreqs, int *num_ifs, int sockfd)
*ifreqs = NULL;
return;
}
- rq_len *= 2;
}
while (rq_len < sizeof (struct ifreq) + ifc.ifc_len);