[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#740509: ifconfig: ioctl(SIOCGIFINFO_IN6): No such device or address



reassign 740509 libc0.1
found 740509 glibc/2.19-11
tags 740509 + jessie sid
affects 740509 freebsd-net-tools
user debian-bsd@lists.debian.org
usertags 740509 + kfreebsd
thanks

On 13:10, Robert Millan wrote:
> $ sudo ifconfig -a
> : flags=8802<BROADCAST,SIMPLEX,MULTICAST>
> ifconfig: ioctl(SIOCGIFINFO_IN6): No such device or address
> : flags=0<>
> ifconfig: ioctl(SIOCGIFINFO_IN6): No such device or address
> : flags=0<>
> ifconfig: ioctl(SIOCGIFINFO_IN6): No such device or address
> : flags=8008<LOOPBACK,MULTICAST>
> ifconfig: ioctl(SIOCGIFINFO_IN6): No such device or address

I think this could be related to a workaround in glibc local-sysdeps.diff
for kfreebsd:

+             /* FIXME: 'struct if_msghdr' contains a 'struct if_data' which in turns
+                contains 'unsigned long' values. Their size therefore depends on
+                the running kernel (32 or 64 bits). This should be fixed in the
+                compat layer of the kernel. Meanwhile just workaround the bug here/ */
+#if 0
+             sdl = (struct sockaddr_dl *) (msg + 1);
+#else
+             sdl = (struct sockaddr_dl *) (p + msg->ifm_msglen - sizeof(struct sockaddr_dl) - 2);
+#endif

whereas if_data was removed from the struct in the following commit, to
fix the ABI break;  that means the workaround should no longer be used?
http://svnweb.freebsd.org/base/head/sys/net/if.h?r1=231504&r2=231503&pathrev=231504

Regards,
-- 
Steven Chamberlain
steven@pyro.eu.org


Reply to: