From 499d76a43c8accc286bb06b47a4d7031afaed8bd Mon Sep 17 00:00:00 2001 From: James <> Date: Wed, 27 Oct 2021 15:17:29 +0100 Subject: fish --- master/iputils | 552 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 552 insertions(+) create mode 100644 master/iputils (limited to 'master/iputils') diff --git a/master/iputils b/master/iputils new file mode 100644 index 0000000..5033cf8 --- /dev/null +++ b/master/iputils @@ -0,0 +1,552 @@ +diff --git a/package/network/utils/iputils/Makefile b/package/network/utils/iputils/Makefile +new file mode 100644 +index 00000000000..03ad7d2031e +--- /dev/null ++++ b/package/network/utils/iputils/Makefile +@@ -0,0 +1,182 @@ ++# ++# Copyright (C) 2006-2010 OpenWrt.org ++# ++# This is free software, licensed under the GNU General Public License v2. ++# See /LICENSE for more information. ++# ++ ++include $(TOPDIR)/rules.mk ++ ++PKG_NAME:=iputils ++PKG_VERSION:=20101006 ++PKG_RELEASE:=1 ++ ++PKG_SOURCE:=$(PKG_NAME)-s$(PKG_VERSION).tar.bz2 ++PKG_SOURCE_URL:=http://www.skbuff.net/iputils ++PKG_HASH:=fd3af46c80ebb99607c2ca1f2a3608b6fe828e25bbec6e54f2afd25f6ddb6ee7 ++ ++PKG_MAINTAINER:=Jo-Philipp Wich ++PKG_LICENSE:=GPL-2.0+ ++PKG_CPE_ID:=cpe:/a:skbuff:iputils ++ ++PKG_BUILD_DEPENDS:=sysfsutils ++PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-s$(PKG_VERSION) ++ ++include $(INCLUDE_DIR)/package.mk ++ ++ ++define Package/iputils/Default ++ SECTION:=net ++ CATEGORY:=Network ++ URL:=http://www.skbuff.net/iputils ++endef ++ ++ ++define Package/iputils-arping ++$(call Package/iputils/Default) ++ TITLE:=iputils - arping ++ DEPENDS+= +libsysfs ++endef ++ ++define Package/iputils-arping/description ++ Program arping from iputils. ++ Sends ARP REQUEST to a neighbour host. ++endef ++ ++ ++define Package/iputils-clockdiff ++$(call Package/iputils/Default) ++ TITLE:=iputils - clockdiff ++endef ++ ++define Package/iputils-clockdiff/description ++ Program clockdiff from iputils. ++ Measures clock difference between hosts. ++endef ++ ++ ++define Package/iputils-ping ++$(call Package/iputils/Default) ++ TITLE:=iputils - ping ++endef ++ ++define Package/iputils-ping/description ++ Program ping from iputils. ++ Sends ICMP ECHO_REQUEST to network hosts (IPv4). ++endef ++ ++ ++define Package/iputils-ping6 ++$(call Package/iputils/Default) ++ TITLE:=iputils - ping6 ++ DEPENDS+= @IPV6 +USE_GLIBC:libopenssl ++endef ++ ++define Package/iputils-ping6/description ++ Program ping6 from iputils. ++ Sends ICMP ECHO_REQUEST to network hosts (IPv6). ++endef ++ ++ ++define Package/iputils-tftpd ++$(call Package/iputils/Default) ++ TITLE:=iputils - tftpd ++endef ++ ++define Package/iputils-tftpd/description ++ Program tftpd from iputils ++ Trivial File Transfer Protocol server. ++endef ++ ++ ++define Package/iputils-tracepath ++$(call Package/iputils/Default) ++ TITLE:=iputils - tracepath ++endef ++ ++define Package/iputils-tracepath/description ++ Program tracepath from iputils. ++ Traces path to a network host discovering MTU along this path (IPv4). ++endef ++ ++ ++define Package/iputils-tracepath6 ++$(call Package/iputils/Default) ++ TITLE:=iputils - tracepath6 ++ DEPENDS+= @IPV6 ++endef ++ ++define Package/iputils-tracepath6/description ++ Program tracepath6 from iputils. ++ Traces path to a network host discovering MTU along this path (IPv6). ++endef ++ ++ ++define Package/iputils-traceroute6 ++$(call Package/iputils/Default) ++ TITLE:=iputils - traceroute6 ++ DEPENDS+= @IPV6 ++endef ++ ++define Package/iputils-traceroute6/description ++ Program traceroute6 from iputils. ++ Traces path to a network host (IPv6). ++endef ++ ++ifdef CONFIG_USE_MUSL ++ TARGET_CFLAGS += -D__UCLIBC__ ++endif ++ ++MAKE_FLAGS += \ ++ CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) $(TARGET_LDFLAGS)" \ ++ CONFIG_IPV6="$(CONFIG_IPV6)" \ ++ CONFIG_USE_UCLIBC="$(CONFIG_USE_UCLIBC)$(CONFIG_USE_MUSL)" \ ++ ++define Package/iputils-arping/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_BIN) $(PKG_BUILD_DIR)/arping $(1)/usr/bin/ ++endef ++ ++define Package/iputils-clockdiff/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_BIN) $(PKG_BUILD_DIR)/clockdiff $(1)/usr/bin/ ++endef ++ ++define Package/iputils-ping/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_SUID) $(PKG_BUILD_DIR)/ping $(1)/usr/bin/ ++endef ++ ++define Package/iputils-ping6/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_SUID) $(PKG_BUILD_DIR)/ping6 $(1)/usr/bin/ ++endef ++ ++define Package/iputils-tftpd/install ++ $(INSTALL_DIR) $(1)/usr/sbin ++ $(INSTALL_BIN) $(PKG_BUILD_DIR)/tftpd $(1)/usr/sbin/ ++endef ++ ++define Package/iputils-tracepath/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_BIN) $(PKG_BUILD_DIR)/tracepath $(1)/usr/bin/ ++endef ++ ++define Package/iputils-tracepath6/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_BIN) $(PKG_BUILD_DIR)/tracepath6 $(1)/usr/bin/ ++endef ++ ++define Package/iputils-traceroute6/install ++ $(INSTALL_DIR) $(1)/usr/bin ++ $(INSTALL_SUID) $(PKG_BUILD_DIR)/traceroute6 $(1)/usr/bin/ ++endef ++ ++$(eval $(call BuildPackage,iputils-arping)) ++$(eval $(call BuildPackage,iputils-clockdiff)) ++$(eval $(call BuildPackage,iputils-ping)) ++$(eval $(call BuildPackage,iputils-tftpd)) ++$(eval $(call BuildPackage,iputils-tracepath)) ++$(eval $(call BuildPackage,iputils-ping6)) ++$(eval $(call BuildPackage,iputils-tracepath6)) ++$(eval $(call BuildPackage,iputils-traceroute6)) +diff --git a/package/network/utils/iputils/patches/001-iputils.patch b/package/network/utils/iputils/patches/001-iputils.patch +new file mode 100644 +index 00000000000..e57db1379ea +--- /dev/null ++++ b/package/network/utils/iputils/patches/001-iputils.patch +@@ -0,0 +1,14 @@ ++diff -ur a/Makefile b/Makefile ++--- a/Makefile 2002-09-20 18:23:55.000000000 +0000 +++++ b/Makefile 2007-05-17 13:59:55.000000000 +0000 ++@@ -16,8 +16,8 @@ ++ CCOPT=-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -g ++ CFLAGS=$(CCOPT) $(GLIBCFIX) $(DEFINES) ++ ++-IPV4_TARGETS=tracepath ping clockdiff rdisc arping tftpd rarpd ++-IPV6_TARGETS=tracepath6 traceroute6 ping6 +++IPV4_TARGETS=tracepath ping clockdiff arping tftpd +++IPV6_TARGETS=tracepath6 traceroute6 ping6 ++ TARGETS=$(IPV4_TARGETS) $(IPV6_TARGETS) ++ ++ LASTTAG:=`git describe HEAD | sed -e 's/-.*//'` +diff --git a/package/network/utils/iputils/patches/002-fix-ipv6.patch b/package/network/utils/iputils/patches/002-fix-ipv6.patch +new file mode 100644 +index 00000000000..4411ca7ef32 +--- /dev/null ++++ b/package/network/utils/iputils/patches/002-fix-ipv6.patch +@@ -0,0 +1,14 @@ ++--- a/Makefile +++++ b/Makefile ++@@ -18,7 +18,10 @@ CFLAGS=$(CCOPT) $(GLIBCFIX) $(DEFINES) ++ ++ IPV4_TARGETS=tracepath ping clockdiff arping tftpd ++ IPV6_TARGETS=tracepath6 traceroute6 ping6 ++-TARGETS=$(IPV4_TARGETS) $(IPV6_TARGETS) +++TARGETS=$(IPV4_TARGETS) +++ifeq ($(CONFIG_IPV6),y) +++ TARGETS=$(IPV4_TARGETS) $(IPV6_TARGETS) +++endif ++ ++ LASTTAG:=`git describe HEAD | sed -e 's/-.*//'` ++ TAG:=`date +s%Y%m%d` +diff --git a/package/network/utils/iputils/patches/003-fix-makefile.patch b/package/network/utils/iputils/patches/003-fix-makefile.patch +new file mode 100644 +index 00000000000..926c6855196 +--- /dev/null ++++ b/package/network/utils/iputils/patches/003-fix-makefile.patch +@@ -0,0 +1,18 @@ ++--- a/Makefile +++++ b/Makefile ++@@ -30,9 +30,13 @@ all: $(TARGETS) ++ ++ ++ tftpd: tftpd.o tftpsubs.o ++-arping: arping.o -lsysfs +++arping: arping.o +++ $(CC) $(CFLAGS) -o $@ arping.o -lsysfs ++ ping: ping.o ping_common.o ++-ping6: ping6.o ping_common.o -lresolv -lcrypto +++ping6: ping6.o ping_common.o +++ifneq ($(CONFIG_USE_UCLIBC),y) +++ $(CC) $(CFLAGS) -o $@ ping6.o ping_common.o -lresolv -lcrypto +++endif ++ ping.o ping6.o ping_common.o: ping_common.h ++ tftpd.o tftpsubs.o: tftp.h ++ +diff --git a/package/network/utils/iputils/patches/010-ping6_uclibc_resolv.patch b/package/network/utils/iputils/patches/010-ping6_uclibc_resolv.patch +new file mode 100644 +index 00000000000..695580347b5 +--- /dev/null ++++ b/package/network/utils/iputils/patches/010-ping6_uclibc_resolv.patch +@@ -0,0 +1,200 @@ ++diff --git a/ping6.c b/ping6.c ++index c5ff881..ef2243f 100644 ++--- a/ping6.c +++++ b/ping6.c ++@@ -71,9 +71,11 @@ char copyright[] = ++ #include ++ #include ++ #include +++#ifndef __UCLIBC__ ++ #include ++ ++ #include "ping6_niquery.h" +++#endif /* __UCLIBC__ */ ++ ++ #ifndef SOL_IPV6 ++ #define SOL_IPV6 IPPROTO_IPV6 ++@@ -154,6 +156,7 @@ int pmtudisc=-1; ++ ++ static int icmp_sock; ++ +++#ifndef __UCLIBC__ ++ #include ++ ++ /* Node Information query */ ++@@ -165,6 +168,7 @@ int ni_subject_type = 0; ++ char *ni_group; ++ ++ __u8 ni_nonce[8]; +++#endif /* __UCLIBC__ */ ++ ++ static struct in6_addr in6_anyaddr; ++ static __inline__ int ipv6_addr_any(struct in6_addr *addr) ++@@ -223,6 +227,7 @@ unsigned int if_name2index(const char *ifname) ++ return i; ++ } ++ +++#ifndef __UCLIBC__ ++ struct niquery_option { ++ char *name; ++ int namelen; ++@@ -512,6 +517,7 @@ char *ni_groupaddr(const char *name) ++ strcat(nigroup_buf, q); ++ return nigroup_buf; ++ } +++#endif /* __UCLIBC__ */ ++ ++ int main(int argc, char *argv[]) ++ { ++@@ -595,12 +601,14 @@ int main(int argc, char *argv[]) ++ case 'V': ++ printf("ping6 utility, iputils-ss%s\n", SNAPSHOT); ++ exit(0); +++#ifndef __UCLIBC__ ++ case 'N': ++ if (niquery_option_handler(optarg) < 0) { ++ usage(); ++ break; ++ } ++ break; +++#endif /* __UCLIBC__ */ ++ COMMON_OPTIONS ++ common_options(ch); ++ break; ++@@ -663,6 +671,7 @@ int main(int argc, char *argv[]) ++ argc--; ++ } ++ +++#ifndef __UCLIBC__ ++ if (ni_query >= 0) { ++ int i; ++ for (i = 0; i < 8; i++) ++@@ -674,15 +683,20 @@ int main(int argc, char *argv[]) ++ ni_subject_type = NI_SUBJ_IPV6; ++ } ++ } +++#endif /* __UCLIBC__ */ ++ ++ if (argc > 1) ++ usage(); ++ else if (argc == 1) { ++ target = *argv; ++ } else { +++#ifndef __UCLIBC__ ++ if (ni_query < 0 && ni_subject_type != NI_SUBJ_NAME) +++#endif /* __UCLIBC__ */ ++ usage(); +++#ifndef __UCLIBC__ ++ target = ni_group; +++#endif /* __UCLIBC__ */ ++ } ++ ++ memset(&hints, 0, sizeof(hints)); ++@@ -817,7 +831,11 @@ int main(int argc, char *argv[]) ++ exit(2); ++ } ++ +++#ifndef __UCLIBC__ ++ if (datalen >= sizeof(struct timeval) && (ni_query < 0)) { +++#else +++ if (datalen >= sizeof(struct timeval)) { +++#endif /* __UCLIBC__ */ ++ /* can we time transfer */ ++ timing = 1; ++ } ++@@ -866,9 +884,11 @@ int main(int argc, char *argv[]) ++ ICMP6_FILTER_SETPASS(ICMP6_PARAM_PROB, &filter); ++ } ++ +++#ifndef __UCLIBC__ ++ if (ni_query >= 0) ++ ICMP6_FILTER_SETPASS(ICMPV6_NI_REPLY, &filter); ++ else +++#endif /* __UCLIBC__ */ ++ ICMP6_FILTER_SETPASS(ICMP6_ECHO_REPLY, &filter); ++ ++ err = setsockopt(icmp_sock, IPPROTO_ICMPV6, ICMP6_FILTER, &filter, ++@@ -1100,6 +1120,7 @@ int build_echo(__u8 *_icmph) ++ return cc; ++ } ++ +++#ifndef __UCLIBC__ ++ int build_niquery(__u8 *_nih) ++ { ++ struct ni_hdr *nih; ++@@ -1125,6 +1146,7 @@ int build_niquery(__u8 *_nih) ++ ++ return cc; ++ } +++#endif /* __UCLIBC__ */ ++ ++ int send_probe(void) ++ { ++@@ -1132,9 +1154,11 @@ int send_probe(void) ++ ++ CLR((ntransmitted+1) % mx_dup_ck); ++ +++#ifndef __UCLIBC__ ++ if (ni_query >= 0) ++ len = build_niquery(outpack); ++ else +++#endif /* __UCLIBC__ */ ++ len = build_echo(outpack); ++ ++ if (cmsglen == 0) { ++@@ -1176,6 +1200,7 @@ static void putchar_safe(char c) ++ printf("\\%03o", c); ++ } ++ +++#ifndef __UCLIBC__ ++ void pr_niquery_reply_name(struct ni_hdr *nih, int len) ++ { ++ __u8 *h = (__u8 *)(nih + 1); ++@@ -1304,6 +1329,7 @@ void pr_niquery_reply(__u8 *_nih, int len) ++ } ++ putchar(';'); ++ } +++#endif /* __UCLIBC__ */ ++ ++ /* ++ * parse_reply -- ++@@ -1353,6 +1379,7 @@ parse_reply(struct msghdr *msg, int cc, void *addr, struct timeval *tv) ++ hops, 0, tv, pr_addr(&from->sin6_addr), ++ pr_echo_reply)) ++ return 0; +++#ifndef __UCLIBC__ ++ } else if (icmph->icmp6_type == ICMPV6_NI_REPLY) { ++ struct ni_hdr *nih = (struct ni_hdr *)icmph; ++ __u16 seq = ntohs(*(__u16 *)nih->ni_nonce); ++@@ -1363,6 +1390,7 @@ parse_reply(struct msghdr *msg, int cc, void *addr, struct timeval *tv) ++ hops, 0, tv, pr_addr(&from->sin6_addr), ++ pr_niquery_reply)) ++ return 0; +++#endif /* __UCLIBC__ */ ++ } else { ++ int nexthdr; ++ struct ip6_hdr *iph1 = (struct ip6_hdr*)(icmph+1); ++@@ -1557,7 +1585,9 @@ void usage(void) ++ "Usage: ping6 [-LUdfnqrvVaAD] [-c count] [-i interval] [-w deadline]\n" ++ " [-p pattern] [-s packetsize] [-t ttl] [-I interface]\n" ++ " [-M pmtudisc-hint] [-S sndbuf] [-F flowlabel] [-Q tclass]\n" +++#ifndef __UCLIBC__ ++ " [[-N nodeinfo-option] ...]\n" +++#endif /* __UCLIBC__ */ ++ " [hop1 ...] destination\n"); ++ exit(2); ++ } ++diff --git a/ping6_niquery.h b/ping6_niquery.h ++index 61a5cfa..34c31f8 100644 ++--- a/ping6_niquery.h +++++ b/ping6_niquery.h ++@@ -1,3 +1,4 @@ +++#ifndef __UCLIBC__ ++ #include ++ ++ /* Node Information Query */ ++@@ -45,3 +46,4 @@ struct ni_hdr { ++ #define NI_IPV4ADDR_F_TRUNCATE NI_IPV6ADDR_F_TRUNCATE ++ #define NI_IPV4ADDR_F_ALL NI_IPV6ADDR_F_ALL ++ +++#endif /* __UCLIBC__ */ +diff --git a/package/network/utils/iputils/patches/011-ping6_use_gnu_source.patch b/package/network/utils/iputils/patches/011-ping6_use_gnu_source.patch +new file mode 100644 +index 00000000000..dc61b8c22f4 +--- /dev/null ++++ b/package/network/utils/iputils/patches/011-ping6_use_gnu_source.patch +@@ -0,0 +1,11 @@ ++--- a/ping6.c +++++ b/ping6.c ++@@ -66,6 +66,8 @@ char copyright[] = ++ * More statistics could always be gathered. ++ * This program has to run SUID to ROOT to access the ICMP socket. ++ */ +++ +++#define _GNU_SOURCE ++ #include "ping_common.h" ++ ++ #include +diff --git a/package/network/utils/iputils/patches/020-include_fixes.patch b/package/network/utils/iputils/patches/020-include_fixes.patch +new file mode 100644 +index 00000000000..e982dabc378 +--- /dev/null ++++ b/package/network/utils/iputils/patches/020-include_fixes.patch +@@ -0,0 +1,71 @@ ++--- a/ping_common.h +++++ b/ping_common.h ++@@ -2,6 +2,7 @@ ++ #include ++ #include ++ #include +++#include ++ #include ++ #include ++ #include ++@@ -11,7 +12,7 @@ ++ #include ++ #include ++ #include ++-#include +++#include ++ #include ++ #include ++ #include ++@@ -24,6 +25,10 @@ ++ ++ #include "SNAPSHOT.h" ++ +++#ifndef HZ +++#define HZ 100 +++#endif +++ ++ #define DEFDATALEN (64 - 8) /* default data length */ ++ ++ #define MAXWAIT 10 /* max seconds to wait for response */ ++--- a/clockdiff.c +++++ b/clockdiff.c ++@@ -13,8 +13,6 @@ ++ #include ++ #include ++ #include ++-#define TSPTYPES ++-#include ++ #include ++ #include ++ #include ++--- a/tracepath.c +++++ b/tracepath.c ++@@ -13,6 +13,7 @@ ++ #include ++ #include ++ #include +++#include ++ #include ++ #include ++ #include ++--- a/ping.c +++++ b/ping.c ++@@ -661,8 +661,15 @@ int send_probe() ++ ++ do { ++ static struct iovec iov = {outpack, 0}; ++- static struct msghdr m = { &whereto, sizeof(whereto), ++- &iov, 1, &cmsg, 0, 0 }; +++ static struct msghdr m = { +++ .msg_name = &whereto, +++ .msg_namelen = sizeof(whereto), +++ .msg_iov = &iov, +++ .msg_iovlen = 1, +++ .msg_control = &cmsg, +++ .msg_controllen = 0, +++ .msg_flags = 0 +++ }; ++ m.msg_controllen = cmsg_len; ++ iov.iov_len = cc; ++ -- cgit v1.2.3