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

r6304 - in glibc-package/trunk/debian: . patches/kfreebsd



Author: aurel32
Date: 2014-10-21 19:29:26 +0000 (Tue, 21 Oct 2014)
New Revision: 6304

Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff
Log:
kfreebsd/local-fbtl.diff: update to revision 5651 (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-21 19:26:18 UTC (rev 6303)
+++ glibc-package/trunk/debian/changelog	2014-10-21 19:29:26 UTC (rev 6304)
@@ -28,6 +28,8 @@
     manpage. Add a Replaces: manpages-fr-extra (<= 20141008).
   * Update French manpages translations, by David Prévot. Closes: #715289.
   * Update German manpages translations, by Helge Kreutzmann. Closes: #717979.
+  * kfreebsd/local-fbtl.diff: update to revision 5651 (from glibc-bsd).
+    Workarounds a kfreebsd 9.0 to 10.1 ABI break. Closes: #740509.
 
   [ Helmut Grohne ]
   * debian/patches/any/local-bootstrap-headers.diff: Update to handle

Modified: glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff
===================================================================
--- glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff	2014-10-21 19:26:18 UTC (rev 6303)
+++ glibc-package/trunk/debian/patches/kfreebsd/local-sysdeps.diff	2014-10-21 19:29:26 UTC (rev 6304)
@@ -17400,7 +17400,7 @@
 +libc_hidden_def (if_freenameindex)
 --- /dev/null
 +++ b/ports/sysdeps/unix/bsd/bsd4.4/kfreebsd/ifaddrs.c
-@@ -0,0 +1,362 @@
+@@ -0,0 +1,374 @@
 +/*	$KAME: getifaddrs.c,v 1.9 2001/08/20 02:31:20 itojun Exp $	*/
 +
 +/*
@@ -17550,7 +17550,13 @@
 +			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);
++				if (rtm->rtm_msglen == 152) {
++					/* on kfreebsd-i386 9.0, struct rt_msghdr is 96 bytes */
++					dl = (struct sockaddr_dl *)((char *)ifm + 96);
++				}
 +				dcnt += SA_RLEN((struct sockaddr *)(void*)dl) +
 +				    ALIGNBYTES;
 +#ifdef	HAVE_IFM_DATA
@@ -17637,7 +17643,13 @@
 +			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);
++				if (rtm->rtm_msglen == 152) {
++					/* on kfreebsd-i386 9.0, struct rt_msghdr is 96 bytes */
++					dl = (struct sockaddr_dl *)((char *)ifm + 96);
++				}
 +
 +				cif = ift;
 +				ift->ifa_name = names;


Reply to: