glibc/include/ifreq.h
H.J. Lu b4744101f3 Hide internal __ifreq function [BZ #18822]
Hide internal __ifreq function to allow direct access within libc.so and
libc.a without using GOT nor PLT.

	[BZ #18822]
	* include/ifreq.h: New file.
	* sysdeps/generic/ifreq.h (__if_nextreq): Removed.
	(__ifreq): Likewise.
	* sysdeps/mach/hurd/ifreq.h (__if_nextreq): Removed.
	(__ifreq): Likewise.
2017-10-01 17:35:46 -07:00

15 lines
359 B
C

#include_next <ifreq.h>
static inline struct ifreq *
__if_nextreq (struct ifreq *ifr)
{
#ifdef _HAVE_SA_LEN
if (ifr->ifr_addr.sa_len > sizeof ifr->ifr_addr)
return (struct ifreq *) ((char *) &ifr->ifr_addr + ifr->ifr_addr.sa_len);
#endif
return ifr + 1;
}
extern void __ifreq (struct ifreq **ifreqs, int *num_ifs, int sockfd)
attribute_hidden;