From 52cd1172a9c6c80c52d8f3099fac087ece07a40f Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 28 Apr 2006 10:16:04 +0000 Subject: iputils: apply patch from #463 * this will need patching to work with glibc 2.4 due to the ipv6 changes --- packages/iputils/files/debian-fixes.patch | 133 ++++++++++++++++++++++++++++++ 1 file changed, 133 insertions(+) create mode 100644 packages/iputils/files/debian-fixes.patch (limited to 'packages/iputils/files/debian-fixes.patch') diff --git a/packages/iputils/files/debian-fixes.patch b/packages/iputils/files/debian-fixes.patch new file mode 100644 index 0000000000..1b014f07f9 --- /dev/null +++ b/packages/iputils/files/debian-fixes.patch @@ -0,0 +1,133 @@ +Fixes taken from the lastest debian .deb pacakge (20020927-3). + +--- iputils-20020927.orig/ping.c ++++ iputils-20020927/ping.c +@@ -232,7 +232,7 @@ + if (argc == 1) + options |= F_NUMERIC; + } else { +- hp = gethostbyname(target); ++ hp = gethostbyname2(target, AF_INET); + if (!hp) { + fprintf(stderr, "ping: unknown host %s\n", target); + exit(2); +@@ -373,8 +373,13 @@ + (1<h_addr, 4); +--- iputils-20020927.orig/traceroute6.c ++++ iputils-20020927/traceroute6.c +@@ -441,7 +441,7 @@ + * to fix something send the patch to me for sanity checking. + * "datalen" patch is a shit. */ + if ((unsigned int)datalen == 0) +- datalen == sizeof(struct pkt_format); ++ datalen = sizeof(struct pkt_format); + } + + if (datalen < (int)sizeof(struct pkt_format) || datalen >= MAXPACKET) { +--- iputils-20020927.orig/ping_common.c ++++ iputils-20020927/ping_common.c +@@ -435,6 +435,7 @@ + if (options & F_SO_DONTROUTE) + setsockopt(icmp_sock, SOL_SOCKET, SO_DONTROUTE, (char *)&hold, sizeof(hold)); + ++#ifndef __sparc__ /* XXX SO_TIMESTAMP seems broken on sparc */ + #ifdef SO_TIMESTAMP + if (!(options&F_LATENCY)) { + int on = 1; +@@ -442,6 +443,7 @@ + fprintf(stderr, "Warning: no SO_TIMESTAMP support, falling back to SIOCGSTAMP\n"); + } + #endif ++#endif /* __sparc__ */ + + /* Set some SNDTIMEO to prevent blocking forever + * on sends, when device is too slow or stalls. Just put limit +@@ -817,7 +819,8 @@ + } + if (pipesize > 1) + printf(", pipe %d", pipesize); +- if (ntransmitted > 1 && (!interval || (options&(F_FLOOD|F_ADAPTIVE)))) { ++ if (ntransmitted > 1 && nreceived && ++ (!interval || (options&(F_FLOOD|F_ADAPTIVE)))) { + int ipg = (1000000*(long long)tv.tv_sec+tv.tv_usec)/(ntransmitted-1); + printf(", ipg/ewma %d.%03d/%d.%03d ms", + ipg/1000, ipg%1000, rtt/8000, (rtt/8)%1000); +@@ -851,4 +854,3 @@ + } + fprintf(stderr, "\n"); + } +- -- cgit v1.2.3