diff options
Diffstat (limited to 'abs/core-testing/iputils/iputils-big-patches.patch')
-rw-r--r-- | abs/core-testing/iputils/iputils-big-patches.patch | 595 |
1 files changed, 0 insertions, 595 deletions
diff --git a/abs/core-testing/iputils/iputils-big-patches.patch b/abs/core-testing/iputils/iputils-big-patches.patch deleted file mode 100644 index 29bc310..0000000 --- a/abs/core-testing/iputils/iputils-big-patches.patch +++ /dev/null @@ -1,595 +0,0 @@ -diff -Naur iputils.orig/Makefile iputils/Makefile ---- iputils.orig/Makefile 2002-11-09 03:01:11.000000000 +0000 -+++ iputils/Makefile 2005-06-09 16:15:32.000000000 +0000 -@@ -17,11 +17,6 @@ - GLIBCFIX=-Iinclude-glibc -include include-glibc/glibc-bugs.h - endif - --ifeq ($(KERNEL_INCLUDE)/linux/pfkeyv2.h,$(wildcard $(KERNEL_INCLUDE)/linux/pfkeyv2.h)) -- SUBDIRS=libipsec setkey -- LDLIBS+=-Llibipsec -lipsec -- IPSECDEF=-DDO_IPSEC -Ilibipsec --endif - - - #options if you compile with libc5, and without a bind>=4.9.4 libresolv -@@ -31,7 +26,7 @@ - # What a pity, all new gccs are buggy and -Werror does not work. Sigh. - #CCOPT=-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -g -Werror - CCOPT=-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -g --CFLAGS=$(CCOPT) $(GLIBCFIX) -I$(KERNEL_INCLUDE) -I../include $(IPSECDEF) $(DEFINES) -+CFLAGS=$(CCOPT) -I../include $(IPSECDEF) $(DEFINES) - - IPV4_TARGETS=tracepath ping clockdiff rdisc arping tftpd rarpd - IPV6_TARGETS=tracepath6 traceroute6 ping6 -@@ -42,7 +37,11 @@ - - tftpd: tftpd.o tftpsubs.o - ping: ping.o ping_common.o -+ $(LINK.o) $^ $(LDLIBS) -o $@ -Wl,-z,now -Wl,-z,relro - ping6: ping6.o ping_common.o -+ $(LINK.o) $^ $(LDLIBS) -o $@ -Wl,-z,now -Wl,-z,relro -+traceroute6: traceroute6.o -+ $(LINK.o) $^ $(LDLIBS) -o $@ -Wl,-z,now -Wl,-z,relro - ping.o ping6.o ping_common.o: ping_common.h - tftpd.o tftpsubs.o: tftp.h - -diff -Naur iputils.orig/arping.c iputils/arping.c ---- iputils.orig/arping.c 2001-10-05 22:42:47.000000000 +0000 -+++ iputils/arping.c 2005-06-09 16:15:24.000000000 +0000 -@@ -9,6 +9,7 @@ - * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru> - */ - -+#include <asm/byteorder.h> - #include <stdlib.h> - #include <sys/param.h> - #include <sys/socket.h> -@@ -19,6 +20,8 @@ - #include <sys/ioctl.h> - #include <linux/if.h> - #include <linux/if_arp.h> -+#include <linux/if_ether.h> -+#include <linux/if_packet.h> - #include <sys/uio.h> - - #include <netdb.h> -diff -Naur iputils.orig/clockdiff.c iputils/clockdiff.c ---- iputils.orig/clockdiff.c 2002-02-23 00:10:59.000000000 +0000 -+++ iputils/clockdiff.c 2005-06-09 16:15:24.000000000 +0000 -@@ -1,7 +1,9 @@ -+#include <asm/byteorder.h> - #include <time.h> - #include <sys/types.h> - #include <sys/param.h> - #include <stdio.h> -+#include <linux/types.h> - #include <unistd.h> - #include <stdlib.h> - #include <math.h> -diff -Naur iputils.orig/include-glibc/netinet/in.h iputils/include-glibc/netinet/in.h ---- iputils.orig/include-glibc/netinet/in.h 2002-11-09 00:22:25.000000000 +0000 -+++ iputils/include-glibc/netinet/in.h 2005-06-09 16:15:00.000000000 +0000 -@@ -65,4 +65,45 @@ - && (((__const uint32_t *) (a))[3] == ((__const uint32_t *) (b))[3])) - - --#endif /* netinet/in.h */ -+/* Functions to convert between host and network byte order. -+ -+ Please note that these functions normally take `unsigned long int' or -+ `unsigned short int' values as arguments and also return them. But -+ this was a short-sighted decision since on different systems the types -+ may have different representations but the values are always the same. */ -+ -+extern u_int32_t ntohl (u_int32_t __netlong) __THROW __attribute__ ((__const__)); -+extern u_int16_t ntohs (u_int16_t __netshort) -+ __THROW __attribute__ ((__const__)); -+extern u_int32_t htonl (u_int32_t __hostlong) -+ __THROW __attribute__ ((__const__)); -+extern u_int16_t htons (u_int16_t __hostshort) -+ __THROW __attribute__ ((__const__)); -+ -+#include <endian.h> -+ -+/* Get machine dependent optimized versions of byte swapping functions. */ -+#include <bits/byteswap.h> -+ -+#ifdef __OPTIMIZE__ -+/* We can optimize calls to the conversion functions. Either nothing has -+ to be done or we are using directly the byte-swapping functions which -+ often can be inlined. */ -+# if __BYTE_ORDER == __BIG_ENDIAN -+/* The host byte order is the same as network byte order, -+ so these functions are all just identity. */ -+# define ntohl(x) (x) -+# define ntohs(x) (x) -+# define htonl(x) (x) -+# define htons(x) (x) -+# else -+# if __BYTE_ORDER == __LITTLE_ENDIAN -+# define ntohl(x) __bswap_32 (x) -+# define ntohs(x) __bswap_16 (x) -+# define htonl(x) __bswap_32 (x) -+# define htons(x) __bswap_16 (x) -+# endif -+# endif -+#endif -+ -+#endif /* netinet/in.h */ -diff -Naur iputils.orig/ipg iputils/ipg ---- iputils.orig/ipg 2001-08-02 22:37:32.000000000 +0000 -+++ iputils/ipg 2005-06-09 16:14:49.000000000 +0000 -@@ -1,21 +1,31 @@ --#! /bin/bash -+#!/bin/bash - --modprobe pg3 -+modprobe pg3 >& /dev/null -+modprobe pktgen >& /dev/null -+ -+PGDEV=/proc/net/pg -+if [[ ! -e ${PGDEV} ]] ; then -+ PGDEV=/proc/net/pktgen/pg0 -+ if [[ ! -e ${PGDEV} ]] ; then -+ echo "Couldn't not locate pg in /proc/net :(" -+ exit 1 -+ fi -+fi - - function pgset() { - local result - -- echo $1 > /proc/net/pg -+ echo $1 > ${PGDEV} - -- result=`cat /proc/net/pg | fgrep "Result: OK:"` -+ result=`cat ${PGDEV} | fgrep "Result: OK:"` - if [ "$result" = "" ]; then -- cat /proc/net/pg | fgrep Result: -+ cat ${PGDEV} | fgrep Result: - fi - } - - function pg() { -- echo inject > /proc/net/pg -- cat /proc/net/pg -+ echo inject > ${PGDEV} -+ cat ${PGDEV} - } - - pgset "odev eth0" -diff -Naur iputils.orig/ping.c iputils/ping.c ---- iputils.orig/ping.c 2002-11-07 22:53:21.000000000 +0000 -+++ iputils/ping.c 2005-06-09 16:15:00.000000000 +0000 -@@ -60,8 +60,8 @@ - - #include "ping_common.h" - -+#include <linux/icmp.h> - #include <netinet/ip.h> --#include <netinet/ip_icmp.h> - #ifdef DO_IPSEC - #include <libipsec.h> - #endif -@@ -1213,7 +1213,7 @@ - once = 1; - - /* Patch bpflet for current identifier. */ -- insns[2] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, __constant_htons(ident), 0, 1); -+ insns[2] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, htons(ident), 0, 1); - - if (setsockopt(icmp_sock, SOL_SOCKET, SO_ATTACH_FILTER, &filter, sizeof(filter))) - perror("WARNING: failed to install socket filter\n"); -diff -Naur iputils.orig/ping6.c iputils/ping6.c ---- iputils.orig/ping6.c 2002-09-20 15:08:11.000000000 +0000 -+++ iputils/ping6.c 2005-06-09 16:15:00.000000000 +0000 -@@ -68,8 +68,44 @@ - */ - #include "ping_common.h" - --#include <linux/in6.h> --#include <linux/ipv6.h> -+struct ipv6_rt_hdr { -+ __u8 nexthdr; -+ __u8 hdrlen; -+ __u8 type; -+ __u8 segments_left; -+ -+ /* -+ * type specific data -+ * variable length field -+ */ -+}; -+ -+struct rt0_hdr { -+ struct ipv6_rt_hdr rt_hdr; -+ __u32 bitmap; /* strict/loose bit map */ -+ struct in6_addr addr[0]; -+ -+#define rt0_type rt_hdr.type; -+}; -+#define IPV6_SRCRT_TYPE_0 0 /* IPv6 type 0 Routing Header */ -+struct ipv6hdr { -+#if defined(__LITTLE_ENDIAN) -+ __u8 priority:4, -+ version:4; -+#elif defined(__BIG_ENDIAN) -+ __u8 version:4, -+ priority:4; -+#endif -+ __u8 flow_lbl[3]; -+ -+ __u16 payload_len; -+ __u8 nexthdr; -+ __u8 hop_limit; -+ -+ struct in6_addr saddr; -+ struct in6_addr daddr; -+}; -+ - #include <linux/icmpv6.h> - - #define BIT_CLEAR(nr, addr) do { ((__u32 *)(addr))[(nr) >> 5] &= ~(1U << ((nr) & 31)); } while(0) -@@ -879,7 +915,7 @@ - once = 1; - - /* Patch bpflet for current identifier. */ -- insns[1] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, __constant_htons(ident), 0, 1); -+ insns[1] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, htons(ident), 0, 1); - - if (setsockopt(icmp_sock, SOL_SOCKET, SO_ATTACH_FILTER, &filter, sizeof(filter))) - perror("WARNING: failed to install socket filter\n"); -diff -Naur iputils.orig/ping_common.h iputils/ping_common.h ---- iputils.orig/ping_common.h 2002-09-20 15:08:11.000000000 +0000 -+++ iputils/ping_common.h 2005-06-09 16:15:24.000000000 +0000 -@@ -1,3 +1,4 @@ -+#include <asm/byteorder.h> - #include <stdio.h> - #include <stdlib.h> - #include <unistd.h> -@@ -19,6 +20,7 @@ - - #include <netinet/in.h> - #include <arpa/inet.h> -+#include <linux/types.h> - #include <linux/errqueue.h> - - #include "SNAPSHOT.h" -diff -Naur iputils.orig/rarpd.c iputils/rarpd.c ---- iputils.orig/rarpd.c 2001-12-02 18:45:06.000000000 +0000 -+++ iputils/rarpd.c 2005-06-09 16:15:24.000000000 +0000 -@@ -9,6 +9,7 @@ - * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru> - */ - -+#include <asm/byteorder.h> - #include <stdio.h> - #include <syslog.h> - #include <dirent.h> -@@ -26,6 +27,7 @@ - #include <sys/signal.h> - #include <linux/if.h> - #include <linux/if_arp.h> -+#include <linux/if_ether.h> - #include <netinet/in.h> - #include <linux/if_packet.h> - #include <linux/filter.h> -@@ -42,7 +44,9 @@ - char *ifname; - char *tftp_dir = "/etc/tftpboot"; - -+#ifndef __UCLIBC__ - extern int ether_ntohost(char *name, unsigned char *ea); -+#endif - void usage(void) __attribute__((noreturn)); - - struct iflink -@@ -52,12 +56,12 @@ - int hatype; - unsigned char lladdr[16]; - unsigned char name[IFNAMSIZ]; -- struct ifaddr *ifa_list; -+ struct l_ifaddr *ifa_list; - } *ifl_list; - --struct ifaddr -+struct l_ifaddr - { -- struct ifaddr *next; -+ struct l_ifaddr *next; - __u32 prefix; - __u32 mask; - __u32 local; -@@ -89,7 +93,7 @@ - int fd; - struct ifreq *ifrp, *ifend; - struct iflink *ifl; -- struct ifaddr *ifa; -+ struct l_ifaddr *ifa; - struct ifconf ifc; - struct ifreq ibuf[256]; - -@@ -180,7 +184,7 @@ - if (ifa == NULL) { - if (mask == 0 || prefix == 0) - continue; -- ifa = (struct ifaddr*)malloc(sizeof(*ifa)); -+ ifa = (struct l_ifaddr*)malloc(sizeof(*ifa)); - memset(ifa, 0, sizeof(*ifa)); - ifa->local = addr; - ifa->prefix = prefix; -@@ -236,10 +240,10 @@ - return dent != NULL; - } - --struct ifaddr *select_ipaddr(int ifindex, __u32 *sel_addr, __u32 **alist) -+struct l_ifaddr *select_ipaddr(int ifindex, __u32 *sel_addr, __u32 **alist) - { - struct iflink *ifl; -- struct ifaddr *ifa; -+ struct l_ifaddr *ifa; - int retry = 0; - int i; - -@@ -295,7 +299,7 @@ - - if (r == NULL) { - if (hatype == ARPHRD_ETHER && halen == 6) { -- struct ifaddr *ifa; -+ struct l_ifaddr *ifa; - struct hostent *hp; - char ename[256]; - static struct rarp_map emap = { -@@ -305,7 +309,11 @@ - 6, - }; - -+#ifndef __UCLIBC__ - if (ether_ntohost(ename, lladdr) != 0 || -+#else -+ if ( -+#endif - (hp = gethostbyname(ename)) == NULL) { - if (verbose) - syslog(LOG_INFO, "not found in /etc/ethers"); -@@ -364,7 +372,7 @@ - { - __u32 laddr = 0; - struct iflink *ifl; -- struct ifaddr *ifa; -+ struct l_ifaddr *ifa; - - for (ifl=ifl_list; ifl; ifl = ifl->next) - if (ifl->index == ifindex) -diff -Naur iputils.orig/rdisc.c iputils/rdisc.c ---- iputils.orig/rdisc.c 2001-08-24 17:39:00.000000000 +0000 -+++ iputils/rdisc.c 2005-06-09 16:15:24.000000000 +0000 -@@ -25,6 +25,7 @@ - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -+#include <asm/byteorder.h> - #include <stdio.h> - #include <errno.h> - #include <signal.h> -@@ -1504,5 +1505,5 @@ - if (logging) - syslog(LOG_ERR, "%s: %m", str); - else -- (void) fprintf(stderr, "%s: %s\n", str, sys_errlist[errno]); -+ (void) fprintf(stderr, "%s: %s\n", str, strerror(errno)); - } -diff -Naur iputils.orig/tftpd.c iputils/tftpd.c ---- iputils.orig/tftpd.c 2002-01-24 00:31:41.000000000 +0000 -+++ iputils/tftpd.c 2005-06-09 16:15:24.000000000 +0000 -@@ -48,6 +48,7 @@ - * This version includes many modifications by Jim Guyton <guyton@rand-unix> - */ - -+#include <asm/byteorder.h> - #include <sys/types.h> - #include <sys/ioctl.h> - #include <sys/stat.h> -@@ -57,7 +58,6 @@ - - #include <sys/socket.h> - #include <netinet/in.h> --#include <linux/in6.h> - #include <netdb.h> - - #include <setjmp.h> -diff -Naur iputils.orig/tracepath.c iputils/tracepath.c ---- iputils.orig/tracepath.c 2002-11-09 04:54:46.000000000 +0000 -+++ iputils/tracepath.c 2005-06-09 16:15:24.000000000 +0000 -@@ -9,10 +9,12 @@ - * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru> - */ - -+#include <asm/byteorder.h> - #include <stdio.h> - #include <stdlib.h> - #include <unistd.h> - #include <sys/socket.h> -+#include <linux/types.h> - #include <linux/errqueue.h> - #include <errno.h> - #include <string.h> -@@ -76,7 +78,7 @@ - int progress = -1; - int broken_router; - --restart: -+ while (1) { - memset(&rcvbuf, -1, sizeof(rcvbuf)); - iov.iov_base = &rcvbuf; - iov.iov_len = sizeof(rcvbuf); -@@ -93,7 +95,7 @@ - if (res < 0) { - if (errno == EAGAIN) - return progress; -- goto restart; -+ continue; - } - - progress = mtu; -@@ -216,7 +218,7 @@ - perror("NET ERROR"); - return 0; - } -- goto restart; -+ } - } - - int probe_ttl(int fd, int ttl) -@@ -227,7 +229,6 @@ - - memset(sndbuf,0,mtu); - --restart: - for (i=0; i<10; i++) { - int res; - -@@ -243,7 +244,8 @@ - if (res==0) - return 0; - if (res > 0) -- goto restart; -+ i = 0; -+ continue; - } - hisptr = (hisptr + 1)&63; - -diff -Naur iputils.orig/tracepath6.c iputils/tracepath6.c ---- iputils.orig/tracepath6.c 2001-09-02 02:03:46.000000000 +0000 -+++ iputils/tracepath6.c 2005-06-09 16:15:24.000000000 +0000 -@@ -9,13 +9,13 @@ - * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru> - */ - -+#include <asm/byteorder.h> - #include <stdio.h> - #include <stdlib.h> - #include <unistd.h> - #include <sys/socket.h> - #include <netinet/in.h> -- --#include <linux/in6.h> -+#include <linux/types.h> - #include <linux/errqueue.h> - #include <errno.h> - #include <string.h> -@@ -66,7 +66,7 @@ - int progress = -1; - int broken_router; - --restart: -+ while (1) { - memset(&rcvbuf, -1, sizeof(rcvbuf)); - iov.iov_base = &rcvbuf; - iov.iov_len = sizeof(rcvbuf); -@@ -83,7 +83,7 @@ - if (res < 0) { - if (errno == EAGAIN) - return progress; -- goto restart; -+ continue; - } - - progress = 2; -@@ -222,34 +222,29 @@ - perror("NET ERROR"); - return 0; - } -- goto restart; -+ } - } - - int probe_ttl(int fd, int ttl) - { -- int i; -+ int i=0, res; - char sndbuf[mtu]; - struct probehdr *hdr = (struct probehdr*)sndbuf; - --restart: -- -- for (i=0; i<10; i++) { -- int res; -- -- hdr->ttl = ttl; -- gettimeofday(&hdr->tv, NULL); -- if (send(fd, sndbuf, mtu-overhead, 0) > 0) -- break; -- res = recverr(fd, ttl); -- if (res==0) -- return 0; -- if (res > 0) -- goto restart; -- } -- -- if (i<10) { -- int res; -- -+ while (i<10) { -+ for (i=0; i<10; i++) { -+ hdr->ttl = ttl; -+ gettimeofday(&hdr->tv, NULL); -+ if (send(fd, sndbuf, mtu-overhead, 0) > 0) -+ break; -+ res = recverr(fd, ttl); -+ if (res==0) -+ return 0; -+ if (res > 0) { -+ i = 0; -+ continue; -+ } -+ } - data_wait(fd); - if (recv(fd, sndbuf, sizeof(sndbuf), MSG_DONTWAIT) > 0) { - printf("%2d?: reply received 8)\n", ttl); -@@ -257,7 +252,7 @@ - } - res = recverr(fd, ttl); - if (res == 1) -- goto restart; -+ continue; - return res; - } - -diff -Naur iputils.orig/traceroute6.c iputils/traceroute6.c ---- iputils.orig/traceroute6.c 2002-10-03 03:29:23.000000000 +0000 -+++ iputils/traceroute6.c 2005-06-09 16:14:49.000000000 +0000 -@@ -244,11 +244,30 @@ - #include <netinet/in.h> - #include <netinet/ip.h> - #include <netinet/ip_icmp.h> -+#if __linux__ -+#include <linux/udp.h> -+#else - #include <netinet/udp.h> -+#endif -+ -+#include <linux/types.h> -+struct ipv6hdr { -+#if defined(__LITTLE_ENDIAN) -+ __u8 priority:4, -+ version:4; -+#elif defined(__BIG_ENDIAN) -+ __u8 version:4, -+ priority:4; -+#endif -+ __u8 flow_lbl[3]; - --#include <linux/ipv6.h> --#include <linux/in6.h> -+ __u16 payload_len; -+ __u8 nexthdr; -+ __u8 hop_limit; - -+ struct in6_addr saddr; -+ struct in6_addr daddr; -+}; - #include <linux/icmpv6.h> - - #include <arpa/inet.h> |