From 185fa19bbf68a4d4dca534d2b46729207a177f16 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 11 May 2021 19:55:43 +0100 Subject: gentoo resync : 11.05.2021 --- net-misc/iputils/Manifest | 17 +- .../files/iputils-20150815-nonroot-floodping.patch | 11 -- ...rt-partially-fix-sent-vs-received-package.patch | 34 ---- ...-main-loop-over-multiple-addrinfo-results.patch | 86 --------- ...ping-try-next-addrinfo-on-connect-failure.patch | 190 -------------------- .../iputils/files/iputils-20200821-fclose.patch | 45 ----- .../iputils-20200821-getrandom-fallback.patch | 43 ----- .../files/iputils-20200821-install-sbindir.patch | 29 --- net-misc/iputils/iputils-20190709-r1.ebuild | 198 --------------------- net-misc/iputils/iputils-20200821-r2.ebuild | 178 ------------------ net-misc/iputils/iputils-20210202.ebuild | 2 +- net-misc/iputils/metadata.xml | 1 - 12 files changed, 3 insertions(+), 831 deletions(-) delete mode 100644 net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch delete mode 100644 net-misc/iputils/files/iputils-20190709-arping-revert-partially-fix-sent-vs-received-package.patch delete mode 100644 net-misc/iputils/files/iputils-20190709-ping-fix-main-loop-over-multiple-addrinfo-results.patch delete mode 100644 net-misc/iputils/files/iputils-20190709-ping-try-next-addrinfo-on-connect-failure.patch delete mode 100644 net-misc/iputils/files/iputils-20200821-fclose.patch delete mode 100644 net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch delete mode 100644 net-misc/iputils/files/iputils-20200821-install-sbindir.patch delete mode 100644 net-misc/iputils/iputils-20190709-r1.ebuild delete mode 100644 net-misc/iputils/iputils-20200821-r2.ebuild (limited to 'net-misc/iputils') diff --git a/net-misc/iputils/Manifest b/net-misc/iputils/Manifest index e8ad0b9cf6a5..ee07f632c9cd 100644 --- a/net-misc/iputils/Manifest +++ b/net-misc/iputils/Manifest @@ -1,18 +1,5 @@ -AUX iputils-20150815-nonroot-floodping.patch 406 BLAKE2B 18c9adf92bb64ddae4a62aaf280a858e1ade2d34938f29026bc62c6b0b43919c26a909f2997d7caaaa5e9c82f139c8bc2aefc752aceeff6fe5f15f0c7b53618c SHA512 4f63d788d4aeccd66c410b6cc3352934a9b7d9b1222dedbcd7688c2b884b620a308b44e2dc777421cef20365a6ae371d59ad349f76bc5fcc751f90169a8f0d34 -AUX iputils-20190709-arping-revert-partially-fix-sent-vs-received-package.patch 1134 BLAKE2B cb6a700f3b0681e6abf5bfcfed3b5b4736aeba481e1b5334193cc32dab8e21134ed729d1b6b098495e46f59416f9d2c29f186b87143adcb2824f08058c7792ce SHA512 4e8bd9d4ae752dcdcb169eec1c42bc16d3f89cd1579140db74c3883da54145faea875513aca4bf8241208253b8950590fd615fe2ea7e448d431d509ff2e8dc03 -AUX iputils-20190709-ping-fix-main-loop-over-multiple-addrinfo-results.patch 2852 BLAKE2B a9375c41ba6dde249ec2a0a287eef68228198c7132dd145550c55a6f42b29d2e53160ef9a99455e0f60e2bb738f1a2dbeff016f2ce6903ead58c75bdcafeb618 SHA512 e9f322620ce2e10830c7127fdb64e68ea7bad59620e8b1ffd10ec9ee9f49f74500f0efe25de62feb0e1dd3cbd37af744263b53deeae8d78d44a6b9d335686afc -AUX iputils-20190709-ping-try-next-addrinfo-on-connect-failure.patch 7935 BLAKE2B 550fc998feb6accae244baf8334d522ffcd6c464756f465c17298bef5338c8e746345026b72c95ff86aa14ef85223ca8cad4e00040f66b4e7aab3526296fc411 SHA512 1da0f189d47cb0b31cea5d1ea8081fbb2be0e55fb5b206cb366dce467bf0e557a2b77b2c8007993bdc91006a5f290269ae70e5d7e50f7fa5bdde93b0079d4e07 -AUX iputils-20200821-fclose.patch 1764 BLAKE2B d74fa527970ede1c52f5a361debe06f46d81821356008429165d7ccd4952e61610b567d9c7008b8ba0d6cf909af8bcc5026dc4b724e441486ff15307f32659f7 SHA512 b17db5137e4ebd1a32d2e051152f6f726b2c6350356ba57262f68a57765f8129a4af27c78620b46ed927217e543937b8f4ba0969ae64aeaa6e67d07c361341fe -AUX iputils-20200821-getrandom-fallback.patch 1056 BLAKE2B 27cf7f9711f877bc55238cccc8714b17bf6e731d0e070e87ed915cf7d18f18019c768d2cea58048795772003408bbcc65c0a12f2fa3ca099b16d84e2ac558b7e SHA512 b1366b67dbee58744ac03dfda3d3daee4f86fada8cb5e44a9ed84ae669cfd2735aee6b21b80d7835e07ec5c42524f359601f6b09b0ac38dd93a18c319db98fe7 -AUX iputils-20200821-install-sbindir.patch 894 BLAKE2B 5947e4d94b802b23ba6160f47bf51208ebf5e056961fe8dee37c67a21dad3e485ebfaca0937089b65514f3c9ac14d0c161c200cdaa17f820e381679eef278214 SHA512 0cf552b0b2770aa061d8edf7a0b1a24ef58c8d1ded4d266224e56644281c9f19c724ee722eb7f35eac9c4a4e493089558a4d961686308a7ded3f776d2fca9553 -DIST iputils-20190709.tar.gz 404101 BLAKE2B 38e66366cc13a77b7da1a85afe7245891c6c7069c218bc8d5d0dd3664d07a5c4004aa6fc56c192b90bfacf2e5e103997cd671a236aa0a9932a5818eca1e10744 SHA512 5db18ac49fa46ed810da4d508e78f4baf2d5c07e7f923eb49d005ad8745743d8861e5788b34a7e37fb7261cee7ddfb768b737eee9d200502ea53537142cac6b5 -DIST iputils-20200821.tar.gz 504852 BLAKE2B 3ce31554937e28ca3edd204b4b4ba2d11a5eab4ed0d9257cc1f0df38e3ac4d9093f786f308c96c35e1b4909be5de51a0bfb25d890269d9bd7bdd3ea5f612c299 SHA512 4a57c3637cdd9aab2600682774e27370716cbdf1c7ac8ae61bf86c21c08701a5b697792df4aa95309b196eaa74f3cb6b2836a40f04da0e602156e982ac99d8c9 DIST iputils-20210202.tar.gz 513055 BLAKE2B 37f3c10ff3918d40fe2eae1e4b19ed711b97c30cd2d682e42f484a11a28ab7c93975a51fbb7a8b1c1d725fc9051ae773bc2e81b9d80a2dd0e6ff55867d54875d SHA512 af600fe74e1b78c0da66c378f55eb468d62206aaae1864693f7ec79833c9c0de95843573d1792627695f08ecfcdb4e79c354065daf178d393fcc6ef9a8a5d526 -DIST iputils-manpages-20190709.tar.xz 27588 BLAKE2B 9780a96dfde077625a7a499182511066ede63ca364d2de729403354af7cea6b25629da1408ee2081f9da1b21756ee956d04642ea36d05ee02ef7ef05b66c1ad5 SHA512 4de796666426574bd134f4c4ea4d560d8e3eae8bd8ac19b89793fe252a1ef9eebd1833cafb72a2987118f3061eaf00da8a2468e8bced1568611f9391a1203066 -DIST iputils-manpages-20200821.tar.xz 19200 BLAKE2B 7d139ccac181eb3d74e3dcd2ba28cb906a0002aa4922de3e37771e2063234fa12428fa44bab3b50e43c40576a66d585a7460cf550afbeacd665fc41a3333d11a SHA512 0dd385565c9a15dfce668d637e055004a347056ee56260a4e726e7aa5ba5a6374aea8e9fc848dfe36b7609e5d92cb8c21f3e88f2d63e7cfe299489e41a17dc33 DIST iputils-manpages-20210202.tar.xz 19204 BLAKE2B b9d43962890ae5fe9e4c21fb23c8911c22cbfb35a28521a2f0611d7813e4c21979f6b309569cdb57dd9b3a30653278982194ca08a815cfb41566a379930d124b SHA512 d5cced9a5e4acffbe35d20a796d038336d06f512c3ee47bc6e37782b4645d5c35b16e18aaae298547b60fe644e5608efe7847f2de6175bfcd39128d230ee4cd1 -EBUILD iputils-20190709-r1.ebuild 4900 BLAKE2B 29526dcceb55264321dda568e9852b6577aafe8c63c2a032dbef5d1770d0386ea3e282640f8d705701635aed681b50280dcae1d34e2ca7e6a0a83c27cd60b407 SHA512 6845469476c465dcf90505bde7c2e7a3d7be1fd2f02a2b5132e7e078fd6c14c842b938db246124a54ae8d8a82271b8f76978259e63889640a5840a787c500566 -EBUILD iputils-20200821-r2.ebuild 4403 BLAKE2B 1097736275825e4d919f656a5200d1e0e90865bb6569b15de343e67824b1696656681f83b3ab9a391ba1c98d7e3c7bdd16b35b30ddf401524f54a30963e60297 SHA512 a4fb9591459e620722662cb37fd143033285784f34b7584c2460d35ee1df4d5866ef7f25ead65eeed405c30511f4f7cdb50f1a8ba9af0ace3606dffddfc16ba1 -EBUILD iputils-20210202.ebuild 4195 BLAKE2B b9adbcf552e07ac65cb786882cb48babcfb37a31903a1a65ac2c4fb8aae8e75fd5c50960a7d465173388c1d1ec6785dd0178aee904329973cf1725b83990a7cb SHA512 8b1042db8c47a2f1c2f7125e70f0bbd62a046e683ba93ac15e747c456f45d965505dbc44c63d69fb37368a57f7117bbeeaa792ebc370af73930d1f25c846c262 +EBUILD iputils-20210202.ebuild 4187 BLAKE2B dc16aa0c366ba0d73e8b9aa52b6d5811af3c863bf237c17fb1883ce9aa73419f46a0580d6cabce5037cf732c3d27ca354e1694b5b0811466361f0271eb5e1485 SHA512 27713da5471b70f1460df74344137018827ab7e6b6c00749020e6b0497f2744b2a58564c064a56f4b46ff97d011286e69b2299daa7b8f7cc984cb3f917e8137b EBUILD iputils-99999999.ebuild 4195 BLAKE2B b9adbcf552e07ac65cb786882cb48babcfb37a31903a1a65ac2c4fb8aae8e75fd5c50960a7d465173388c1d1ec6785dd0178aee904329973cf1725b83990a7cb SHA512 8b1042db8c47a2f1c2f7125e70f0bbd62a046e683ba93ac15e747c456f45d965505dbc44c63d69fb37368a57f7117bbeeaa792ebc370af73930d1f25c846c262 -MISC metadata.xml 1625 BLAKE2B c29d113e691929f035c7dffbe52e043c1552941565a51021efe401a299aebb5d818ff33a1c99ae086bdc5ecd5a1063db5180b8bd1107dc103e45a8c9450913d2 SHA512 86d64befb808172b14c5e5c53fdc901d51f380045dcc5f42cf770ec03c1722a78677824c2a4823357bdce438edc92cf3d3340436968935c615fa49c4173cc17e +MISC metadata.xml 1509 BLAKE2B 800c6f657d331ad2f73fbd3e6a199732549f89ba31188e8caf5612008b89f60c6a7fb925f2740fcca07d3772f12ea9c5590de834e77201730b848a877061a97a SHA512 5b358f53068f6a49f00141c47f75fde84fe609fd6652e3e717b97b9d36abbfb80ea52c1ef8c2e3a850ab3724f1d4a87093b2bfc1ee5497d082ce1937dc3aa83d diff --git a/net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch b/net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch deleted file mode 100644 index 50e108b09e85..000000000000 --- a/net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- iputils-s20150815/ping.h -+++ iputils-s20150815/ping.h -@@ -61,7 +61,7 @@ - - #define MAXWAIT 10 /* max seconds to wait for response */ - #define MININTERVAL 10 /* Minimal interpacket gap */ --#define MINUSERINTERVAL 200 /* Minimal allowed interval for non-root */ -+#define MINUSERINTERVAL 0 /* Minimal allowed interval for non-root */ - - #define SCHINT(a) (((a) <= MININTERVAL) ? MININTERVAL : (a)) - diff --git a/net-misc/iputils/files/iputils-20190709-arping-revert-partially-fix-sent-vs-received-package.patch b/net-misc/iputils/files/iputils-20190709-arping-revert-partially-fix-sent-vs-received-package.patch deleted file mode 100644 index 715ed45041b5..000000000000 --- a/net-misc/iputils/files/iputils-20190709-arping-revert-partially-fix-sent-vs-received-package.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 18f14be80466ddc8fb17a400be82764a779c8dcd Mon Sep 17 00:00:00 2001 -From: Sami Kerola -Date: Wed, 31 Jul 2019 21:28:12 +0100 -Subject: [PATCH] arping: revert partially - fix sent vs received packages - return value - -Commit 84ca65ca980315c73f929fed8b6f16bbd698c3a0 caused regression. The -arping -D needs return value evaluation that was the earlier default, in -other cases the new return value should be correct. - -Addresses: https://github.com/iputils/iputils/issues/209 -See-also: https://github.com/void-linux/void-packages/issues/13304 -Signed-off-by: Sami Kerola ---- - arping.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/arping.c b/arping.c -index 77c9c56..2c87c15 100644 ---- a/arping.c -+++ b/arping.c -@@ -792,7 +792,11 @@ static int event_loop(struct run_state *ctl) - close(tfd); - freeifaddrs(ctl->ifa0); - rc |= finish(ctl); -- rc |= (ctl->sent != ctl->received); -+ if (ctl->dad && ctl->quit_on_reply) -+ /* Duplicate address detection mode return value */ -+ rc |= !(ctl->brd_sent != ctl->received); -+ else -+ rc |= (ctl->sent != ctl->received); - return rc; - } - diff --git a/net-misc/iputils/files/iputils-20190709-ping-fix-main-loop-over-multiple-addrinfo-results.patch b/net-misc/iputils/files/iputils-20190709-ping-fix-main-loop-over-multiple-addrinfo-results.patch deleted file mode 100644 index 9814707d7239..000000000000 --- a/net-misc/iputils/files/iputils-20190709-ping-fix-main-loop-over-multiple-addrinfo-results.patch +++ /dev/null @@ -1,86 +0,0 @@ -From: Benjamin Poirier -Date: Thu, 26 Dec 2019 10:44:03 +0900 -Subject: ping: fix main loop over multiple addrinfo results - -Despite what the log of commit f68eec0eafad ("ping: perform dual-stack ping -by default") says, main() was not designed to loop over multiple addresses -returned by getaddrinfo(). This is apparent because until commit -db11bc96a68c ("ping: make command to return from main()"), ping{4,6}_run() -never returned (they always exited). After commit db11bc96a68c, we -encounter unexpected situations if getaddrinfo returns multiple results and -ping{4,6}_run() return != 0. - -For example (notice echo reply is not received): - - root@vsid:/src/iputils# ./builddir/ping/ping -w1 google.com - PING google.com(nrt12s22-in-x0e.1e100.net (2404:6800:4004:80c::200e)) 56 data bytes - - --- google.com ping statistics --- - 1 packets transmitted, 0 received, 100% packet loss, time 0ms - - PING (216.58.197.142) 56(84) bytes of data. - - --- ping statistics --- - 1 packets transmitted, 0 received, 100% packet loss, time -1002ms - - root@vsid:/src/iputils# - -Establish the following convention: - -* return value >= 0 -> exit with this code (same behavior as before commit - db11bc96a68c) - -* return value < 0 -> go on to next addrinfo result - -The second case will be used in the following patch. - -Fixes: db11bc96a68c ("ping: make command to return from main()") -Signed-off-by: Benjamin Poirier -Origin: https://github.com/iputils/iputils/commit/c249e48bb865e731896b7d8ceaf4bca7d28768b6 -Bug-Debian: https://bugs.debian.org/947921 -See-also: https://github.com/iputils/iputils/pull/244 ---- - ping.c | 6 +++++- - ping6_common.c | 1 + - 2 files changed, 6 insertions(+), 1 deletion(-) - -diff --git a/ping.c b/ping.c -index 34653be..ae687b4 100644 ---- a/ping.c -+++ b/ping.c -@@ -495,8 +495,11 @@ main(int argc, char **argv) - error(2, 0, _("unknown protocol family: %d"), ai->ai_family); - } - -- if (ret_val == 0) -+ if (ret_val >= 0) - break; -+ /* ret_val < 0 means to go on to next addrinfo result, there -+ * better be one. */ -+ assert(ai->ai_next); - } - - freeaddrinfo(result); -@@ -504,6 +507,7 @@ main(int argc, char **argv) - return ret_val; - } - -+/* return >= 0: exit with this code, < 0: go on to next addrinfo result */ - int ping4_run(int argc, char **argv, struct addrinfo *ai, socket_st *sock) - { - static const struct addrinfo hints = { -diff --git a/ping6_common.c b/ping6_common.c -index 6cc5404..731dc6d 100644 ---- a/ping6_common.c -+++ b/ping6_common.c -@@ -551,6 +551,7 @@ int niquery_option_handler(const char *opt_arg) - return ret; - } - -+/* return >= 0: exit with this code, < 0: go on to next addrinfo result */ - int ping6_run(int argc, char **argv, struct addrinfo *ai, struct socket_st *sock) - { - static const struct addrinfo hints = { --- -2.25.0.rc2 - diff --git a/net-misc/iputils/files/iputils-20190709-ping-try-next-addrinfo-on-connect-failure.patch b/net-misc/iputils/files/iputils-20190709-ping-try-next-addrinfo-on-connect-failure.patch deleted file mode 100644 index a308fb7c9f63..000000000000 --- a/net-misc/iputils/files/iputils-20190709-ping-try-next-addrinfo-on-connect-failure.patch +++ /dev/null @@ -1,190 +0,0 @@ -From: Benjamin Poirier -Date: Wed, 25 Dec 2019 13:33:12 +0900 -Subject: ping: try next addrinfo on connect failure - -On hosts that have routing rules matching on the outgoing interface [1], -getaddrinfo() may return results sorted in a suboptimal order because it is -not aware of the network interface passed to ping via the "-I" option. In -particular, address reachability detection may fail and getaddrinfo() will -return ipv6 results first, even though the only routes available are ipv4. - -Improve user experience by trying next addrinfo entry if we encounter a -failure at connect() time because of missing or unreachable routes. - -[1] For example, on switches running Cumulus Linux, the default VRF is used -for front ports and a "mgmt" VRF is used for the management interface, which -also handles all DNS traffic. (VRFs apply different routing rules based on -the iif/oif, ie. influenced by SO_BINDTODEVICE.) In the default vrf, it's -possible to ping an ipv4 address via the mgmt vrf by specifying "-I mgmt". -However, that will fail if the target host is specified by name, has a AAAA -record and there is no ipv6 route to it. - -Since libc commit 5ddb5bf5fb, getaddrinfo() does a udp connect to result -addresses to check if there is a route to them. This is to implement -RFC3484 ยง6 Rule 1 ("Avoid unusable destinations") which is part of the -algorithm to order results. getaddrinfo() is unaware of ping's "-I" option -and tries to connect its socket via the default vrf, which has no ipv6 route -to the target host (and, in fact, no ipv4 route either). Following this -failure, getaddrinfo() returns results ordered according to -/etc/gai.conf (Rule 6) - by default, ipv6 first. - -ping tries only the first entry returned by getaddrinfo() and fails to -connect to it because there is no ipv6 route to the host, even in the mgmt -vrf. However, if getaddrinfo() had ordered the ipv4 result first or ping -had tried the next addrinfo entry (the ipv4 one), ping could connect a udp -socket to it and later successfully exchange icmp messages with it. - -Example: - - cumulus@act-5812-10:~$ ip vrf list - Name Table - ----------------------- - mgmt 1001 - cumulus@act-5812-10:~$ ip vrf identify - cumulus@act-5812-10:~$ # --> default vrf - cumulus@act-5812-10:~$ - cumulus@act-5812-10:~$ ip rule - 99: from all to 10.230.0.53 ipproto udp dport 53 lookup mgmt - 99: from all to 10.20.249.1 ipproto udp dport 53 lookup mgmt - 1000: from all lookup [l3mdev-table] - 32765: from all lookup local - 32766: from all lookup main - 32767: from all lookup default - - cumulus@act-5812-10:~$ ip route - - cumulus@act-5812-10:~$ ip -6 route - ::1 dev lo proto kernel metric 256 pref medium - - cumulus@act-5812-10:~$ ip route show vrf mgmt - default via 10.230.130.1 dev eth0 - unreachable default metric 4278198272 - 10.230.130.0/24 dev eth0 proto kernel scope link src 10.230.130.211 - 127.0.0.0/8 dev mgmt proto kernel scope link src 127.0.0.1 - - cumulus@act-5812-10:~$ ip -6 route show vrf mgmt - ::1 dev mgmt proto kernel metric 256 pref medium - anycast fe80:: dev eth0 proto kernel metric 0 pref medium - fe80::/64 dev eth0 proto kernel metric 256 pref medium - ff00::/8 dev eth0 metric 256 pref medium - unreachable default dev lo metric 4278198272 pref medium - - cumulus@act-5812-10:~$ host google.com - google.com has address 172.217.0.46 - google.com has IPv6 address 2607:f8b0:4005:802::200e - google.com mail is handled by 30 alt2.aspmx.l.google.com. - google.com mail is handled by 40 alt3.aspmx.l.google.com. - google.com mail is handled by 20 alt1.aspmx.l.google.com. - google.com mail is handled by 10 aspmx.l.google.com. - google.com mail is handled by 50 alt4.aspmx.l.google.com. - -Success with numeric address - - cumulus@act-5812-10:~$ ping -n -c1 -I mgmt 172.217.0.46 - ping: Warning: source address might be selected on device other than mgmt. - PING 172.217.0.46 (172.217.0.46) from 10.230.130.211 mgmt: 56(84) bytes of data. - 64 bytes from 172.217.0.46: icmp_seq=1 ttl=51 time=4.68 ms - - --- 172.217.0.46 ping statistics --- - 1 packets transmitted, 1 received, 0% packet loss, time 0ms - rtt min/avg/max/mdev = 4.675/4.675/4.675/0.000 ms - -Failure with host by name - - cumulus@act-5812-10:~$ ping -n -c1 -I mgmt google.com - connect: No route to host - -Success when running in the mgmt vrf because getaddrinfo()'s address -reachability test is effective and ipv4 result(s) are ordered first. - - cumulus@act-5812-10:~$ ip vrf exec mgmt ping -n -c1 google.com - PING google.com (172.217.0.46) 56(84) bytes of data. - 64 bytes from 172.217.0.46: icmp_seq=1 ttl=51 time=4.65 ms - - --- google.com ping statistics --- - 1 packets transmitted, 1 received, 0% packet loss, time 0ms - rtt min/avg/max/mdev = 4.650/4.650/4.650/0.000 ms - -For demonstration purposes, the following configuration allows one to -reproduce a similar problem. Starting from a host with a vanilla -configuration, default ipv4 route using eth0, no ipv6 global routes: - - root@vsid:~# ip route - default via 192.168.15.1 dev eth0 - 192.168.15.0/24 dev eth0 proto kernel scope link src 192.168.15.100 - - root@vsid:~# ip -6 route - ::1 dev lo proto kernel metric 256 pref medium - fe80::/64 dev eth0 proto kernel metric 256 pref medium - - root@vsid:~# ip rou flush table main - - root@vsid:~# ip rou add table 1 192.168.15.0/24 dev eth0 - - root@vsid:~# ip rou add table 1 default via 192.168.15.1 - - root@vsid:~# ip rule - 0: from all lookup local - 32766: from all lookup main - 32767: from all lookup default - root@vsid:~# ip rule add pref 1 to 192.168.15.1 ipproto udp dport 53 lookup 1 - root@vsid:~# ip rule add pref 2 oif eth0 lookup 1 - root@vsid:~# ping -c1 -I eth0 google.com - - ping: connect: Network is unreachable - -With the current patch - - root@vsid:~# /src/iputils/builddir/ping/ping -c1 -I eth0 google.com - PING (172.217.174.110) from 192.168.15.100 eth0: 56(84) bytes of data. - 64 bytes from nrt12s28-in-f14.1e100.net (172.217.174.110): icmp_seq=1 ttl=53 time=11.3 ms - - --- ping statistics --- - 1 packets transmitted, 1 received, 0% packet loss, time 0ms - rtt min/avg/max/mdev = 11.313/11.313/11.313/0.000 ms - -Signed-off-by: Benjamin Poirier -Origin: https://github.com/iputils/iputils/commit/2705c8248281fbb8efaa5326ab1d0ed0a670bd3d -Bug-Debian: https://bugs.debian.org/947921 -See-also: https://github.com/iputils/iputils/pull/244 ---- - ping.c | 3 +++ - ping6_common.c | 7 ++++++- - 2 files changed, 9 insertions(+), 1 deletion(-) - -diff --git a/ping.c b/ping.c -index 34653be..013c4e6 100644 ---- a/ping.c -+++ b/ping.c -@@ -628,6 +628,9 @@ int ping4_run(int argc, char **argv, struct addrinfo *ai, socket_st *sock) - error(2, errno, _("cannot set broadcasting")); - if (connect(probe_fd, (struct sockaddr *)&dst, sizeof(dst)) == -1) - error(2, errno, "connect"); -+ } else if ((errno == EHOSTUNREACH || errno == ENETUNREACH) && ai->ai_next) { -+ close(probe_fd); -+ return -1; - } else - error(2, errno, "connect"); - } -diff --git a/ping6_common.c b/ping6_common.c -index 6cc5404..bc1030b 100644 ---- a/ping6_common.c -+++ b/ping6_common.c -@@ -651,8 +651,13 @@ int ping6_run(int argc, char **argv, struct addrinfo *ai, struct socket_st *sock - firsthop.sin6_family = AF_INET6; - - firsthop.sin6_port = htons(1025); -- if (connect(probe_fd, (struct sockaddr *)&firsthop, sizeof(firsthop)) == -1) -+ if (connect(probe_fd, (struct sockaddr *)&firsthop, sizeof(firsthop)) == -1) { -+ if ((errno == EHOSTUNREACH || errno == ENETUNREACH) && ai->ai_next) { -+ close(probe_fd); -+ return -1; -+ } - error(2, errno, "connect"); -+ } - alen = sizeof source6; - if (getsockname(probe_fd, (struct sockaddr *)&source6, &alen) == -1) - error(2, errno, "getsockname"); --- -2.25.0.rc2 - diff --git a/net-misc/iputils/files/iputils-20200821-fclose.patch b/net-misc/iputils/files/iputils-20200821-fclose.patch deleted file mode 100644 index cc370f0a5561..000000000000 --- a/net-misc/iputils/files/iputils-20200821-fclose.patch +++ /dev/null @@ -1,45 +0,0 @@ -From e1c3d09b412ad0d022178344b8cbf748dc60f17f Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Sun, 24 Jan 2021 23:29:27 -0500 -Subject: [PATCH] tftpd: recvfile: avoid closing the file twice - -The close_stream function calls fclose, so don't call it again. - -This resolves an abort in glibc: - - Message: Process 1038079 (tftpd) of user 65534 dumped core. - - Stack trace of thread 1038079: - #0 0x00007f5f650ed204 raise (libc.so.6 + 0x39204) - #1 0x00007f5f650d6547 abort (libc.so.6 + 0x22547) - #2 0x00007f5f6512f25f n/a (libc.so.6 + 0x7b25f) - #3 0x00007f5f651372fa n/a (libc.so.6 + 0x832fa) - #4 0x00007f5f65138dc2 n/a (libc.so.6 + 0x84dc2) - #5 0x00007f5f65124b2f fclose (libc.so.6 + 0x70b2f) - #6 0x000055571a50de73 recvfile (tftpd + 0x2e73) - #7 0x000055571a50e064 tftp (tftpd + 0x3064) - #8 0x000055571a50e387 tftpd_inetd (tftpd + 0x3387) - #9 0x000055571a50e50f main (tftpd + 0x350f) - #10 0x00007f5f650d7e6d __libc_start_main (libc.so.6 + 0x23e6d) - #11 0x000055571a50d3ca _start (tftpd + 0x23ca) - -Fixes: 5d6be65 ("tftpd: remove global variables by using a run state struct") - -Reviewed-by: Petr Vorel -Signed-off-by: Mike Gilbert ---- - tftpd/tftpd.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/tftpd/tftpd.c b/tftpd/tftpd.c -index 42998f9b..a09d32ba 100644 ---- a/tftpd/tftpd.c -+++ b/tftpd/tftpd.c -@@ -387,7 +387,6 @@ void recvfile(struct run_state *ctl, struct formats *pf) - write_behind(ctl->file, pf->f_convert); - if (close_stream(ctl->file)) - syslog(LOG_ERR, "tftpd: write error: %s\n", strerror(errno)); -- fclose(ctl->file); /* close data file */ - - ap->th_opcode = htons((uint16_t)ACK); /* send the "final" ack */ - ap->th_block = htons(block); diff --git a/net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch b/net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch deleted file mode 100644 index 5b69e5c88fb7..000000000000 --- a/net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 469b41ac89b9f6772ea31df8379669d205be95f8 Mon Sep 17 00:00:00 2001 -From: Nuno Silva -Date: Mon, 24 Aug 2020 19:34:53 +0100 -Subject: [PATCH] common: fix infinite loop when getrandom fails - -Fixes: https://github.com/iputils/iputils/issues/291 ---- - iputils_common.c | 14 ++++++++++---- - 1 file changed, 10 insertions(+), 4 deletions(-) - -diff --git a/iputils_common.c b/iputils_common.c -index 58eacd0..c41f201 100644 ---- a/iputils_common.c -+++ b/iputils_common.c -@@ -98,18 +98,24 @@ static unsigned int iputil_srand_fallback(void) - void iputils_srand(void) - { - unsigned int i; -+ - #if HAVE_GETRANDOM - ssize_t ret; - -- while ((ret = getrandom(&i, sizeof(i), GRND_NONBLOCK)) != sizeof(i)) { -- switch(errno) { -+ do { -+ errno = 0; -+ ret = getrandom(&i, sizeof(i), GRND_NONBLOCK); -+ switch (errno) { -+ case 0: -+ break; - case EINTR: - continue; - default: - i = iputil_srand_fallback(); -- break; -+ goto done; - } -- } -+ } while (ret != sizeof(i)); -+ done: - #else - i = iputil_srand_fallback(); - #endif diff --git a/net-misc/iputils/files/iputils-20200821-install-sbindir.patch b/net-misc/iputils/files/iputils-20200821-install-sbindir.patch deleted file mode 100644 index cb1575841ccd..000000000000 --- a/net-misc/iputils/files/iputils-20200821-install-sbindir.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 8d1420f3019cd1caccf2ffa15a5873f0c61ab529 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert -Date: Sun, 24 Jan 2021 22:39:03 -0500 -Subject: [PATCH] tftpd: install into sbindir - -The xinet.d config expects the daemon to live in sbindir. - -Closes: https://github.com/iputils/iputils/pull/310 - -Reviewed-by: Petr Vorel -Signed-off-by: Mike Gilbert ---- - tftpd/meson.build | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/tftpd/meson.build b/tftpd/meson.build -index 6e508a24..b4cf6812 100644 ---- a/tftpd/meson.build -+++ b/tftpd/meson.build -@@ -3,7 +3,8 @@ inc = include_directories('..') - executable('tftpd', ['tftpd.c', 'tftpsubs.c', git_version_h], - include_directories : inc, - link_with : [libcommon], -- install: true) -+ install: true, -+ install_dir: sbindir) - - subs = configuration_data() - subs.set('sbindir', sbindir) diff --git a/net-misc/iputils/iputils-20190709-r1.ebuild b/net-misc/iputils/iputils-20190709-r1.ebuild deleted file mode 100644 index 8c5d1387e1a0..000000000000 --- a/net-misc/iputils/iputils-20190709-r1.ebuild +++ /dev/null @@ -1,198 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# For released versions, we precompile the man/html pages and store -# them in a tarball on our mirrors. This avoids ugly issues while -# building stages, and reduces dependencies. -# To regenerate man/html pages emerge iputils-99999999[doc] with -# EGIT_COMMIT set to release tag and tar ${S}/doc folder. - -EAPI="7" - -PLOCALES="ja" - -inherit fcaps flag-o-matic l10n meson systemd toolchain-funcs - -if [[ ${PV} == "99999999" ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/archive/s${PV}.tar.gz -> ${P}.tar.gz - https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -LICENSE="BSD GPL-2+ rdisc" -SLOT="0" -IUSE="+arping caps clockdiff doc gcrypt idn ipv6 nettle nls rarpd rdisc SECURITY_HAZARD ssl static tftpd tracepath traceroute6" - -BDEPEND="virtual/pkgconfig" - -LIB_DEPEND=" - caps? ( sys-libs/libcap[static-libs(+)] ) - idn? ( net-dns/libidn2:=[static-libs(+)] ) - ipv6? ( - ssl? ( - gcrypt? ( dev-libs/libgcrypt:0=[static-libs(+)] ) - !gcrypt? ( - nettle? ( dev-libs/nettle[static-libs(+)] ) - !nettle? ( dev-libs/openssl:0=[static-libs(+)] ) - ) - ) - ) - nls? ( sys-devel/gettext[static-libs(+)] ) -" - -RDEPEND=" - traceroute6? ( !net-analyzer/traceroute ) - !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) -" - -DEPEND=" - ${RDEPEND} - virtual/os-headers - static? ( ${LIB_DEPEND} ) -" - -if [[ ${PV} == "99999999" ]] ; then - DEPEND+=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt:0 - " -fi - -[ "${PV}" == "99999999" ] || S="${WORKDIR}/${PN}-s${PV}" - -PATCHES=( - "${FILESDIR}"/${P}-arping-revert-partially-fix-sent-vs-received-package.patch - "${FILESDIR}"/${P}-ping-try-next-addrinfo-on-connect-failure.patch - "${FILESDIR}"/${P}-ping-fix-main-loop-over-multiple-addrinfo-results.patch -) - -src_prepare() { - use SECURITY_HAZARD && PATCHES+=( "${FILESDIR}"/${PN}-20150815-nonroot-floodping.patch ) - - default - - l10n_get_locales > po/LINGUAS || die -} - -src_configure() { - use static && append-ldflags -static - - local emesonargs=( - -DUSE_CAP="$(usex caps true false)" - -DUSE_IDN="$(usex idn true false)" - -DBUILD_ARPING="$(usex arping true false)" - -DBUILD_CLOCKDIFF="$(usex clockdiff true false)" - -DBUILD_PING="true" - -DBUILD_RARPD="$(usex rarpd true false)" - -DBUILD_RDISC="$(usex rdisc true false)" - -DENABLE_RDISC_SERVER="$(usex rdisc true false)" - -DBUILD_TFTPD="$(usex tftpd true false)" - -DBUILD_TRACEPATH="$(usex tracepath true false)" - -DBUILD_TRACEROUTE6="$(usex ipv6 $(usex traceroute6 true false) false)" - -DBUILD_NINFOD="false" - -DNINFOD_MESSAGES="false" - -DNO_SETCAP_OR_SUID="true" - -Dsystemdunitdir="$(systemd_get_systemunitdir)" - -DUSE_GETTEXT="$(usex nls true false)" - ) - - if use ipv6 && use ssl ; then - emesonargs+=( - -DUSE_CRYPTO="$(usex gcrypt gcrypt $(usex nettle nettle openssl))" - ) - else - emesonargs+=( - -DUSE_CRYPTO="none" - ) - fi - - if [[ "${PV}" == 99999999 ]] ; then - emesonargs+=( - -DBUILD_HTML_MANS="$(usex doc true false)" - -DBUILD_MANS="true" - ) - else - emesonargs+=( - -DBUILD_HTML_MANS="false" - -DBUILD_MANS="false" - ) - fi - - meson_src_configure -} - -src_compile() { - tc-export CC - meson_src_compile -} - -src_install() { - meson_src_install - - dodir /bin - local my_bin - for my_bin in $(usex arping arping '') ping ; do - mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die - done - dosym ping /bin/ping4 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - fi - - if use ipv6 ; then - dosym ping /bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - fi - - if [[ "${PV}" != 99999999 ]] ; then - local -a man_pages - local -a html_man_pages - - while IFS= read -r -u 3 -d $'\0' my_bin - do - my_bin=$(basename "${my_bin}") - [[ -z "${my_bin}" ]] && continue - - if [[ -f "${S}/doc/${my_bin}.8" ]] ; then - man_pages+=( ${my_bin}.8 ) - fi - - if [[ -f "${S}/doc/${my_bin}.html" ]] ; then - html_man_pages+=( ${my_bin}.html ) - fi - done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null) - - pushd doc &>/dev/null || die - doman "${man_pages[@]}" - if use doc ; then - docinto html - dodoc "${html_man_pages[@]}" - fi - popd &>/dev/null || die - else - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi - fi -} - -pkg_postinst() { - fcaps cap_net_raw \ - bin/ping \ - $(usex arping 'bin/arping' '') \ - $(usex clockdiff 'usr/bin/clockdiff' '') -} diff --git a/net-misc/iputils/iputils-20200821-r2.ebuild b/net-misc/iputils/iputils-20200821-r2.ebuild deleted file mode 100644 index 55b1e38f169b..000000000000 --- a/net-misc/iputils/iputils-20200821-r2.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# For released versions, we precompile the man/html pages and store -# them in a tarball on our mirrors. This avoids ugly issues while -# building stages, and reduces dependencies. -# To regenerate man/html pages emerge iputils-99999999[doc] with -# EGIT_COMMIT set to release tag, all USE flags enabled and -# tar ${S}/doc folder. - -EAPI="7" - -PLOCALES="de fr ja pt_BR tr uk zh_CN" - -inherit fcaps flag-o-matic l10n meson systemd toolchain-funcs - -if [[ ${PV} == "99999999" ]] ; then - EGIT_REPO_URI="https://github.com/iputils/iputils.git" - inherit git-r3 -else - SRC_URI="https://github.com/iputils/iputils/archive/s${PV}.tar.gz -> ${P}.tar.gz - https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz" - KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -fi - -DESCRIPTION="Network monitoring tools including ping and ping6" -HOMEPAGE="https://wiki.linuxfoundation.org/networking/iputils" - -LICENSE="BSD GPL-2+ rdisc" -SLOT="0" -IUSE="+arping caps clockdiff doc gcrypt idn ipv6 nettle nls rarpd rdisc ssl static tftpd tracepath traceroute6" - -BDEPEND="virtual/pkgconfig" - -LIB_DEPEND=" - caps? ( sys-libs/libcap[static-libs(+)] ) - idn? ( net-dns/libidn2:=[static-libs(+)] ) - nls? ( sys-devel/gettext[static-libs(+)] ) -" - -RDEPEND=" - traceroute6? ( !net-analyzer/traceroute ) - !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) -" - -DEPEND=" - ${RDEPEND} - virtual/os-headers - static? ( ${LIB_DEPEND} ) -" - -if [[ ${PV} == "99999999" ]] ; then - DEPEND+=" - app-text/docbook-xml-dtd:4.2 - app-text/docbook-xml-dtd:4.5 - app-text/docbook-xsl-ns-stylesheets - app-text/docbook-xsl-stylesheets - dev-libs/libxslt:0 - " -fi - -[ "${PV}" == "99999999" ] || S="${WORKDIR}/${PN}-s${PV}" - -PATCHES=( - "${FILESDIR}/iputils-20200821-getrandom-fallback.patch" - "${FILESDIR}/iputils-20200821-fclose.patch" - "${FILESDIR}/iputils-20200821-install-sbindir.patch" -) - -src_prepare() { - default - - l10n_get_locales > po/LINGUAS || die -} - -src_configure() { - use static && append-ldflags -static - - local emesonargs=( - -DUSE_CAP="$(usex caps true false)" - -DUSE_IDN="$(usex idn true false)" - -DBUILD_ARPING="$(usex arping true false)" - -DBUILD_CLOCKDIFF="$(usex clockdiff true false)" - -DBUILD_PING="true" - -DBUILD_RARPD="$(usex rarpd true false)" - -DBUILD_RDISC="$(usex rdisc true false)" - -DENABLE_RDISC_SERVER="$(usex rdisc true false)" - -DBUILD_TFTPD="$(usex tftpd true false)" - -DBUILD_TRACEPATH="$(usex tracepath true false)" - -DBUILD_TRACEROUTE6="$(usex ipv6 $(usex traceroute6 true false) false)" - -DBUILD_NINFOD="false" - -DNINFOD_MESSAGES="false" - -DNO_SETCAP_OR_SUID="true" - -Dsystemdunitdir="$(systemd_get_systemunitdir)" - -DUSE_GETTEXT="$(usex nls true false)" - ) - - if [[ "${PV}" == 99999999 ]] ; then - emesonargs+=( - -DBUILD_HTML_MANS="$(usex doc true false)" - -DBUILD_MANS="true" - ) - else - emesonargs+=( - -DBUILD_HTML_MANS="false" - -DBUILD_MANS="false" - ) - fi - - meson_src_configure -} - -src_compile() { - tc-export CC - meson_src_compile -} - -src_install() { - meson_src_install - - dodir /bin - local my_bin - for my_bin in $(usex arping arping '') ping ; do - mv "${ED}"/usr/bin/${my_bin} "${ED}"/bin/ || die - done - dosym ping /bin/ping4 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath4 - fi - - if use ipv6 ; then - dosym ping /bin/ping6 - - if use tracepath ; then - dosym tracepath /usr/bin/tracepath6 - dosym tracepath.8 /usr/share/man/man8/tracepath6.8 - fi - fi - - if [[ "${PV}" != 99999999 ]] ; then - local -a man_pages - local -a html_man_pages - - while IFS= read -r -u 3 -d $'\0' my_bin - do - my_bin=$(basename "${my_bin}") - [[ -z "${my_bin}" ]] && continue - - if [[ -f "${S}/doc/${my_bin}.8" ]] ; then - man_pages+=( ${my_bin}.8 ) - fi - - if [[ -f "${S}/doc/${my_bin}.html" ]] ; then - html_man_pages+=( ${my_bin}.html ) - fi - done 3< <(find "${ED}"/{bin,usr/bin,usr/sbin} -type f -perm -a+x -print0 2>/dev/null) - - pushd doc &>/dev/null || die - doman "${man_pages[@]}" - if use doc ; then - docinto html - dodoc "${html_man_pages[@]}" - fi - popd &>/dev/null || die - else - if use doc ; then - mv "${ED}"/usr/share/${PN} "${ED}"/usr/share/doc/${PF}/html || die - fi - fi -} - -pkg_postinst() { - fcaps cap_net_raw \ - bin/ping \ - $(usex arping 'bin/arping' '') \ - $(usex clockdiff 'usr/bin/clockdiff' '') -} diff --git a/net-misc/iputils/iputils-20210202.ebuild b/net-misc/iputils/iputils-20210202.ebuild index 82b60db38922..c60375ef537e 100644 --- a/net-misc/iputils/iputils-20210202.ebuild +++ b/net-misc/iputils/iputils-20210202.ebuild @@ -20,7 +20,7 @@ if [[ ${PV} == "99999999" ]] ; then else SRC_URI="https://github.com/iputils/iputils/archive/${PV}.tar.gz -> ${P}.tar.gz https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" fi DESCRIPTION="Network monitoring tools including ping and ping6" diff --git a/net-misc/iputils/metadata.xml b/net-misc/iputils/metadata.xml index 6d135dfdb422..11c6f638649b 100644 --- a/net-misc/iputils/metadata.xml +++ b/net-misc/iputils/metadata.xml @@ -15,7 +15,6 @@ Build and install tftpd -- server for the Trivial File Transfer Protocol (see also net-ftp/tftp-hpa) Build and install tracepath -- tool for tracing network paths for discovering MTU values Build and install deprecated traceroute6 tool. It's recommended to use net-analyzer/traceroute instead. - Allow non-root users to flood (ping -f). This is generally a very bad idea. cpe:/a:skbuff:iputils -- cgit v1.2.3