Author: sthibault Date: 2011-02-22 00:52:51 +0000 (Tue, 22 Feb 2011) New Revision: 4527
Added: glibc-package/trunk/debian/patches/hurd-i386/submitted-if_freereq.diff Modified: glibc-package/trunk/debian/changelog glibc-package/trunk/debian/patches/series Log: patches/hurd-i386/submitted-if_freereq.diff: Fix crash when siocgifconf actually succeeds. Modified: glibc-package/trunk/debian/changelog =================================================================== --- glibc-package/trunk/debian/changelog 2011-02-21 02:40:46 UTC (rev 4526) +++ glibc-package/trunk/debian/changelog 2011-02-22 00:52:51 UTC (rev 4527) @@ -7,6 +7,8 @@ * patches/any/submitted-sched_h.diff: Synchronize bits/sched.h with sysdeps/unix/sysv/linux/bits/sched.h (Closes: #527589), rename to cvs-sched_h.diff. + * patches/hurd-i386/submitted-if_freereq.diff: Fix crash when siocgifconf + actually succeeds. [ Clint Adams ] * Patch from Nobuhiro Iwamatsu to cope with the removal of Added: glibc-package/trunk/debian/patches/hurd-i386/submitted-if_freereq.diff =================================================================== --- glibc-package/trunk/debian/patches/hurd-i386/submitted-if_freereq.diff (rev 0) +++ glibc-package/trunk/debian/patches/hurd-i386/submitted-if_freereq.diff 2011-02-22 00:52:51 UTC (rev 4527) @@ -0,0 +1,61 @@ +2011-02-22 Samuel Thibault <samuel.thiba...@ens-lyon.org> + + Fix __if_freereq crash: Unlike the generic version which uses free, Hurd + needs munmap. + + * sysdeps/mach/hurd/ifreq.h: New file. + +--- + ifreq.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 45 insertions(+) +diff --git a/sysdeps/mach/hurd/ifreq.h b/sysdeps/mach/hurd/ifreq.h +new file mode 100644 +index 0000000..99a6b94 +--- /dev/null ++++ b/sysdeps/mach/hurd/ifreq.h +@@ -0,0 +1,45 @@ ++/* Copyright (C) 1999, 2002, 2003, 2011 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ Contributed by Andreas Jaeger <a...@suse.de>. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, write to the Free ++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ++ 02111-1307 USA. */ ++ ++#include <stdio.h> ++#include <stdlib.h> ++#include <unistd.h> ++#include <net/if.h> ++#include <sys/socket.h> ++#include <sys/ioctl.h> ++#include <sys/mman.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); ++ ++ ++static inline void ++__if_freereq (struct ifreq *ifreqs, int num_ifs) ++{ ++ munmap (ifreqs, num_ifs * sizeof (struct ifreq)); ++} Modified: glibc-package/trunk/debian/patches/series =================================================================== --- glibc-package/trunk/debian/patches/series 2011-02-21 02:40:46 UTC (rev 4526) +++ glibc-package/trunk/debian/patches/series 2011-02-22 00:52:51 UTC (rev 4527) @@ -137,6 +137,7 @@ hurd-i386/submitted-catch-signal.diff hurd-i386/cvs-sendmsg-leak.diff hurd-i386/local-sendmsg-SCM_RIGHTS.diff +hurd-i386/submitted-if_freereq.diff ia64/local-dlfptr.diff ia64/submitted-sysconf.diff -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1prgul-0001li...@alioth.debian.org