diff --git a/fix-hardware-address-size-problem.diff b/fix-hardware-address-size-problem.diff new file mode 100644 index 0000000..bb1c6b4 --- /dev/null +++ b/fix-hardware-address-size-problem.diff @@ -0,0 +1,47 @@ +diff -Naurp iproute2-2.6.25/include/utils.h iproute2-2.6.25.patched/include/utils.h +--- iproute2-2.6.25/include/utils.h 2008-04-17 10:12:54.000000000 -0700 ++++ iproute2-2.6.25.patched/include/utils.h 2008-12-09 12:43:53.000000000 -0800 +@@ -46,7 +46,7 @@ typedef struct + __u8 bytelen; + __s16 bitlen; + __u32 flags; +- __u32 data[4]; ++ __u32 data[8]; + } inet_prefix; + + #define PREFIXLEN_SPECIFIED 1 +diff -Naurp iproute2-2.6.25/ip/ipmaddr.c iproute2-2.6.25.patched/ip/ipmaddr.c +--- iproute2-2.6.25/ip/ipmaddr.c 2008-12-09 12:41:58.000000000 -0800 ++++ iproute2-2.6.25.patched/ip/ipmaddr.c 2008-12-09 12:43:53.000000000 -0800 +@@ -43,11 +43,11 @@ static void usage(void) + exit(-1); + } + +-static int parse_hex(char *str, unsigned char *addr) ++static int parse_hex(char *str, unsigned char *addr, size_t size) + { + int len=0; + +- while (*str) { ++ while (*str && (len < 2 * size)) { + int tmp; + if (str[1] == 0) + return -1; +@@ -104,7 +104,7 @@ void read_dev_mcast(struct ma_info **res + + m.addr.family = AF_PACKET; + +- len = parse_hex(hexa, (unsigned char*)&m.addr.data); ++ len = parse_hex(hexa, (unsigned char*)&m.addr.data, sizeof (m.addr.data)); + if (len >= 0) { + struct ma_info *ma = malloc(sizeof(m)); + +@@ -177,7 +177,7 @@ void read_igmp6(struct ma_info **result_ + + m.addr.family = AF_INET6; + +- len = parse_hex(hexa, (unsigned char*)&m.addr.data); ++ len = parse_hex(hexa, (unsigned char*)&m.addr.data, sizeof (m.addr.data)); + if (len >= 0) { + struct ma_info *ma = malloc(sizeof(m)); + diff --git a/iproute2.changes b/iproute2.changes index 48221ee..51ffdc0 100644 --- a/iproute2.changes +++ b/iproute2.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Dec 11 15:09:10 CET 2008 - agruen@suse.de + +- Change max length of the MAC address from 16 bytes to 32 bytes + to accommodate infiniband (bnc#445014). + ------------------------------------------------------------------- Mon Oct 13 15:39:40 CEST 2008 - ms@suse.de diff --git a/iproute2.spec b/iproute2.spec index 5bce8db..d105121 100644 --- a/iproute2.spec +++ b/iproute2.spec @@ -25,7 +25,7 @@ Group: Productivity/Networking/Routing Provides: iproute AutoReqProv: on Version: 2.6.25 -Release: 41 +Release: 42 Summary: Advanced Routing Url: http://developer.osdl.org/dev/iproute2/ Source0: %name-%version.tar.bz2 @@ -40,6 +40,7 @@ Patch7: %name-m_skbedit.patch Patch8: %name-q_multiq.patch Patch9: %name-2.6.25-DCCP-redefine Patch10: %name-2.6.25-warnings.diff +Patch11: fix-hardware-address-size-problem.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %package -n libnetlink-devel @@ -79,6 +80,7 @@ Authors: %patch8 -p1 %patch9 -p1 %patch10 +%patch11 -p1 find . -name *.orig -print0 | xargs -r0 rm -v %build @@ -129,6 +131,9 @@ rm -rf $RPM_BUILD_ROOT %_libdir/lib* %changelog +* Thu Dec 11 2008 agruen@suse.de +- Change max length of the MAC address from 16 bytes to 32 bytes + to accommodate infiniband (bnc#445014). * Mon Oct 13 2008 ms@suse.de - fixed compiler warnings (bnc #434714) * Thu Sep 18 2008 hare@suse.de @@ -251,7 +256,7 @@ rm -rf $RPM_BUILD_ROOT - don't strip stuff * Wed Aug 17 2005 cthiel@suse.de - update to version 050816 [#105087] -* Sun Aug 07 2005 dmueller@suse.de +* Sat Aug 06 2005 dmueller@suse.de - add /bin/ip symlink (#102513) * Wed Jun 15 2005 meissner@suse.de - use RPM_OPT_FLAGS @@ -272,12 +277,12 @@ rm -rf $RPM_BUILD_ROOT - Make ip print correct type when printing stats [#42589] * Wed Apr 21 2004 mmj@suse.de - Fix bufferoverflow in nstat [#39179] -* Sat Apr 17 2004 kukuk@suse.de +* Fri Apr 16 2004 kukuk@suse.de - Fix compiling with 2.6.5 kernel headers - Remove backup files * Wed Apr 14 2004 mmj@suse.de - Don't remove buildroot before install -* Thu Mar 18 2004 mmj@suse.de +* Wed Mar 17 2004 mmj@suse.de - No executables below /usr/include [#36342] * Wed Mar 10 2004 mmj@suse.de - Olaf Kirch fixed the kernel, so remove the fix for [#35288] @@ -307,7 +312,7 @@ rm -rf $RPM_BUILD_ROOT - Make the man tar-ball not contain gzipped man-pages, it's already compressed once. - Apply patch from Andi Kleen for fragtimeout functionality -* Tue Nov 12 2002 ro@suse.de +* Mon Nov 11 2002 ro@suse.de - changed neededforbuild to * Mon Nov 11 2002 ro@suse.de - changed neededforbuild to @@ -324,7 +329,7 @@ rm -rf $RPM_BUILD_ROOT rtacct, arpd and module tcp_diag * Fri Feb 01 2002 ro@suse.de - changed neededforbuild to -* Fri Feb 01 2002 ro@suse.de +* Thu Jan 31 2002 ro@suse.de - added libgimpprint to neededforbuild * Tue Jan 29 2002 vinil@suse.cz - /usr/lib -> %%_libdir