summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-04-25 00:09:50 +0000
committerMike Frysinger <vapier@gentoo.org>2015-04-25 00:09:50 +0000
commit8197d339163e25334d64766845335f34e2d7294a (patch)
tree4ef1bedb1600c6d0b377ee28ea801f4f6d2231fb /net-misc
parentVersion bump. (diff)
downloadgentoo-2-8197d339163e25334d64766845335f34e2d7294a.tar.gz
gentoo-2-8197d339163e25334d64766845335f34e2d7294a.tar.bz2
gentoo-2-8197d339163e25334d64766845335f34e2d7294a.zip
Update patches against latest git.
(Portage version: 2.2.18/cvs/Linux x86_64, signed Manifest commit with key D2E96200)
Diffstat (limited to 'net-misc')
-rw-r--r--net-misc/iputils/ChangeLog14
-rw-r--r--net-misc/iputils/files/iputils-20070202-idn.patch158
-rw-r--r--net-misc/iputils/files/iputils-20071127-infiniband.patch280
-rw-r--r--net-misc/iputils/files/iputils-20071127-kernel-ifaddr.patch55
-rw-r--r--net-misc/iputils/files/iputils-20100418-aliasing.patch93
-rw-r--r--net-misc/iputils/files/iputils-20100418-makefile.patch35
-rw-r--r--net-misc/iputils/files/iputils-20100418-openssl.patch35
-rw-r--r--net-misc/iputils/files/iputils-20100418-printf-size.patch62
-rw-r--r--net-misc/iputils/files/iputils-20100418-proper-libs.patch20
-rw-r--r--net-misc/iputils/files/iputils-20101006-owl-pingsock.diff224
-rw-r--r--net-misc/iputils/files/iputils-99999999-openssl.patch97
-rw-r--r--net-misc/iputils/files/iputils-99999999-tftpd-syslog.patch38
-rw-r--r--net-misc/iputils/iputils-99999999.ebuild10
13 files changed, 152 insertions, 969 deletions
diff --git a/net-misc/iputils/ChangeLog b/net-misc/iputils/ChangeLog
index 35d59eaa8696..94f78e86ec58 100644
--- a/net-misc/iputils/ChangeLog
+++ b/net-misc/iputils/ChangeLog
@@ -1,6 +1,18 @@
# ChangeLog for net-misc/iputils
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/ChangeLog,v 1.138 2015/04/04 22:31:07 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/ChangeLog,v 1.139 2015/04/25 00:09:50 vapier Exp $
+
+ 25 Apr 2015; Mike Frysinger <vapier@gentoo.org>
+ +files/iputils-99999999-openssl.patch,
+ +files/iputils-99999999-tftpd-syslog.patch, -files/iputils-20070202-idn.patch,
+ -files/iputils-20071127-infiniband.patch,
+ -files/iputils-20071127-kernel-ifaddr.patch,
+ -files/iputils-20100418-aliasing.patch,
+ -files/iputils-20100418-makefile.patch, -files/iputils-20100418-openssl.patch,
+ -files/iputils-20100418-printf-size.patch,
+ -files/iputils-20100418-proper-libs.patch,
+ -files/iputils-20101006-owl-pingsock.diff, iputils-99999999.ebuild:
+ Update patches against latest git.
04 Apr 2015; Mike Frysinger <vapier@gentoo.org> iputils-20121221-r1.ebuild:
Mark arm64/m68k/s390/sh stable.
diff --git a/net-misc/iputils/files/iputils-20070202-idn.patch b/net-misc/iputils/files/iputils-20070202-idn.patch
deleted file mode 100644
index 98dc3ce54575..000000000000
--- a/net-misc/iputils/files/iputils-20070202-idn.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-sniped from Fedora and made to not suck
-
-http://bugs.gentoo.org/218638
-
---- iputils-s20070202/Makefile
-+++ iputils-s20070202/Makefile
-@@ -22,6 +22,11 @@
-
- all: $(TARGETS)
-
-+ifeq ($(IDN),yes)
-+CPPFLAGS += -DIDN
-+ping: LDLIBS += -lidn
-+ping6: LDLIBS += -lidn
-+endif
-
- tftpd: tftpd.o tftpsubs.o
- ping: ping.o ping_common.o
---- iputils-s20070202/ping.c
-+++ iputils-s20070202/ping.c
-@@ -58,6 +58,11 @@
- * This program has to run SUID to ROOT to access the ICMP socket.
- */
-
-+#ifdef IDN
-+#include <idna.h>
-+#include <locale.h>
-+#endif
-+
- #include "ping_common.h"
-
- #include <netinet/ip.h>
-@@ -122,6 +128,12 @@
- char *target, hnamebuf[MAXHOSTNAMELEN];
- char rspace[3 + 4 * NROUTES + 1]; /* record route space */
-
-+#ifdef IDN
-+ char *idn;
-+ int rc = 0;
-+ setlocale(LC_ALL, "");
-+#endif
-+
- icmp_sock = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
- socket_errno = errno;
-
-@@ -242,13 +254,35 @@
- if (argc == 1)
- options |= F_NUMERIC;
- } else {
-+#ifdef IDN
-+ rc = idna_to_ascii_lz (target, &idn, 0);
-+ if (rc == IDNA_SUCCESS)
-+ hp = gethostbyname (idn);
-+ else {
-+ fprintf(stderr, "ping: IDN encoding of '%s' failed with error code %d\n", target, rc);
-+ exit(2);
-+ }
-+ free(idn);
-+#else
- hp = gethostbyname(target);
-+#endif
- if (!hp) {
- fprintf(stderr, "ping: unknown host %s\n", target);
- exit(2);
- }
- memcpy(&whereto.sin_addr, hp->h_addr, 4);
-+#ifdef IDN
-+ rc = idna_to_unicode_lzlz (hp->h_name, &idn, 0);
-+ if (rc == IDNA_SUCCESS)
-+ strncpy(hnamebuf, idn, sizeof(hnamebuf) - 1);
-+ else {
-+ fprintf(stderr, "ping: IDN encoding of '%s' failed with error code %d\n", hp->h_name, rc);
-+ exit(2);
-+ }
-+ free(idn);
-+#else
- strncpy(hnamebuf, hp->h_name, sizeof(hnamebuf) - 1);
-+#endif
- hnamebuf[sizeof(hnamebuf) - 1] = 0;
- hostname = hnamebuf;
- }
---- iputils-s20070202/ping6.c
-+++ iputils-s20070202/ping6.c
-@@ -66,6 +66,13 @@
- * More statistics could always be gathered.
- * This program has to run SUID to ROOT to access the ICMP socket.
- */
-+#ifdef IDN
-+#ifndef _GNU_SOURCE
-+#define _GNU_SOURCE
-+#endif
-+#include <locale.h>
-+#endif
-+
- #include "ping_common.h"
-
- #include <linux/filter.h>
-@@ -210,6 +216,10 @@
- int err, csum_offset, sz_opt;
- static uint32_t scope_id = 0;
-
-+#ifdef IDN
-+ setlocale(LC_ALL, "");
-+#endif
-+
- icmp_sock = socket(AF_INET6, SOCK_RAW, IPPROTO_ICMPV6);
- socket_errno = errno;
-
-@@ -296,6 +306,9 @@
-
- memset(&hints, 0, sizeof(hints));
- hints.ai_family = AF_INET6;
-+#ifdef IDN
-+ hints.ai_flags = AI_IDN;
-+#endif
- gai = getaddrinfo(target, NULL, &hints, &ai);
- if (gai) {
- fprintf(stderr, "unknown host\n");
-@@ -328,6 +341,9 @@
-
- memset(&hints, 0, sizeof(hints));
- hints.ai_family = AF_INET6;
-+#ifdef IDN
-+ hints.ai_flags = AI_IDN;
-+#endif
- gai = getaddrinfo(target, NULL, &hints, &ai);
- if (gai) {
- fprintf(stderr, "unknown host\n");
---- iputils-s20070202/ping_common.c
-+++ iputils-s20070202/ping_common.c
-@@ -1,3 +1,7 @@
-+#ifdef IDN
-+#include <locale.h>
-+#endif
-+
- #include "ping_common.h"
- #include <ctype.h>
- #include <sched.h>
-@@ -97,6 +102,9 @@
-
- void common_options(int ch)
- {
-+#ifdef IDN
-+ setlocale(LC_ALL, "C");
-+#endif
- switch(ch) {
- case 'a':
- options |= F_AUDIBLE;
-@@ -222,6 +230,9 @@
- default:
- abort();
- }
-+#ifdef IDN
-+ setlocale(LC_ALL, "");
-+#endif
- }
-
-
diff --git a/net-misc/iputils/files/iputils-20071127-infiniband.patch b/net-misc/iputils/files/iputils-20071127-infiniband.patch
deleted file mode 100644
index 2bf06a204565..000000000000
--- a/net-misc/iputils/files/iputils-20071127-infiniband.patch
+++ /dev/null
@@ -1,280 +0,0 @@
-Otherwise same as Fedora patch except for the Makefile part
-
-http://bugs.gentoo.org/show_bug.cgi?id=377687
-http://pkgs.fedoraproject.org/gitweb/?p=iputils.git;a=blob_plain;f=iputils-20071127-infiniband.patch;hb=HEAD
-
---- arping.c
-+++ arping.c
-@@ -32,8 +32,6 @@
- #include <netinet/in.h>
- #include <arpa/inet.h>
-
--#include <sysfs/libsysfs.h>
--
- #include "SNAPSHOT.h"
-
- static void usage(void) __attribute__((noreturn));
-@@ -52,14 +50,22 @@ int unicasting;
- int s;
- int broadcast_only;
-
--struct sockaddr_storage me;
--struct sockaddr_storage he;
-+struct sockaddr_ll *me=NULL;
-+struct sockaddr_ll *he=NULL;
-
- struct timeval start, last;
-
- int sent, brd_sent;
- int received, brd_recv, req_recv;
-
-+#define SYSFS_MNT_PATH "/sys"
-+#define SYSFS_CLASS "class"
-+#define SYSFS_NET "net"
-+#define SYSFS_BROADCAST "broadcast"
-+#define SYSFS_PATH_ENV "SYSFS_PATH"
-+#define SYSFS_PATH_LEN 256
-+#define SOCKADDR_LEN (2 * sizeof(struct sockaddr_ll))
-+
- #define MS_TDIFF(tv1,tv2) ( ((tv1).tv_sec-(tv2).tv_sec)*1000 + \
- ((tv1).tv_usec-(tv2).tv_usec)/1000 )
-
-@@ -166,6 +172,10 @@ void finish(void)
- printf("\n");
- fflush(stdout);
- }
-+
-+ free(me);
-+ free(he);
-+
- if (dad)
- exit(!!received);
- if (unsolicited)
-@@ -186,8 +196,7 @@ void catcher(void)
- finish();
-
- if (last.tv_sec==0 || MS_TDIFF(tv,last) > 500) {
-- send_pack(s, src, dst,
-- (struct sockaddr_ll *)&me, (struct sockaddr_ll *)&he);
-+ send_pack(s, src, dst, me, he);
- if (count == 0 && unsolicited)
- finish();
- }
-@@ -234,7 +243,7 @@ int recv_pack(unsigned char *buf, int le
- return 0;
- if (ah->ar_pln != 4)
- return 0;
-- if (ah->ar_hln != ((struct sockaddr_ll *)&me)->sll_halen)
-+ if (ah->ar_hln != me->sll_halen)
- return 0;
- if (len < sizeof(*ah) + 2*(4 + ah->ar_hln))
- return 0;
-@@ -245,7 +254,7 @@ int recv_pack(unsigned char *buf, int le
- return 0;
- if (src.s_addr != dst_ip.s_addr)
- return 0;
-- if (memcmp(p+ah->ar_hln+4, ((struct sockaddr_ll *)&me)->sll_addr, ah->ar_hln))
-+ if (memcmp(p+ah->ar_hln+4, me->sll_addr, ah->ar_hln))
- return 0;
- } else {
- /* DAD packet was:
-@@ -263,7 +272,7 @@ int recv_pack(unsigned char *buf, int le
- */
- if (src_ip.s_addr != dst.s_addr)
- return 0;
-- if (memcmp(p, ((struct sockaddr_ll *)&me)->sll_addr, ((struct sockaddr_ll *)&me)->sll_halen) == 0)
-+ if (memcmp(p, me->sll_addr, me->sll_halen) == 0)
- return 0;
- if (src.s_addr && src.s_addr != dst_ip.s_addr)
- return 0;
-@@ -279,7 +288,7 @@ int recv_pack(unsigned char *buf, int le
- printf("for %s ", inet_ntoa(dst_ip));
- s_printed = 1;
- }
-- if (memcmp(p+ah->ar_hln+4, ((struct sockaddr_ll *)&me)->sll_addr, ah->ar_hln)) {
-+ if (memcmp(p+ah->ar_hln+4, me->sll_addr, ah->ar_hln)) {
- if (!s_printed)
- printf("for ");
- printf("[");
-@@ -305,40 +314,67 @@ int recv_pack(unsigned char *buf, int le
- if (quit_on_reply)
- finish();
- if(!broadcast_only) {
-- memcpy(((struct sockaddr_ll *)&he)->sll_addr, p, ((struct sockaddr_ll *)&me)->sll_halen);
-+ memcpy(he->sll_addr, p, me->sll_halen);
- unicasting=1;
- }
- return 1;
- }
-
--void set_device_broadcast(char *device, unsigned char *ba, size_t balen)
-+int get_sysfs_mnt_path(char *mnt_path, size_t len)
- {
-- struct sysfs_class_device *dev;
-- struct sysfs_attribute *brdcast;
-- unsigned char *p;
-- int ch;
-+ const char *sysfs_path_env;
-+ int pth_len=0;
-
-- dev = sysfs_open_class_device("net", device);
-- if (!dev) {
-- perror("sysfs_open_class_device(net)");
-- exit(2);
-- }
-+ if (len == 0 || mnt_path == NULL)
-+ return -1;
-
-- brdcast = sysfs_get_classdev_attr(dev, "broadcast");
-- if (!brdcast) {
-- perror("sysfs_get_classdev_attr(broadcast)");
-- exit(2);
-- }
-+ /* possible overrride of real mount path */
-+ sysfs_path_env = getenv(SYSFS_PATH_ENV);
-+ memset(mnt_path, 0, len);
-+ strncpy(mnt_path,
-+ sysfs_path_env != NULL ? sysfs_path_env : SYSFS_MNT_PATH,
-+ len-1);
-
-- if (sysfs_read_attribute(brdcast)) {
-- perror("sysfs_read_attribute");
-- exit(2);
-- }
-+ if ((pth_len = strlen(mnt_path)) > 0 && mnt_path[pth_len-1] == '/')
-+ mnt_path[pth_len-1] = '\0';
-+
-+ return 0;
-+}
-+
-+int make_sysfs_broadcast_path(char *broadcast_path, size_t len)
-+{
-+ char mnt_path[SYSFS_PATH_LEN];
-+
-+ if (get_sysfs_mnt_path(mnt_path, len) != 0)
-+ return -1;
-
-- for (p = ba, ch = 0; p < ba + balen; p++, ch += 3)
-- *p = strtoul(brdcast->value + ch, NULL, 16);
-+ snprintf(broadcast_path, len,
-+ "%s/" SYSFS_CLASS "/" SYSFS_NET "/%s/" SYSFS_BROADCAST,
-+ mnt_path, device);
-
-- return;
-+ return 0;
-+}
-+
-+char * read_sysfs_broadcast(char *brdcast_path)
-+{
-+ int fd;
-+ int len_to_read;
-+ char *brdcast = NULL;
-+
-+ if ((fd = open(brdcast_path, O_RDONLY)) > -1) {
-+ len_to_read = lseek(fd, 0L, SEEK_END);
-+ if ((brdcast = malloc(len_to_read+1)) != NULL) {
-+ lseek(fd, 0L, SEEK_SET);
-+ memset(brdcast, 0, len_to_read+1);
-+ if (read(fd, brdcast, len_to_read) == -1) {
-+ free(brdcast);
-+ brdcast = NULL;
-+ }
-+ }
-+ close(fd);
-+ }
-+
-+ return brdcast;
- }
-
- int
-@@ -356,6 +392,17 @@ main(int argc, char **argv)
- exit(-1);
- }
-
-+ me = malloc(SOCKADDR_LEN);
-+ if (!me) {
-+ fprintf(stderr, "arping: could not allocate memory\n");
-+ exit(1);
-+ }
-+ he = malloc(SOCKADDR_LEN);
-+ if (!he) {
-+ fprintf(stderr, "arping: could not allocate memory\n");
-+ exit(1);
-+ }
-+
- while ((ch = getopt(argc, argv, "h?bfDUAqc:w:s:I:V")) != EOF) {
- switch(ch) {
- case 'b':
-@@ -504,34 +551,51 @@ main(int argc, char **argv)
- close(probe_fd);
- };
-
-- ((struct sockaddr_ll *)&me)->sll_family = AF_PACKET;
-- ((struct sockaddr_ll *)&me)->sll_ifindex = ifindex;
-- ((struct sockaddr_ll *)&me)->sll_protocol = htons(ETH_P_ARP);
-- if (bind(s, (struct sockaddr*)&me, sizeof(me)) == -1) {
-+ me->sll_family = AF_PACKET;
-+ me->sll_ifindex = ifindex;
-+ me->sll_protocol = htons(ETH_P_ARP);
-+ if (bind(s, (struct sockaddr*)me, SOCKADDR_LEN) == -1) {
- perror("bind");
- exit(2);
- }
-
- if (1) {
-- socklen_t alen = sizeof(me);
-- if (getsockname(s, (struct sockaddr*)&me, &alen) == -1) {
-+ socklen_t alen = SOCKADDR_LEN;
-+ if (getsockname(s, (struct sockaddr*)me, &alen) == -1) {
- perror("getsockname");
- exit(2);
- }
- }
-- if (((struct sockaddr_ll *)&me)->sll_halen == 0) {
-+ if (me->sll_halen == 0) {
- if (!quiet)
- printf("Interface \"%s\" is not ARPable (no ll address)\n", device);
- exit(dad?0:2);
- }
-
-- he = me;
-+ memcpy(he, me, SOCKADDR_LEN);
-
- #if 1
-- set_device_broadcast(device, ((struct sockaddr_ll *)&he)->sll_addr,
-- ((struct sockaddr_ll *)&he)->sll_halen);
-+ char brdcast_path[SYSFS_PATH_LEN];
-+ char *brdcast_val=NULL;
-+ char *next_ch;
-+
-+ if (make_sysfs_broadcast_path(brdcast_path, sizeof brdcast_path) != 0) {
-+ perror("sysfs attribute broadcast");
-+ exit(2);
-+ }
-+
-+ if ((brdcast_val = read_sysfs_broadcast(brdcast_path)) == NULL) {
-+ perror("sysfs read broadcast value");
-+ exit(2);
-+ }
-+
-+ for (ch=0; ch<he->sll_halen; ch++) {
-+ he->sll_addr[ch] = strtol(brdcast_val + (ch*3), &next_ch, 16);
-+ }
-+
-+ free(brdcast_val);
- #else
-- memset(((struct sockaddr_ll *)&he)->sll_addr, -1, ((struct sockaddr_ll *)&he)->sll_halen);
-+ memset(he->sll_addr, -1, he->sll_halen);
- #endif
-
- if (!quiet) {
---- Makefile
-+++ Makefile
-@@ -28,7 +28,6 @@
- ping6: LDLIBS += -lidn
- endif
-
--arping: LDLIBS += -lsysfs
- ping6: LDLIBS += -lresolv -lcrypto
-
- tftpd: tftpd.o tftpsubs.o
diff --git a/net-misc/iputils/files/iputils-20071127-kernel-ifaddr.patch b/net-misc/iputils/files/iputils-20071127-kernel-ifaddr.patch
deleted file mode 100644
index af5587fa6f24..000000000000
--- a/net-misc/iputils/files/iputils-20071127-kernel-ifaddr.patch
+++ /dev/null
@@ -1,55 +0,0 @@
---- rarpd.c
-+++ rarpd.c
-@@ -55,10 +55,10 @@ struct iflink
- unsigned char lladdr[16];
- char name[IFNAMSIZ];
-- struct ifaddr *ifa_list;
-+ struct kern_ifaddr *ifa_list;
- } *ifl_list;
-
--struct ifaddr
-+struct kern_ifaddr
- {
-- struct ifaddr *next;
-+ struct kern_ifaddr *next;
- __u32 prefix;
- __u32 mask;
-@@ -92,5 +92,5 @@ void load_if(void)
- struct ifreq *ifrp, *ifend;
- struct iflink *ifl;
-- struct ifaddr *ifa;
-+ struct kern_ifaddr *ifa;
- struct ifconf ifc;
- struct ifreq ibuf[256];
-@@ -183,5 +183,5 @@ void load_if(void)
- if (mask == 0 || prefix == 0)
- continue;
-- ifa = (struct ifaddr*)malloc(sizeof(*ifa));
-+ ifa = (struct kern_ifaddr*)malloc(sizeof(*ifa));
- memset(ifa, 0, sizeof(*ifa));
- ifa->local = addr;
-@@ -239,8 +239,8 @@ int bootable(__u32 addr)
- }
-
--struct ifaddr *select_ipaddr(int ifindex, __u32 *sel_addr, __u32 **alist)
-+struct kern_ifaddr *select_ipaddr(int ifindex, __u32 *sel_addr, __u32 **alist)
- {
- struct iflink *ifl;
-- struct ifaddr *ifa;
-+ struct kern_ifaddr *ifa;
- int retry = 0;
- int i;
-@@ -298,5 +298,5 @@ struct rarp_map *rarp_lookup(int ifindex
- if (r == NULL) {
- if (hatype == ARPHRD_ETHER && halen == 6) {
-- struct ifaddr *ifa;
-+ struct kern_ifaddr *ifa;
- struct hostent *hp;
- char ename[256];
-@@ -371,5 +371,5 @@ int put_myipaddr(unsigned char **ptr_p,
- __u32 laddr = 0;
- struct iflink *ifl;
-- struct ifaddr *ifa;
-+ struct kern_ifaddr *ifa;
-
- for (ifl=ifl_list; ifl; ifl = ifl->next)
diff --git a/net-misc/iputils/files/iputils-20100418-aliasing.patch b/net-misc/iputils/files/iputils-20100418-aliasing.patch
deleted file mode 100644
index 48fb4d3bc2c2..000000000000
--- a/net-misc/iputils/files/iputils-20100418-aliasing.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From f36fbe8c85223def663f46499d0b6b9a75939aaa Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Sat, 14 Aug 2010 01:34:13 -0400
-Subject: [PATCH] fix up strict-aliasing warnings
-
-Current build of some tools results in gcc warning about strict-aliasing
-violations. So change those freaky casts to memcpy's. When the pointer
-types work out, gcc will optimize this away anyways.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- ping6.c | 13 +++++++++----
- tracepath.c | 2 +-
- tracepath6.c | 2 +-
- 3 files changed, 11 insertions(+), 6 deletions(-)
-
-diff --git a/ping6.c b/ping6.c
-index c5ff881..86f9216 100644
---- a/ping6.c
-+++ b/ping6.c
-@@ -1104,18 +1104,21 @@ int build_niquery(__u8 *_nih)
- {
- struct ni_hdr *nih;
- int cc;
-+ __u16 this_nonce;
-
- nih = (struct ni_hdr *)_nih;
- nih->ni_cksum = 0;
-
-- CLR(ntohs((*(__u16*)(nih->ni_nonce))) % mx_dup_ck);
-+ memcpy(&this_nonce, &nih->ni_nonce, sizeof(this_nonce));
-+ CLR(ntohs(this_nonce) % mx_dup_ck);
-
- nih->ni_type = ICMPV6_NI_QUERY;
- cc = sizeof(*nih);
- datalen = 0;
-
- memcpy(nih->ni_nonce, ni_nonce, sizeof(nih->ni_nonce));
-- *(__u16*)(nih->ni_nonce) = htons(ntransmitted + 1);
-+ this_nonce = htons(ntransmitted + 1);
-+ memcpy(&nih->ni_nonce, &this_nonce, sizeof(this_nonce));
-
- nih->ni_code = ni_subject_type;
- nih->ni_qtype = htons(ni_query);
-@@ -1331,7 +1334,7 @@ parse_reply(struct msghdr *msg, int cc, void *addr, struct timeval *tv)
- #endif
- if (c->cmsg_len < CMSG_LEN(sizeof(int)))
- continue;
-- hops = *(int*)CMSG_DATA(c);
-+ memcpy(&hops, CMSG_DATA(c), sizeof(int));
- }
- }
-
-@@ -1355,7 +1358,9 @@ parse_reply(struct msghdr *msg, int cc, void *addr, struct timeval *tv)
- return 0;
- } else if (icmph->icmp6_type == ICMPV6_NI_REPLY) {
- struct ni_hdr *nih = (struct ni_hdr *)icmph;
-- __u16 seq = ntohs(*(__u16 *)nih->ni_nonce);
-+ __u16 seq;
-+ memcpy(&seq, &nih->ni_nonce, sizeof(seq));
-+ seq = ntohs(seq);
- if (memcmp(&nih->ni_nonce[2], &ni_nonce[2], sizeof(ni_nonce) - sizeof(__u16)))
- return 1;
- if (gather_statistics((__u8*)icmph, sizeof(*icmph), cc,
-diff --git a/tracepath.c b/tracepath.c
-index ca84a69..0a14b1b 100644
---- a/tracepath.c
-+++ b/tracepath.c
-@@ -142,7 +142,7 @@ restart:
- if (cmsg->cmsg_type == IP_RECVERR) {
- e = (struct sock_extended_err *) CMSG_DATA(cmsg);
- } else if (cmsg->cmsg_type == IP_TTL) {
-- rethops = *(int*)CMSG_DATA(cmsg);
-+ memcpy(&rethops, CMSG_DATA(cmsg), sizeof(int));
- } else {
- printf("cmsg:%d\n ", cmsg->cmsg_type);
- }
-diff --git a/tracepath6.c b/tracepath6.c
-index 5c2db8f..77a3563 100644
---- a/tracepath6.c
-+++ b/tracepath6.c
-@@ -170,7 +170,7 @@ restart:
- #ifdef IPV6_2292HOPLIMIT
- case IPV6_2292HOPLIMIT:
- #endif
-- rethops = *(int*)CMSG_DATA(cmsg);
-+ memcpy(&rethops, CMSG_DATA(cmsg), sizeof(int));
- break;
- default:
- printf("cmsg6:%d\n ", cmsg->cmsg_type);
---
-1.7.1.1
-
diff --git a/net-misc/iputils/files/iputils-20100418-makefile.patch b/net-misc/iputils/files/iputils-20100418-makefile.patch
deleted file mode 100644
index 50a0e81c1307..000000000000
--- a/net-misc/iputils/files/iputils-20100418-makefile.patch
+++ /dev/null
@@ -1,35 +0,0 @@
---- Makefile
-+++ Makefile
-@@ -1,20 +1,17 @@
- # Path to parent kernel include files directory
- LIBC_INCLUDE=/usr/include
-
--DEFINES=
--
- #options if you have a bind>=4.9.4 libresolv (or, maybe, glibc)
- LDLIBS=
--ADDLIB=
-
- #options if you compile with libc5, and without a bind>=4.9.4 libresolv
- # NOT AVAILABLE. Please, use libresolv.
-
--CC=gcc
- # 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) $(DEFINES)
-+CFLAGS ?= -O2 -g
-+CFLAGS += -Wstrict-prototypes -Wall
-+CPPFLAGS += -D_GNU_SOURCE
-
- IPV4_TARGETS=tracepath ping clockdiff rdisc arping tftpd rarpd
- IPV6_TARGETS=tracepath6 traceroute6 ping6
-@@ -35,7 +32,7 @@
- rdisc_srv: rdisc_srv.o
-
- rdisc_srv.o: rdisc.c
-- $(CC) $(CFLAGS) -DRDISC_SERVER -o rdisc_srv.o rdisc.c
-+ $(CC) $(CFLAGS) $(CPPFLAGS) -DRDISC_SERVER -o rdisc_srv.o rdisc.c
-
-
- check-kernel:
diff --git a/net-misc/iputils/files/iputils-20100418-openssl.patch b/net-misc/iputils/files/iputils-20100418-openssl.patch
deleted file mode 100644
index db09ac0e6503..000000000000
--- a/net-misc/iputils/files/iputils-20100418-openssl.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-make openssl optional
-
-https://bugs.gentoo.org/335436
-
---- ping6.c
-+++ ping6.c
-@@ -161,7 +161,9 @@
-
- static int icmp_sock;
-
-+#ifdef HAVE_OPENSSL
- #include <openssl/md5.h>
-+#endif
-
- /* Node Information query */
- int ni_query = -1;
-@@ -478,6 +480,7 @@
-
- char *ni_groupaddr(const char *name)
- {
-+#ifdef HAVE_OPENSSL
- MD5_CTX ctxt;
- __u8 digest[16];
- static char nigroup_buf[INET6_ADDRSTRLEN + 1 + IFNAMSIZ];
-@@ -518,6 +521,10 @@
- if (q)
- strcat(nigroup_buf, q);
- return nigroup_buf;
-+#else
-+ fprintf(stderr, "ping6: function not available; openssl disabled\n");
-+ exit(1);
-+#endif
- }
-
- int main(int argc, char *argv[])
diff --git a/net-misc/iputils/files/iputils-20100418-printf-size.patch b/net-misc/iputils/files/iputils-20100418-printf-size.patch
deleted file mode 100644
index edde65b5914d..000000000000
--- a/net-misc/iputils/files/iputils-20100418-printf-size.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 6ccd3b91c18d8b13bc468ef962a9ef9dfc6c4515 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Sat, 14 Aug 2010 01:16:42 -0400
-Subject: [PATCH] tracepath: re-use printf return in print_host
-
-The printf funcs take an int for field widths, not a size_t. Also, since
-the printf funcs already return the length of chars displayed, use that
-value instead of re-calculating the length with strlen.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- tracepath.c | 11 ++++-------
- tracepath6.c | 11 ++++-------
- 2 files changed, 8 insertions(+), 14 deletions(-)
-
-diff --git a/tracepath.c b/tracepath.c
-index 81c22e9..ca84a69 100644
---- a/tracepath.c
-+++ b/tracepath.c
-@@ -68,13 +68,10 @@ void data_wait(int fd)
-
- void print_host(const char *a, const char *b, int both)
- {
-- size_t plen = 0;
-- printf("%s", a);
-- plen = strlen(a);
-- if (both) {
-- printf(" (%s)", b);
-- plen += strlen(b) + 3;
-- }
-+ int plen;
-+ plen = printf("%s", a);
-+ if (both)
-+ plen += printf(" (%s)", b);
- if (plen >= HOST_COLUMN_SIZE)
- plen = HOST_COLUMN_SIZE - 1;
- printf("%*s", HOST_COLUMN_SIZE - plen, "");
-diff --git a/tracepath6.c b/tracepath6.c
-index 5cc7424..5c2db8f 100644
---- a/tracepath6.c
-+++ b/tracepath6.c
-@@ -80,13 +80,10 @@ void data_wait(int fd)
-
- void print_host(const char *a, const char *b, int both)
- {
-- size_t plen = 0;
-- printf("%s", a);
-- plen = strlen(a);
-- if (both) {
-- printf(" (%s)", b);
-- plen += strlen(b) + 3;
-- }
-+ int plen;
-+ plen = printf("%s", a);
-+ if (both)
-+ plen += printf(" (%s)", b);
- if (plen >= HOST_COLUMN_SIZE)
- plen = HOST_COLUMN_SIZE - 1;
- printf("%*s", HOST_COLUMN_SIZE - plen, "");
---
-1.7.1.1
-
diff --git a/net-misc/iputils/files/iputils-20100418-proper-libs.patch b/net-misc/iputils/files/iputils-20100418-proper-libs.patch
deleted file mode 100644
index 96e529b1b8d9..000000000000
--- a/net-misc/iputils/files/iputils-20100418-proper-libs.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-http://bugs.gentoo.org/332703
-
---- Makefile
-+++ Makefile
-@@ -28,10 +28,13 @@
- ping6: LDLIBS += -lidn
- endif
-
-+arping: LDLIBS += -lsysfs
-+ping6: LDLIBS += -lresolv -lcrypto
-+
- tftpd: tftpd.o tftpsubs.o
--arping: arping.o -lsysfs
-+arping: arping.o
- ping: ping.o ping_common.o
--ping6: ping6.o ping_common.o -lresolv -lcrypto
-+ping6: ping6.o ping_common.o
- ping.o ping6.o ping_common.o: ping_common.h
- tftpd.o tftpsubs.o: tftp.h
-
diff --git a/net-misc/iputils/files/iputils-20101006-owl-pingsock.diff b/net-misc/iputils/files/iputils-20101006-owl-pingsock.diff
deleted file mode 100644
index 86c85bcaa27c..000000000000
--- a/net-misc/iputils/files/iputils-20101006-owl-pingsock.diff
+++ /dev/null
@@ -1,224 +0,0 @@
-http://openwall.info/wiki/people/segoon/ping
-
---- iputils-s20101006/ping.c
-+++ iputils-s20101006/ping.c
-@@ -88,6 +88,7 @@ struct sockaddr_in whereto; /* who to pi
- int optlen = 0;
- int settos = 0; /* Set TOS, Precendence or other QOS options */
- int icmp_sock; /* socket file descriptor */
-+int using_ping_socket = 0;
- u_char outpack[0x10000];
- int maxpacket = sizeof(outpack);
-
-@@ -123,7 +124,11 @@ main(int argc, char **argv)
- char *target, hnamebuf[MAX_HOSTNAMELEN];
- char rspace[3 + 4 * NROUTES + 1]; /* record route space */
-
-- icmp_sock = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
-+ icmp_sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_ICMP);
-+ if (icmp_sock != -1)
-+ using_ping_socket = 1;
-+ else
-+ icmp_sock = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
- socket_errno = errno;
-
- uid = getuid();
-@@ -377,13 +382,35 @@ main(int argc, char **argv)
- }
- }
-
-- if ((options&F_STRICTSOURCE) &&
-- bind(icmp_sock, (struct sockaddr*)&source, sizeof(source)) == -1) {
-- perror("bind");
-- exit(2);
-+ if (!using_ping_socket) {
-+ if ((options&F_STRICTSOURCE) &&
-+ bind(icmp_sock, (struct sockaddr*)&source, sizeof(source)) == -1) {
-+ perror("bind");
-+ exit(2);
-+ }
-+ } else {
-+ struct sockaddr_in sa;
-+ socklen_t sl;
-+
-+ sa.sin_family = AF_INET;
-+ sa.sin_port = 0;
-+ sa.sin_addr.s_addr = (options&F_STRICTSOURCE) ?
-+ source.sin_addr.s_addr : 0;
-+ sl = sizeof(sa);
-+
-+ if (bind(icmp_sock, (struct sockaddr *) &sa, sl) == -1) {
-+ perror("bind");
-+ exit(2);
-+ }
-+
-+ if (getsockname(icmp_sock, (struct sockaddr *) &sa, &sl) == -1) {
-+ perror("getsockname");
-+ exit(2);
-+ }
-+ ident = sa.sin_port;
- }
-
-- if (1) {
-+ if (!using_ping_socket) {
- struct icmp_filter filt;
- filt.data = ~((1<<ICMP_SOURCE_QUENCH)|
- (1<<ICMP_DEST_UNREACH)|
-@@ -398,6 +425,12 @@ main(int argc, char **argv)
- hold = 1;
- if (setsockopt(icmp_sock, SOL_IP, IP_RECVERR, (char *)&hold, sizeof(hold)))
- fprintf(stderr, "WARNING: your kernel is veeery old. No problems.\n");
-+ if (using_ping_socket) {
-+ if (setsockopt(icmp_sock, SOL_IP, IP_RECVTTL, (char *)&hold, sizeof(hold)))
-+ perror("WARNING: setsockopt(IP_RECVTTL)");
-+ if (setsockopt(icmp_sock, SOL_IP, IP_RETOPTS, (char *)&hold, sizeof(hold)))
-+ perror("WARNING: setsockopt(IP_RETOPTS)");
-+ }
-
- /* record route option */
- if (options & F_RROUTE) {
-@@ -566,6 +599,7 @@ int receive_error_msg()
- nerrors++;
- } else if (e->ee_origin == SO_EE_ORIGIN_ICMP) {
- struct sockaddr_in *sin = (struct sockaddr_in*)(e+1);
-+ int error_pkt;
-
- if (res < sizeof(icmph) ||
- target.sin_addr.s_addr != whereto.sin_addr.s_addr ||
-@@ -576,9 +610,18 @@ int receive_error_msg()
- goto out;
- }
-
-- acknowledge(ntohs(icmph.un.echo.sequence));
-+ error_pkt = (e->ee_type != ICMP_REDIRECT &&
-+ e->ee_type != ICMP_SOURCE_QUENCH);
-+ if (error_pkt) {
-+ acknowledge(ntohs(icmph.un.echo.sequence));
-+ net_errors++;
-+ nerrors++;
-+ }
-+ else {
-+ saved_errno = 0;
-+ }
-
-- if (!working_recverr) {
-+ if (!using_ping_socket && !working_recverr) {
- struct icmp_filter filt;
- working_recverr = 1;
- /* OK, it works. Add stronger filter. */
-@@ -589,15 +632,14 @@ int receive_error_msg()
- perror("\rWARNING: setsockopt(ICMP_FILTER)");
- }
-
-- net_errors++;
-- nerrors++;
- if (options & F_QUIET)
- goto out;
- if (options & F_FLOOD) {
-- write(STDOUT_FILENO, "\bE", 2);
-+ if (error_pkt)
-+ write(STDOUT_FILENO, "\bE", 2);
- } else {
- print_timestamp();
-- printf("From %s icmp_seq=%u ", pr_addr(sin->sin_addr.s_addr), ntohs(icmph.un.echo.sequence));
-+ printf("From %s: icmp_seq=%u ", pr_addr(sin->sin_addr.s_addr), ntohs(icmph.un.echo.sequence));
- pr_icmph(e->ee_type, e->ee_code, e->ee_info, NULL);
- fflush(stdout);
- }
-@@ -695,15 +737,41 @@ parse_reply(struct msghdr *msg, int cc,
- struct iphdr *ip;
- int hlen;
- int csfailed;
-+ struct cmsghdr *cmsg;
-+ int ttl;
-+ __u8 *opts;
-+ int optlen;
-
- /* Check the IP header */
- ip = (struct iphdr *)buf;
-- hlen = ip->ihl*4;
-- if (cc < hlen + 8 || ip->ihl < 5) {
-- if (options & F_VERBOSE)
-- fprintf(stderr, "ping: packet too short (%d bytes) from %s\n", cc,
-- pr_addr(from->sin_addr.s_addr));
-- return 1;
-+ if (!using_ping_socket) {
-+ hlen = ip->ihl*4;
-+ if (cc < hlen + 8 || ip->ihl < 5) {
-+ if (options & F_VERBOSE)
-+ fprintf(stderr, "ping: packet too short (%d bytes) from %s\n", cc,
-+ pr_addr(from->sin_addr.s_addr));
-+ return 1;
-+ }
-+ ttl = ip->ttl;
-+ opts = buf + sizeof(struct iphdr);
-+ optlen = hlen - sizeof(struct iphdr);
-+ } else {
-+ hlen = 0;
-+ ttl = 0;
-+ opts = buf;
-+ optlen = 0;
-+ for (cmsg = CMSG_FIRSTHDR(msg); cmsg; cmsg = CMSG_NXTHDR(msg, cmsg)) {
-+ if (cmsg->cmsg_level != SOL_IP)
-+ continue;
-+ if (cmsg->cmsg_type == IP_TTL) {
-+ if (cmsg->cmsg_len < sizeof(int))
-+ continue;
-+ ttl = *(int *) CMSG_DATA(cmsg);
-+ } else if (cmsg->cmsg_type == IP_RETOPTS) {
-+ opts = (__u8 *) CMSG_DATA(cmsg);
-+ optlen = cmsg->cmsg_len;
-+ }
-+ }
- }
-
- /* Now the ICMP part */
-@@ -716,7 +784,7 @@ parse_reply(struct msghdr *msg, int cc,
- return 1; /* 'Twas not our ECHO */
- if (gather_statistics((__u8*)icp, sizeof(*icp), cc,
- ntohs(icp->un.echo.sequence),
-- ip->ttl, 0, tv, pr_addr(from->sin_addr.s_addr),
-+ ttl, 0, tv, pr_addr(from->sin_addr.s_addr),
- pr_echo_reply))
- return 0;
- } else {
-@@ -807,7 +875,7 @@ parse_reply(struct msghdr *msg, int cc,
- }
-
- if (!(options & F_FLOOD)) {
-- pr_options(buf + sizeof(struct iphdr), hlen);
-+ pr_options(opts, optlen + sizeof(struct iphdr));
-
- if (options & F_AUDIBLE)
- putchar('\a');
-@@ -916,8 +984,7 @@ void pr_icmph(__u8 type, __u8 code, __u3
- printf("Redirect, Bad Code: %d", code);
- break;
- }
-- if (icp)
-- printf("(New nexthop: %s)\n", pr_addr(icp->un.gateway));
-+ printf("(New nexthop: %s)\n", pr_addr(icp ? icp->un.gateway : info));
- if (icp && (options & F_VERBOSE))
- pr_iph((struct iphdr*)(icp + 1));
- break;
-@@ -1217,7 +1284,7 @@ void install_filter(void)
- insns
- };
-
-- if (once)
-+ if (once || using_ping_socket)
- return;
- once = 1;
-
---- iputils-s20101006/ping_common.c
-+++ iputils-s20101006/ping_common.c
-@@ -515,7 +515,8 @@ void setup(int icmp_sock)
- *p++ = i;
- }
-
-- ident = htons(getpid() & 0xFFFF);
-+ if (!ident)
-+ ident = htons(getpid() & 0xFFFF);
-
- set_signal(SIGINT, sigexit);
- set_signal(SIGALRM, sigexit);
diff --git a/net-misc/iputils/files/iputils-99999999-openssl.patch b/net-misc/iputils/files/iputils-99999999-openssl.patch
new file mode 100644
index 000000000000..13f5639a6fb6
--- /dev/null
+++ b/net-misc/iputils/files/iputils-99999999-openssl.patch
@@ -0,0 +1,97 @@
+From 321d64b9f94653322e678e34ac214ddb73a71db8 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Thu, 24 Jan 2013 23:32:39 -0500
+Subject: [PATCH iputils] ping6: allow disabling of openssl support
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile | 5 ++++-
+ iputils_md5dig.h | 4 +++-
+ ping6.c | 10 ++++++++++
+ 3 files changed, 17 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 54e5a6d..7147f08 100644
+--- a/Makefile
++++ b/Makefile
+@@ -36,7 +36,7 @@ ARPING_DEFAULT_DEVICE=
+
+ # Libgcrypt (for MD5) for ping6 [yes|no|static]
+ USE_GCRYPT=yes
+-# Crypto library for ping6 [shared|static]
++# Crypto library for ping6 [shared|static|no]
+ USE_CRYPTO=shared
+ # Resolv library for ping6 [yes|static]
+ USE_RESOLV=yes
+@@ -63,7 +63,10 @@ ifneq ($(USE_GCRYPT),no)
+ LIB_CRYPTO = $(call FUNC_LIB,$(USE_GCRYPT),$(LDFLAG_GCRYPT))
+ DEF_CRYPTO = -DUSE_GCRYPT
+ else
++ifneq ($(USE_CRYPTO),no)
+ LIB_CRYPTO = $(call FUNC_LIB,$(USE_CRYPTO),$(LDFLAG_CRYPTO))
++ DEF_CRYPTO = -DUSE_OPENSSL
++endif
+ endif
+
+ # USE_RESOLV: LIB_RESOLV
+diff --git a/iputils_md5dig.h b/iputils_md5dig.h
+index 4cec866..d6c4d46 100644
+--- a/iputils_md5dig.h
++++ b/iputils_md5dig.h
+@@ -5,8 +5,10 @@
+ # include <stdlib.h>
+ # include <gcrypt.h>
+ # define IPUTILS_MD5DIG_LEN 16
+-#else
++# define USE_CRYPTO
++#elif defined(USE_OPENSSL)
+ # include <openssl/md5.h>
++# define USE_CRYPTO
+ #endif
+
+ #ifdef USE_GCRYPT
+diff --git a/ping6.c b/ping6.c
+index 7085f31..7b7c1af 100644
+--- a/ping6.c
++++ b/ping6.c
+@@ -324,6 +324,7 @@ static void niquery_init_nonce(void)
+ #if !PING6_NONCE_MEMORY
+ static int niquery_nonce(__u8 *nonce, int fill)
+ {
++# ifdef USE_CRYPTO
+ static __u8 digest[MD5_DIGEST_LENGTH];
+ static int seq = -1;
+
+@@ -346,6 +347,10 @@ static int niquery_nonce(__u8 *nonce, int fill)
+ return -1;
+ return ntohsp((__u16 *)nonce);
+ }
++# else
++ fprintf(stderr, "ping6: function not available; crypto disabled\n");
++ exit(3);
++# endif
+ }
+ #endif
+
+@@ -500,6 +505,7 @@ static int niquery_option_subject_addr_handler(int index, const char *arg)
+
+ static int niquery_option_subject_name_handler(int index, const char *arg)
+ {
++#ifdef USE_CRYPTO
+ static char nigroup_buf[INET6_ADDRSTRLEN + 1 + IFNAMSIZ];
+ unsigned char *dnptrs[2], **dpp, **lastdnptr;
+ int n;
+@@ -625,6 +631,10 @@ errexit:
+ free(idn);
+ free(name);
+ exit(1);
++#else
++ fprintf(stderr, "ping6: function not available; crypto disabled\n");
++ exit(3);
++#endif
+ }
+
+ int niquery_option_help_handler(int index, const char *arg)
+--
+2.3.5
+
diff --git a/net-misc/iputils/files/iputils-99999999-tftpd-syslog.patch b/net-misc/iputils/files/iputils-99999999-tftpd-syslog.patch
new file mode 100644
index 000000000000..ad34f3b5f646
--- /dev/null
+++ b/net-misc/iputils/files/iputils-99999999-tftpd-syslog.patch
@@ -0,0 +1,38 @@
+From e88ed3752872d7c7ca37d95eb4d434ca4d3c4eae Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Sat, 19 Apr 2014 10:39:39 -0400
+Subject: [PATCH iputils] tftpd: fix syslog setup
+
+Commit d81a44625b04d487c895473aa77af13420b7afdd added support for checking
+the set*id calls, but would call syslog() before it had called openlog().
+Move the call up earlier to fix that.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ tftpd.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/tftpd.c b/tftpd.c
+index e3af2f4..7ddc8eb 100644
+--- a/tftpd.c
++++ b/tftpd.c
+@@ -109,6 +109,8 @@ int main(int ac, char **av)
+ register int n = 0;
+ int on = 1;
+
++ openlog("tftpd", LOG_PID, LOG_DAEMON);
++
+ /* Sanity. If parent forgot to setuid() on us. */
+ if (geteuid() == 0) {
+ if (setgid(65534)) {
+@@ -125,7 +127,6 @@ int main(int ac, char **av)
+ while (ac-- > 0 && n < MAXARG)
+ dirs[n++] = *av++;
+
+- openlog("tftpd", LOG_PID, LOG_DAEMON);
+ if (ioctl(0, FIONBIO, &on) < 0) {
+ syslog(LOG_ERR, "ioctl(FIONBIO): %m\n");
+ exit(1);
+--
+2.3.5
+
diff --git a/net-misc/iputils/iputils-99999999.ebuild b/net-misc/iputils/iputils-99999999.ebuild
index 8ad665f813ca..d1ad9aac938b 100644
--- a/net-misc/iputils/iputils-99999999.ebuild
+++ b/net-misc/iputils/iputils-99999999.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/iputils-99999999.ebuild,v 1.13 2014/04/29 19:22:34 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/iputils/iputils-99999999.ebuild,v 1.14 2015/04/25 00:09:50 vapier Exp $
# For released versions, we precompile the man/html pages and store
# them in a tarball on our mirrors. This avoids ugly issues while
@@ -50,11 +50,9 @@ S=${WORKDIR}/${PN}-s${PV}
src_prepare() {
epatch "${FILESDIR}"/021109-uclibc-no-ether_ntohost.patch
- epatch "${FILESDIR}"/${PN}-20121221-openssl.patch #335436
- epatch "${FILESDIR}"/${PN}-20100418-so_mark.patch #335347
+ epatch "${FILESDIR}"/${PN}-99999999-openssl.patch #335436
+ epatch "${FILESDIR}"/${PN}-99999999-tftpd-syslog.patch
epatch "${FILESDIR}"/${PN}-20121221-makefile.patch
- epatch "${FILESDIR}"/${PN}-20121221-printf-size.patch
- epatch "${FILESDIR}"/${PN}-20121221-owl-pingsock.diff
use SECURITY_HAZARD && epatch "${FILESDIR}"/${PN}-20071127-nonroot-floodping.patch
use static && append-ldflags -static
}