Author: aurel32 Date: 2014-10-27 20:39:02 +0000 (Mon, 27 Oct 2014) New Revision: 6315
Modified: glibc-package/trunk/debian/changelog glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff Log: kfreebsd/local-fbtl.diff: update to revision 5677 (from glibc-bsd). Workarounds a kfreebsd 9.0 to 10.1 ABI break. Closes: #740509. Modified: glibc-package/trunk/debian/changelog =================================================================== --- glibc-package/trunk/debian/changelog 2014-10-27 20:36:54 UTC (rev 6314) +++ glibc-package/trunk/debian/changelog 2014-10-27 20:39:02 UTC (rev 6315) @@ -1,6 +1,8 @@ glibc (2.19-13) UNRELEASED; urgency=medium - * + [ Aurelien Jarno ] + * kfreebsd/local-fbtl.diff: update to revision 5677 (from glibc-bsd). + Workarounds a kfreebsd 9.0 to 10.1 ABI break. Closes: #740509. -- Aurelien Jarno <[email protected]> Mon, 27 Oct 2014 21:36:32 +0100 Modified: glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff =================================================================== --- glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff 2014-10-27 20:36:54 UTC (rev 6314) +++ glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff 2014-10-27 20:39:02 UTC (rev 6315) @@ -17400,7 +17400,7 @@ +libc_hidden_def (if_freenameindex) --- /dev/null +++ b/ports/sysdeps/unix/bsd/bsd4.4/kfreebsd/ifaddrs.c -@@ -0,0 +1,374 @@ +@@ -0,0 +1,380 @@ +/* $KAME: getifaddrs.c,v 1.9 2001/08/20 02:31:20 itojun Exp $ */ + +/* @@ -17550,13 +17550,16 @@ + if (ifm->ifm_addrs & RTA_IFP) { + idx = ifm->ifm_index; + ++icnt; -+ /* XXX: smooth over a kfreebsd 9.0->10.1 ABI break: -+ sizeof(struct rt_msghdr) is correct for 10.1 kernel */ + dl = (struct sockaddr_dl *)(void *)(ifm + 1); ++ /* XXX: smooth over a kfreebsd 9.0->10.1 ABI break */ + if (rtm->rtm_msglen == 152) { + /* on kfreebsd-i386 9.0, struct rt_msghdr is 96 bytes */ + dl = (struct sockaddr_dl *)((char *)ifm + 96); + } ++ if (rtm->rtm_msglen == 156) { ++ /* on kfreebsd-i386 10.1, struct rt_msghdr is 100 bytes */ ++ dl = (struct sockaddr_dl *)((char *)ifm + 100); ++ } + dcnt += SA_RLEN((struct sockaddr *)(void*)dl) + + ALIGNBYTES; +#ifdef HAVE_IFM_DATA @@ -17643,13 +17646,16 @@ + ifm = (struct if_msghdr *)(void *)rtm; + if (ifm->ifm_addrs & RTA_IFP) { + idx = ifm->ifm_index; -+ /* XXX: smooth over a kfreebsd 9.0->10.1 ABI break: -+ sizeof(struct rt_msghdr) is correct for 10.1 kernel */ + dl = (struct sockaddr_dl *)(void *)(ifm + 1); ++ /* XXX: smooth over a kfreebsd 9.0->10.1 ABI break */ + if (rtm->rtm_msglen == 152) { + /* on kfreebsd-i386 9.0, struct rt_msghdr is 96 bytes */ + dl = (struct sockaddr_dl *)((char *)ifm + 96); + } ++ if (rtm->rtm_msglen == 156) { ++ /* on kfreebsd-i386 10.1, struct rt_msghdr is 100 bytes */ ++ dl = (struct sockaddr_dl *)((char *)ifm + 100); ++ } + + cif = ift; + ift->ifa_name = names; -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: https://lists.debian.org/[email protected]

