[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: c8e7cf5b4f813a24758f4d81e722df07bba85017 Author: Sam James gentoo org> AuthorDate: Thu Oct 14 03:15:47 2021 + Commit: Sam James gentoo org> CommitDate: Thu Oct 14 03:15:47 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8e7cf5b net-misc/iputils: backport no-IPv6 ping patch Bug: https://bugs.gentoo.org/818022 Signed-off-by: Sam James gentoo.org> .../files/iputils-20210722-fix-no-ipv6-ping.patch | 47 + net-misc/iputils/iputils-20210722-r1.ebuild| 192 + 2 files changed, 239 insertions(+) diff --git a/net-misc/iputils/files/iputils-20210722-fix-no-ipv6-ping.patch b/net-misc/iputils/files/iputils-20210722-fix-no-ipv6-ping.patch new file mode 100644 index 000..61f9f5c03fd --- /dev/null +++ b/net-misc/iputils/files/iputils-20210722-fix-no-ipv6-ping.patch @@ -0,0 +1,47 @@ +https://github.com/iputils/iputils/commit/79d713eab6181e219bf932b404706f6f59ff2539.patch +https://bugs.gentoo.org/818022 + +From: Byron Stanoszek +Date: Thu, 16 Sep 2021 23:38:54 +0200 +Subject: [PATCH] ping: Remove 'unsupported IPv6' warning on disabled IPv6 + +Regression was introduced in d141cb6 as introduced condition + +if ((errno == EAFNOSUPPORT && socktype == AF_INET6) || options & F_VERBOSE || requisite) + +was wrong, it should have been: + +if ((errno == EAFNOSUPPORT && family == AF_INET6 && requisite) || options & F_VERBOSE) + +but bug was hidden as `family == AF_INET6' was always false until +otherwise correct fix 904cdb6 ("ping: AF_INET6 is address family not +socket type [lgtm scan]") propagated the error. + +Tested on kernel booted with ipv6.disable=1 (disabling via sysctl, i.e. +sysctl -w net.ipv6.conf.all.disable_ipv6=1; sysctl -w net.ipv6.conf.default.disable_ipv6=1 +does not trigger the issue as it exit with "socket: Address family not +supported by protocol" - errno EADDRNOTAVAIL). + +Fixes: d141cb6 ("ping: work with older kernels that don't support ping sockets") +Closes: https://github.com/iputils/iputils/issues/293 +Closes: https://github.com/iputils/iputils/pull/370 + +Reported-by: lekto +Reviewed-by: Andrew Clayton +Reviewed-by: Petr Vorel +Signed-off-by: Byron Stanoszek +[ pvorel: create commit from Byron's patch on the issue, do analysis and wrote commit message ] +Signed-off-by: Petr Vorel +--- a/ping/ping.c b/ping/ping.c +@@ -150,8 +150,8 @@ static void create_socket(struct ping_rts *rts, socket_st *sock, int family, + /* Report error related to disabled IPv6 only when IPv6 also failed or in +* verbose mode. Report other errors always. +*/ +- if ((errno == EAFNOSUPPORT && family == AF_INET6) || +- rts->opt_verbose || requisite) ++ if ((errno == EAFNOSUPPORT && family == AF_INET6 && requisite) || ++ rts->opt_verbose) + error(0, errno, "socket"); + if (requisite) + exit(2); diff --git a/net-misc/iputils/iputils-20210722-r1.ebuild b/net-misc/iputils/iputils-20210722-r1.ebuild new file mode 100644 index 000..7d70dc9970a --- /dev/null +++ b/net-misc/iputils/iputils-20210722-r1.ebuild @@ -0,0 +1,192 @@ +# 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-[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 meson plocale systemd toolchain-funcs + +if [[ ${PV} == "" ]] ; then + EGIT_REPO_URI="https://github.com/iputils/iputils.git; + inherit git-r3 +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" +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 test tftpd tracepath traceroute6" +RESTRICT="!test? ( test )" + +BDEPEND=" + virtual/pkgconfig + test? ( sys-apps/iproute2 ) + nls? ( sys-devel/gettext ) +" + +LIB_DEPEND=" + caps? ( sys-libs/libcap[static-libs(+)] ) + idn? ( net-dns/libidn2:=[static-libs(+)] ) + nls? ( virtual/libintl[static-libs(+)] ) +" + +RDEPEND=" + traceroute6? ( !net-analyzer/traceroute ) + !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) +" + +DEPEND=" + ${RDEPEND}
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: b88892c8d906c8bf491a8d9cf8fd7ddde1251700 Author: Sam James gentoo org> AuthorDate: Fri Sep 10 17:17:36 2021 + Commit: Sam James gentoo org> CommitDate: Fri Sep 10 17:17:36 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b88892c8 net-misc/iputils: make tests conditional Closes: https://bugs.gentoo.org/807973 Signed-off-by: Sam James gentoo.org> .../files/iputils-20210722-optional-tests.patch| 202 + net-misc/iputils/iputils-20210722.ebuild | 10 +- net-misc/iputils/iputils-.ebuild | 5 +- 3 files changed, 215 insertions(+), 2 deletions(-) diff --git a/net-misc/iputils/files/iputils-20210722-optional-tests.patch b/net-misc/iputils/files/iputils-20210722-optional-tests.patch new file mode 100644 index 000..d6c4e98c080 --- /dev/null +++ b/net-misc/iputils/files/iputils-20210722-optional-tests.patch @@ -0,0 +1,202 @@ +https://github.com/iputils/iputils/commit/3163c49f9f4ad473a00d8a345ee334a028376011.patch +https://bugs.gentoo.org/807973 + +From: Heiko Becker +Date: Fri, 23 Jul 2021 16:32:46 +0200 +Subject: [PATCH] meson: Make tests optional + +Now can be disabled with -DSKIP_TESTS=true. + +It allows to avoid meson error during build when ip isn't installed. + +Closes: #359 + +Reviewed-by: Petr Vorel +Signed-off-by: Heiko Becker +[ pvorel: Rename variable TEST => SKIP_TESTS, default false, adjust +the description ] +Signed-off-by: Petr Vorel +--- a/meson_options.txt b/meson_options.txt +@@ -72,3 +72,6 @@ option('INSTALL_SYSTEMD_UNITS', type: 'boolean', value: false, + + option('USE_GETTEXT', type: 'boolean', value: true, + description: 'Enable I18N') ++ ++option('SKIP_TESTS', type: 'boolean', value: false, ++ description: 'Skip tests during build') +--- a/ping/meson.build b/ping/meson.build +@@ -27,86 +27,6 @@ if (setcap_ping) + ) + endif + +-# TESTS # +- +-# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_" +- +-# GitHub CI does not have working IPv6 +-# https://github.com/actions/virtual-environments/issues/668 +-ipv6_dst = [] +-ipv6_switch = [] +-r = run_command('ip', '-6', 'a') +-if r.stdout().strip().contains('::1') +- message('IPv6 enabled') +- ipv6_dst = [ '::1' ] +- ipv6_switch = [ '-6' ] +-else +- message('WARNING: IPv6 disabled') ++if not get_option('SKIP_TESTS') ++ subdir('test') + endif +- +-run_as_root = false +-r = run_command('id', '-u') +-if r.stdout().strip().to_int() == 0 +- message('running as root') +- run_as_root = true +-else +- message('running as normal user') +-endif +- +-foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst +- foreach switch : [ '', '-4' ] + ipv6_switch +- args = [ '-c1', dst ] +- should_fail = false +- +- if switch != '' +-args = [switch] + args +-if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1') +- should_fail = true +-endif +- endif +- +- name = 'ping ' + ' '.join(args) +- test(name, ping, args : args, should_fail : should_fail) +- endforeach +-endforeach +- +-ping_tests_opt = [ +- [ '-c1' ], +- [ '-c5', '-i0.1' ], +- [ '-c1', '-I', 'lo' ], +- [ '-c1', '-w1' ], +- [ '-c1', '-W1' ], +- [ '-c1', '-W1.1' ], +-] +-foreach dst : [ '127.0.0.1' ] + ipv6_dst +- foreach args : ping_tests_opt +- args += [ dst ] +- name = 'ping ' + ' '.join(args) +- test(name, ping, args : args) +- endforeach +-endforeach +- +-ping_tests_opt_fail = [ +- [ '-c1.1' ], +- [ '-I', 'nonexisting' ], +- [ '-w0.1' ], +- [ '-w0,1' ], +-] +-foreach dst : [ '127.0.0.1' ] + ipv6_dst +- foreach args : ping_tests_opt_fail +- args += [ dst ] +- name = 'ping ' + ' '.join(args) +- test(name, ping, args : args, should_fail : true) +- endforeach +-endforeach +- +-ping_tests_user_fail = [ +- [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root +-] +-foreach dst : [ '127.0.0.1' ] + ipv6_dst +- foreach args : ping_tests_user_fail +- args += [ dst ] +- name = 'ping ' + ' '.join(args) +- test(name, ping, args : args, should_fail : not run_as_root) +- endforeach +-endforeach +--- /dev/null b/ping/test/meson.build +@@ -0,0 +1,81 @@ ++# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_" ++ ++# GitHub CI does not have working IPv6 ++# https://github.com/actions/virtual-environments/issues/668 ++ipv6_dst = [] ++ipv6_switch = [] ++r = run_command('ip', '-6', 'a') ++if r.stdout().strip().contains('::1') ++ message('IPv6 enabled') ++ ipv6_dst = [ '::1' ] ++ ipv6_switch = [ '-6' ] ++else ++ message('WARNING: IPv6 disabled') ++endif ++ ++run_as_root = false ++r = run_command('id', '-u') ++if r.stdout().strip().to_int() == 0 ++ message('running as root') ++ run_as_root = true ++else ++ message('running as normal user') ++endif ++ ++foreach
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: f70bc63e84eb5797b02ec3aa6d972d2f1f8bc55a Author: Mike Gilbert gentoo org> AuthorDate: Mon Jan 25 03:27:29 2021 + Commit: Mike Gilbert gentoo org> CommitDate: Mon Jan 25 03:27:51 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f70bc63e net-misc/iputils: fix fallback code when getrandom fails Closes: https://bugs.gentoo.org/738842 Signed-off-by: Mike Gilbert gentoo.org> .../iputils-20200821-getrandom-fallback.patch | 43 ++ ...-20200821.ebuild => iputils-20200821-r1.ebuild} | 6 ++- 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch b/net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch new file mode 100644 index 000..5b69e5c88fb --- /dev/null +++ b/net-misc/iputils/files/iputils-20200821-getrandom-fallback.patch @@ -0,0 +1,43 @@ +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(, sizeof(i), GRND_NONBLOCK)) != sizeof(i)) { +- switch(errno) { ++ do { ++ errno = 0; ++ ret = getrandom(, 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/iputils-20200821.ebuild b/net-misc/iputils/iputils-20200821-r1.ebuild similarity index 97% rename from net-misc/iputils/iputils-20200821.ebuild rename to net-misc/iputils/iputils-20200821-r1.ebuild index 035fe9df791..3b1245c1082 100644 --- a/net-misc/iputils/iputils-20200821.ebuild +++ b/net-misc/iputils/iputils-20200821-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# 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 @@ -61,7 +61,9 @@ fi [ "${PV}" == "" ] || S="${WORKDIR}/${PN}-s${PV}" -PATCHES=() +PATCHES=( + "${FILESDIR}/iputils-20200821-getrandom-fallback.patch" +) src_prepare() { default
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: 23a95c6869f3abe76afd4197e4b7f92d25048861 Author: Thomas Deutschmann gentoo org> AuthorDate: Tue Apr 7 18:04:59 2020 + Commit: Thomas Deutschmann gentoo org> CommitDate: Tue Apr 7 18:09:23 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23a95c68 net-misc/iputils: fix arping Closes: https://bugs.gentoo.org/692982 Package-Manager: Portage-2.3.96, Repoman-2.3.22 Signed-off-by: Thomas Deutschmann gentoo.org> ...rt-partially-fix-sent-vs-received-package.patch | 34 net-misc/iputils/iputils-20190709-r1.ebuild| 201 + 2 files changed, 235 insertions(+) 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 new file mode 100644 index 000..715ed45041b --- /dev/null +++ b/net-misc/iputils/files/iputils-20190709-arping-revert-partially-fix-sent-vs-received-package.patch @@ -0,0 +1,34 @@ +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/iputils-20190709-r1.ebuild b/net-misc/iputils/iputils-20190709-r1.ebuild new file mode 100644 index 000..52bdec97980 --- /dev/null +++ b/net-misc/iputils/iputils-20190709-r1.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2020 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 depedencies. +# To regenerate man/html pages emerge iputils-[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} == "" ]] ; 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 ~ppc-aix ~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 libressl 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? ( + libressl? ( dev-libs/libressl:0=[static-libs(+)] ) + !libressl? ( dev-libs/openssl:0=[static-libs(+)] ) + ) + ) + ) + ) + nls? ( sys-devel/gettext[static-libs(+)] ) +" + +RDEPEND=" + arping? ( !net-misc/arping ) + rarpd? ( !net-misc/rarpd ) + traceroute6? ( !net-analyzer/traceroute ) + !static? ( ${LIB_DEPEND//\[static-libs(+)]} ) +" + +DEPEND=" + ${RDEPEND} + virtual/os-headers + static? ( ${LIB_DEPEND} ) +" + +if [[ ${PV} == "" ]] ; then + DEPEND+=" + app-text/docbook-xml-dtd:4.2 + app-text/docbook-xml-dtd:4.5 + app-text/docbook-xsl-ns-stylesheets
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: 865c1a561c7eaabd160cd1d7b0aef09bfbcdb327 Author: Thomas Deutschmann gentoo org> AuthorDate: Tue Apr 7 18:09:06 2020 + Commit: Thomas Deutschmann gentoo org> CommitDate: Tue Apr 7 18:09:24 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=865c1a56 net-misc/iputils: add some more patches for ping - ping: try next addrinfo on connect failure - ping: fix main loop over multiple addrinfo results Package-Manager: Portage-2.3.96, Repoman-2.3.22 Signed-off-by: Thomas Deutschmann gentoo.org> ...-main-loop-over-multiple-addrinfo-results.patch | 86 ++ ...ping-try-next-addrinfo-on-connect-failure.patch | 190 + net-misc/iputils/iputils-20190709-r1.ebuild| 2 + 3 files changed, 278 insertions(+) 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 new file mode 100644 index 000..9814707d723 --- /dev/null +++ b/net-misc/iputils/files/iputils-20190709-ping-fix-main-loop-over-multiple-addrinfo-results.patch @@ -0,0 +1,86 @@ +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 new file mode 100644 index 000..a308fb7c9f6 --- /dev/null +++ b/net-misc/iputils/files/iputils-20190709-ping-try-next-addrinfo-on-connect-failure.patch @@ -0,0 +1,190 @@ +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
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: 3ee18d29f9d2f245c8a9acda7a767edd247f7558 Author: Thomas Deutschmann gentoo org> AuthorDate: Tue Jul 10 23:38:13 2018 + Commit: Thomas Deutschmann gentoo org> CommitDate: Tue Jul 10 23:38:13 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ee18d29 net-misc/iputils: bump to v20180629 Package-Manager: Portage-2.3.41, Repoman-2.3.9 net-misc/iputils/Manifest | 2 + net-misc/iputils/files/iputils-20180629-musl.patch | 87 ++ net-misc/iputils/iputils-20180629.ebuild | 178 + 3 files changed, 267 insertions(+) diff --git a/net-misc/iputils/Manifest b/net-misc/iputils/Manifest index 4bd330cb3a8..e2cf5240b90 100644 --- a/net-misc/iputils/Manifest +++ b/net-misc/iputils/Manifest @@ -1,2 +1,4 @@ DIST iputils-20171016_pre.tar.gz 195254 BLAKE2B 1170db29d53dd8285b11d4df7b7da2ea3bd2be3599a3f0df85ca7e64247f2a534d03e43a2b6267ba4b9c0b65fcc58045151833ae2c1035a839ed728a389804af SHA512 570896fc58d945e08032134701ab6ea02bbf6fff420437bc5f89687cdcce6f3c1c64418a4c5ff54ca3cdc582bae2c95e196b2c8368eba2b163ebf88490aabf99 +DIST iputils-20180629.tar.gz 195094 BLAKE2B 81bf6ef427eac0769ea3f95c20294b46c81f9c619551234eb265b3a428998a96cf3df0cdc7499f9eea280c1999e899e87c3f4a863141de251a9c509840bc83b3 SHA512 16b8f5ad1cf88083ebaee0a71fddb14bb0a904336fd0baebfcca86c27ac0773553b21d12790b05cab7661d6432c75bbb1523e871e5e1b77faacd13ccc84f4476 DIST iputils-manpages-20171016_pre.tar.xz 29764 BLAKE2B 47def1413b2cdcfba7f924dd7a045063c289c244ba8fb4dc43caf2a8d52032b57ee6d86ee4dffd5351faa3124d4c83a33ca3365866568c2164b374eed9d70ec0 SHA512 31b4b0b4e46d7c98530577392c636e4397917cbe415762145a119e68e3223bc85b9d5afcfe61ae01584a35f6a1a772adffc52deeedc722c474179fa1d208d8d9 +DIST iputils-manpages-20180629.tar.xz 29804 BLAKE2B 15983cc97bc6b6853c193f046687f10be11902f7e1d2dc2eec6c58edd1926f10152108d378858b0d7eb2d2908f038965b05515c4927aedc460282a22307883ad SHA512 1c5b0bab8496a3f3d9b5080029221231a497d9a5e91c61bd0ddd0b63fd51572d052801294aafd08e1dc8ad448b82cdaf48c72f0b08cc143f9c144f3db6848d9a diff --git a/net-misc/iputils/files/iputils-20180629-musl.patch b/net-misc/iputils/files/iputils-20180629-musl.patch new file mode 100644 index 000..48742d96602 --- /dev/null +++ b/net-misc/iputils/files/iputils-20180629-musl.patch @@ -0,0 +1,87 @@ +commit 5007d7067918fb3d950d34c01d059e5222db679a +Author: Aric Belsito +AuthorDate: Mon Dec 4 00:10:29 2017 +0100 +Commit: Thomas Deutschmann +CommitDate: Wed Jul 11 01:33:28 2018 +0200 + +Fix build on MUSL + +Add missing AI_IDN and NI_IDN declarations. + +Bug: https://bugs.gentoo.org/503914 +Signed-off-by: Thomas Deutschmann + +diff --git a/arping.c b/arping.c +index c2f2129..d753345 100644 +--- a/arping.c b/arping.c +@@ -44,6 +44,13 @@ + + #ifdef USE_IDN + #include ++ ++#ifndef AI_IDN ++#define AI_IDN 0x0040 ++#endif ++#ifndef AI_CANONIDN ++#define AI_CANONIDN 0x0080 ++#endif + #endif + + #include "SNAPSHOT.h" +diff --git a/ping.h b/ping.h +index 3e09685..1e51c67 100644 +--- a/ping.h b/ping.h +@@ -37,6 +37,17 @@ + + #ifdef USE_IDN + #include ++ ++#ifndef AI_IDN ++#define AI_IDN 0x0040 ++#endif ++#ifndef AI_CANONIDN ++#define AI_CANONIDN 0x0080 ++#endif ++#ifndef NI_IDN ++#define NI_IDN 32 ++#endif ++ + #define getaddrinfo_flags (AI_CANONNAME | AI_IDN | AI_CANONIDN) + #define getnameinfo_flags NI_IDN + #else +diff --git a/tracepath.c b/tracepath.c +index 53bda16..9558e49 100644 +--- a/tracepath.c b/tracepath.c +@@ -29,6 +29,14 @@ + + #ifdef USE_IDN + #include ++ ++#ifndef AI_IDN ++#define AI_IDN 0x0040 ++#endif ++#ifndef NI_IDN ++#define NI_IDN 32 ++#endif ++ + #define getnameinfo_flags NI_IDN + #else + #define getnameinfo_flags 0 +diff --git a/traceroute6.c b/traceroute6.c +index a1022f9..ab34615 100644 +--- a/traceroute6.c b/traceroute6.c +@@ -246,6 +246,10 @@ + #ifdef USE_IDN + #include + ++#ifndef NI_IDN ++#define NI_IDN 32 ++#endif ++ + #define ADDRINFO_IDN_FLAGSAI_IDN + #define getnameinfo_flags NI_IDN + #else diff --git a/net-misc/iputils/iputils-20180629.ebuild b/net-misc/iputils/iputils-20180629.ebuild new file mode 100644 index 000..fb577b0efbb --- /dev/null +++ b/net-misc/iputils/iputils-20180629.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2018 Gentoo Foundation +# 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 depedencies. +# To regenerate man/html pages emerge iputils-[doc] with +# EGIT_COMMIT set to release tag and tar ${S}/doc folder. + +EAPI="6" + +inherit flag-o-matic toolchain-funcs fcaps + +MY_PV="${PV/_pre/}" + +PATCHES=( + "${FILESDIR}"/${PN}-20180629-musl.patch +) + +if [[ ${PV} == "" ]] ; then + EGIT_REPO_URI="https://github.com/iputils/iputils.git; + inherit git-r3
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: 034a66e5627fc629c4e43a5e49c2b483cac08333 Author: Lars Wendler gentoo org> AuthorDate: Wed May 16 19:24:50 2018 + Commit: Lars Wendler gentoo org> CommitDate: Wed May 16 19:26:21 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=034a66e5 net-misc/iputils: Removed old. Package-Manager: Portage-2.3.36, Repoman-2.3.9 net-misc/iputils/Manifest | 8 - .../files/iputils-20071127-nonroot-floodping.patch | 11 - .../files/iputils-20121221-crypto-build.patch | 35 .../iputils/files/iputils-20121221-makefile.patch | 61 -- .../iputils/files/iputils-20121221-openssl.patch | 92 - .../files/iputils-20121221-owl-pingsock.diff | 224 - .../files/iputils-20121221-parallel-doc.patch | 74 --- .../files/iputils-20121221-printf-size.patch | 64 -- .../iputils/files/iputils-20121221-strtod.patch| 45 - .../files/iputils-20121221-tftpd-setid.patch | 34 .../files/iputils-20121221-tftpd-syslog.patch | 38 .../iputils/files/iputils--openssl.patch | 97 - .../files/iputils--tftpd-syslog.patch | 38 net-misc/iputils/iputils-20121221-r1.ebuild| 103 -- net-misc/iputils/iputils-20121221-r2.ebuild| 153 -- net-misc/iputils/iputils-20151218.ebuild | 158 --- net-misc/iputils/iputils-20160308.ebuild | 165 --- net-misc/iputils/iputils-20161105.ebuild | 168 18 files changed, 1568 deletions(-) diff --git a/net-misc/iputils/Manifest b/net-misc/iputils/Manifest index db05f47bd4f..4bd330cb3a8 100644 --- a/net-misc/iputils/Manifest +++ b/net-misc/iputils/Manifest @@ -1,10 +1,2 @@ -DIST iputils-20160308.tar.gz 195348 BLAKE2B d034454921a117307c5092c5b44c250cb90ab96d4b0331cf0c7645523159d3f615746edf6c70faf5b13a2a58761fcb4dbe09043cd486ddc56586a9716f98ca5a SHA512 6b4d6e58ab8f1218f3ab52da695f252bd3e0004ffce755f2378b44fc3b4fbf9beb9beef51ff12f14348a07f6fe8525e64dba7f5d7b70997423d2c98c5ff7dde2 -DIST iputils-20161105.tar.gz 195879 BLAKE2B 3aacbe2a507415d43e524329df269d8a435b529c2e0bdd5387f4711a63ede46968f285dbf78491341013188b3c929e2e717898fed44c5c211fe15946bfe214a4 SHA512 1593077b6eff1e57eb8a32897dd9624a745d0c87db1501a96436b168b109ef22d41ee69406a4a2154d8d72c823c1df723b4c52eeec8d82ba2762fb01dc0d4797 DIST iputils-20171016_pre.tar.gz 195254 BLAKE2B 1170db29d53dd8285b11d4df7b7da2ea3bd2be3599a3f0df85ca7e64247f2a534d03e43a2b6267ba4b9c0b65fcc58045151833ae2c1035a839ed728a389804af SHA512 570896fc58d945e08032134701ab6ea02bbf6fff420437bc5f89687cdcce6f3c1c64418a4c5ff54ca3cdc582bae2c95e196b2c8368eba2b163ebf88490aabf99 DIST iputils-manpages-20171016_pre.tar.xz 29764 BLAKE2B 47def1413b2cdcfba7f924dd7a045063c289c244ba8fb4dc43caf2a8d52032b57ee6d86ee4dffd5351faa3124d4c83a33ca3365866568c2164b374eed9d70ec0 SHA512 31b4b0b4e46d7c98530577392c636e4397917cbe415762145a119e68e3223bc85b9d5afcfe61ae01584a35f6a1a772adffc52deeedc722c474179fa1d208d8d9 -DIST iputils-s20121221-manpages.tar.bz2 23778 BLAKE2B 6b781f7df17b272bf19ba41a7d9a1449526b60f5f596c2201dcf489caf776b74e6a9de2bfff67fada2e9e0480b49a2dce341ce8e5d13c82d6ffd2a0b65bf2c49 SHA512 006be62e61bf1555c99dbd5aac270cbd8d1074a3016fdde3aeed47e5c9b1acd326aa30a596c532d6688827f7f61966a6e3141eaa3b6f4f943eb21ac227282d8c -DIST iputils-s20121221.tar.bz2 155344 BLAKE2B bef1fc6e0484fa43fe34b3c50e9060b0bb2a76cc4912e306143a5b74ff6c42d4cfd1db890548d8d684540f0aabf949def521e2562d7878a7042095e7b19cfd9c SHA512 693d240becd766c345c3af2053fc0699b9358e54d667d40738c21d731b70e779112d81476a220d8300ca54250120385414a13610d445996f95a90571047389f4 -DIST iputils-s20151218-manpages.tar.xz 22336 BLAKE2B ea19d5bc399cadc73c137badbe304383be0b0b0794db1b655fe766c87684b760664e986ed513a5717e5cfd4b068b0800ba188f10dca5a75215891754b1208e62 SHA512 964b9e22b18b67215ea48e046c45768cd86076b53db2131b00ac721be9e7de4edadefb74855d81861f12b4e10dcecd90d29f0098c2c4568d7601d97e756be0a3 -DIST iputils-s20151218.tar.bz2 157187 BLAKE2B d739fdc696b3592ec49ee98163a31bac364fc6cd9136510c34ecddd789d0ebdd76c92ed740fe6e2f098db086aa2885e9f48b94b8f43badd208ddcb6f9332a5dd SHA512 4bf0eed0ae5603e872afb0e09be039df3822a7723e8cbb8cbe578d69d8c457ffac9bdbe2eb17b32c95968e5e4ad6204af955617482c5701671f0f476b560b65c -DIST iputils-s20160308-manpages.tar.xz 22684 BLAKE2B 4c9a8278640b55ffce0cbb929b89fe528716905bcb119d949ad4bc41b8fe74c6b6822d2a623e377c71ca0a82ee48d7fadb770e395a9acdbfedd43da0790ff910 SHA512 fe55ee334f1a99c6d93f4d18d97666d307676ced77175b73139f888af8f4f0ddc0f1d0511ab71d234f57909def606bf5c3aede2db28a0f73eb5628b9c8e16cac -DIST iputils-s20161105-manpages.tar.xz 22660 BLAKE2B ae764e66ebbd3e77a0583b7191532a0d8774fc5713c239f00f35c624868a9d6ea8507175153f1025ffb01d854d96ba3c542006d3966119e4fd021899ec114ad1 SHA512 10cf22e1c2bf4ab90818e2120638d250ccefd65f19545cc9662537a31ab525089309b505759a347f09f1439800e291d7fa22f38bdec5460d41bd40f323412279
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: c80f7a43e5789f3be0e39bbae4c29b6e25ab5e61 Author: Thomas Deutschmann gentoo org> AuthorDate: Sat Oct 28 14:40:16 2017 + Commit: Thomas Deutschmann gentoo org> CommitDate: Sat Oct 28 14:46:00 2017 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c80f7a43 net-misc/iputils: Update live ebuild Closes: https://github.com/gentoo/gentoo/pull/5591 Closes: https://bugs.gentoo.org/628240 Package-Manager: Portage-2.3.13, Repoman-2.3.4 .../files/iputils--tracepath46.patch | 30 + net-misc/iputils/iputils-.ebuild | 51 +- 2 files changed, 61 insertions(+), 20 deletions(-) diff --git a/net-misc/iputils/files/iputils--tracepath46.patch b/net-misc/iputils/files/iputils--tracepath46.patch new file mode 100644 index 000..20d017b34ee --- /dev/null +++ b/net-misc/iputils/files/iputils--tracepath46.patch @@ -0,0 +1,30 @@ +From 2c4d0838dda90515d4971881d86e8b969baebe01 Mon Sep 17 00:00:00 2001 +From: Thomas Deutschmann+Date: Thu, 19 Oct 2017 17:38:20 +0200 +Subject: [PATCH] tracepath: Support calling `tracepath` as `tracepath4` or + `tracepath6` + +--- + tracepath.c | 6 ++ + 1 file changed, 6 insertions(+) + +diff --git a/tracepath.c b/tracepath.c +index b0eb911..d2a6edf 100644 +--- a/tracepath.c b/tracepath.c +@@ -394,6 +394,12 @@ int main(int argc, char **argv) + setlocale(LC_ALL, ""); + #endif + ++ /* Support being called using `tracepath4` or `tracepath6` symlinks */ ++ if (argv[0][strlen(argv[0])-1] == '4') ++ hints.ai_family = AF_INET; ++ else if (argv[0][strlen(argv[0])-1] == '6') ++ hints.ai_family = AF_INET6; ++ + while ((ch = getopt(argc, argv, "46nbh?l:m:p:")) != EOF) { + switch(ch) { + case '4': +-- +2.14.3 + diff --git a/net-misc/iputils/iputils-.ebuild b/net-misc/iputils/iputils-.ebuild index ce003cbf4fe..9731575e02e 100644 --- a/net-misc/iputils/iputils-.ebuild +++ b/net-misc/iputils/iputils-.ebuild @@ -3,20 +3,22 @@ # 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 when the jade/sgml packages are broken (which -# seems to be more common than would be nice). -# Required packages for doc generation: -# app-text/docbook-sgml-utils +# building stages, and reduces depedencies. +# To regenerate man/html pages emerge iputils-[doc] with +# EGIT_COMMIT set to release tag and tar ${S}/doc folder. -EAPI=5 +EAPI="6" + +inherit flag-o-matic toolchain-funcs fcaps + +PATCHES=( "${FILESDIR}"/${PN}--tracepath46.patch ) -inherit flag-o-matic eutils toolchain-funcs fcaps if [[ ${PV} == "" ]] ; 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/~polynomial-c/iputils-s${PV}-manpages.tar.xz; + https://dev.gentoo.org/~whissi/dist/iputils/${PN}-manpages-${PV}.tar.xz; KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-linux ~x86-linux" fi @@ -43,13 +45,13 @@ RDEPEND="arping? ( !net-misc/arping ) !static? ( ${LIB_DEPEND//\[static-libs(+)]} )" DEPEND="${RDEPEND} static? ( ${LIB_DEPEND} ) - virtual/os-headers" + virtual/os-headers +" if [[ ${PV} == "" ]] ; then - DEPEND+=" - app-text/openjade - dev-perl/SGMLSpm - app-text/docbook-sgml-dtd - app-text/docbook-sgml-utils + DEPEND+="app-text/docbook-xml-dtd:4.2 + app-text/docbook-xml-dtd:4.5 + app-text/docbook-xsl-stylesheets + dev-libs/libxslt:0 " fi @@ -58,7 +60,9 @@ REQUIRED_USE="ipv6? ( ssl? ( ^^ ( gcrypt nettle openssl ) ) )" [ "${PV}" = "" ] || S="${WORKDIR}/${PN}-s${PV}" src_prepare() { - use SECURITY_HAZARD && epatch "${FILESDIR}"/${PN}-20150815-nonroot-floodping.patch + use SECURITY_HAZARD && PATCHES+=( "${FILESDIR}"/${PN}-20150815-nonroot-floodping.patch ) + + default } src_configure() { @@ -70,7 +74,6 @@ src_configure() { ) if use ipv6 ; then TARGETS+=( - $(usex tracepath 'tracepath6' '') $(usex traceroute 'traceroute6' '') ) fi @@ -100,7 +103,9 @@ src_compile() { ${myconf[@]} if [[ ${PV} == "" ]] ; then - emake html man + emake man + + use doc && emake html fi } @@ -121,8 +126,14 @@ src_install() { into /usr + if use tracepath ; then + dosbin tracepath + doman
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: f300a385b4d4a54333b686d25db2a652360e3ac9 Author: Lars Wendler gentoo org> AuthorDate: Mon Mar 7 15:49:42 2016 + Commit: Lars Wendler gentoo org> CommitDate: Mon Mar 7 15:50:12 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f300a385 net-misc/iputils: Replaced two patches with upstream equivalents. Package-Manager: portage-2.2.27 Signed-off-by: Lars Wendler gentoo.org> .../files/iputils-20150815-defines_and_libs.patch | 28 + ...ls-20150815-handle_single_protocol_system.patch | 70 ++ .../files/iputils-20150815-ping6_crypto.patch | 29 - .../files/iputils-20150815-ping_default_ipv4.patch | 65 net-misc/iputils/iputils-20150815-r1.ebuild| 8 +-- 5 files changed, 102 insertions(+), 98 deletions(-) diff --git a/net-misc/iputils/files/iputils-20150815-defines_and_libs.patch b/net-misc/iputils/files/iputils-20150815-defines_and_libs.patch new file mode 100644 index 000..4def935 --- /dev/null +++ b/net-misc/iputils/files/iputils-20150815-defines_and_libs.patch @@ -0,0 +1,28 @@ +From ba739daf98450fe725569724eefc64a2afdeb909 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Pavel=20=C5=A0imerda?=+Date: Thu, 20 Aug 2015 16:16:14 +0200 +Subject: [PATCH] ping: fix defines and libs in Makefile + +--- + Makefile | 8 + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index 9b0b70f..4eea516 100644 +--- a/Makefile b/Makefile +@@ -153,10 +153,10 @@ DEF_clockdiff = $(DEF_CAP) + LIB_clockdiff = $(LIB_CAP) + + # ping / ping6 +-DEF_ping_common = $(DEF_CAP) $(DEF_IDN) +-DEF_ping6_common = $(DEF_CAP) $(DEF_IDN) +-DEF_ping = $(DEF_CAP) $(DEF_IDN) $(DEF_WITHOUT_IFADDRS) +-LIB_ping = $(LIB_CAP) $(LIB_IDN) $(LIB_RESOLV) ++DEF_ping = $(DEF_CAP) $(DEF_IDN) $(DEF_CRYPTO) $(DEF_WITHOUT_IFADDRS) ++DEF_ping_common = $(DEF_ping) ++DEF_ping6_common = $(DEF_ping) ++LIB_ping = $(LIB_CAP) $(LIB_IDN) $(LIB_CRYPTO) $(LIB_RESOLV) + + ping: ping_common.o ping6_common.o + ping.o ping_common.o ping6_common.o: ping.h in6_flowlabel.h diff --git a/net-misc/iputils/files/iputils-20150815-handle_single_protocol_system.patch b/net-misc/iputils/files/iputils-20150815-handle_single_protocol_system.patch new file mode 100644 index 000..1bf98cc --- /dev/null +++ b/net-misc/iputils/files/iputils-20150815-handle_single_protocol_system.patch @@ -0,0 +1,70 @@ +From 9fd870a4bac0b8b2070c38452f378ef1eb7d460a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Pavel=20=C5=A0imerda?= +Date: Fri, 21 Aug 2015 00:55:56 +0200 +Subject: [PATCH] ping: handle single protocol systems + +--- + ping.c | 28 ++-- + 1 file changed, 18 insertions(+), 10 deletions(-) + +diff --git a/ping.c b/ping.c +index ec9708e..95a10a7 100644 +--- a/ping.c b/ping.c +@@ -110,26 +110,26 @@ static struct sockaddr_in source = { .sin_family = AF_INET }; + static char *device; + static int pmtudisc = -1; + +-static void create_socket(socket_st *sock, int family, int socktype, int protocol) ++static void create_socket(socket_st *sock, int family, int socktype, int protocol, int requisite) + { + errno = 0; + + sock->fd = socket(family, socktype, protocol); + +- /* Fallback to raw socket when ping socket failed */ +- if (sock->fd == -1 && socktype == SOCK_DGRAM) { ++ /* Attempt creating a raw socket when ping socket failed */ ++ if (sock->fd == -1 && errno != EAFNOSUPPORT && socktype == SOCK_DGRAM) { + if (options & F_VERBOSE) + fprintf(stderr, "ping: socket: %s, attempting raw socket...\n", strerror(errno)); +- create_socket(sock, family, SOCK_RAW, protocol); ++ create_socket(sock, family, SOCK_RAW, protocol, requisite); + return; + } + + if (sock->fd == -1) { +- if (socktype == SOCK_RAW) +- fprintf(stderr, "ping: socket: %s (raw socket required by specified options).\n", strerror(errno)); +- else ++ if (requisite || errno != EAFNOSUPPORT || options & F_VERBOSE) + fprintf(stderr, "ping: socket: %s\n", strerror(errno)); +- exit(2); ++ if (requisite) ++ exit(2); ++ return; + } + + sock->socktype = socktype; +@@ -442,11 +442,19 @@ main(int argc, char **argv) + /* Create sockets */ + enable_capability_raw(); + if (hints.ai_family != AF_INET6) +- create_socket(, AF_INET, hints.ai_socktype, IPPROTO_ICMP); ++ create_socket(, AF_INET, hints.ai_socktype, IPPROTO_ICMP, hints.ai_family == AF_INET); + if (hints.ai_family != AF_INET) +- create_socket(, AF_INET6, hints.ai_socktype, IPPROTO_ICMPV6); ++ create_socket(, AF_INET6, hints.ai_socktype, IPPROTO_ICMPV6, sock4.fd == -1); +
[gentoo-commits] repo/gentoo:master commit in: net-misc/iputils/, net-misc/iputils/files/
commit: 8416ea962b3feb527e8ca0ed4d05c524f3a66b3a Author: Lars Wendler polynomial-c AT gentoo DOT org AuthorDate: Thu Aug 20 12:18:18 2015 + Commit: Lars Wendler polynomial-c AT gentoo DOT org CommitDate: Thu Aug 20 12:18:18 2015 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8416ea96 net-misc/iputils: Bump to version 20150815. Package-Manager: portage-2.2.20.1 Signed-off-by: Lars Wendler polynomial-c AT gentoo.org net-misc/iputils/Manifest | 2 + .../files/iputils-20150815-nonroot-floodping.patch | 11 ++ .../files/iputils-20150815-ping6_crypto.patch | 29 .../files/iputils-20150815-ping_default_ipv4.patch | 65 net-misc/iputils/iputils-20150815.ebuild | 163 + net-misc/iputils/metadata.xml | 3 + 6 files changed, 273 insertions(+) diff --git a/net-misc/iputils/Manifest b/net-misc/iputils/Manifest index 40e0b48..a1191dc 100644 --- a/net-misc/iputils/Manifest +++ b/net-misc/iputils/Manifest @@ -1,2 +1,4 @@ +DIST iputils-20150815.tar.gz 194508 SHA256 1f9c11783e9db90b3ebc43145e412160d989fb133a573638745379957c73c082 SHA512 ce899b1fa4b4a423c0430831d77eed660f7fdb98a0bf0532fd8dfa11f4b5f90c7b7d8199dd265fc0ac0e318f3ef2ef353f61bbd290cce77746df646a29edf85a WHIRLPOOL 763bc8b886d1678428be2dedb3060358ef06beeb7297c4197a4e7772d5919183a90ac35a8f933222d880edb60e169817128b605286379636acf63bc2d78e32f4 DIST iputils-s20121221-manpages.tar.bz2 23778 SHA256 6fc7ed7d281b7a2ee00e4f75e5465c90498c685bcc988afdff74db4eaa736d1c SHA512 006be62e61bf1555c99dbd5aac270cbd8d1074a3016fdde3aeed47e5c9b1acd326aa30a596c532d6688827f7f61966a6e3141eaa3b6f4f943eb21ac227282d8c WHIRLPOOL da0ccb577c4b2189553419df2c093404752fb2865eb3e0bfececfc242d930ceb44f96b32d945cfdd0c9ca060359651b2ec8479db5cc9220cda412dfeee5e910d DIST iputils-s20121221.tar.bz2 155344 SHA256 450f549fc5b620c23c5929aa6d54b7ddfc7ee1cb1e8efdc5e8bb21d8d0c5319f SHA512 693d240becd766c345c3af2053fc0699b9358e54d667d40738c21d731b70e779112d81476a220d8300ca54250120385414a13610d445996f95a90571047389f4 WHIRLPOOL 64529180eb4b8e2f7a60c18df7cac49e10a4b7702514252d418b16dcdc10a85ccb0a7f8beb51274cc9d708be2026c4c136e720986795fd39d314e4f9d5590ec9 +DIST iputils-s20150815-manpages.tar.xz 22508 SHA256 d82fac64808f9a3f8dee114a62bc0a652243522bf8e535605eaf46d886c2febe SHA512 cb57758203aa49874cc14b4a92db8566775a62da6e50caa55f98e362348fe026898de7aded09f62b4c26e245e89ffde4a37a6810bdaa6619480071917009b1bb WHIRLPOOL f4616abf8857a46420a115ef2f3b6918ab36a1e5160ee8422e985d669672505a7c259a38dc09742405a467b3caa5d552653cfb3e07c15eab97e1326181cbfd99 diff --git a/net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch b/net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch new file mode 100644 index 000..50e108b --- /dev/null +++ b/net-misc/iputils/files/iputils-20150815-nonroot-floodping.patch @@ -0,0 +1,11 @@ +--- 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-20150815-ping6_crypto.patch b/net-misc/iputils/files/iputils-20150815-ping6_crypto.patch new file mode 100644 index 000..1e236ee --- /dev/null +++ b/net-misc/iputils/files/iputils-20150815-ping6_crypto.patch @@ -0,0 +1,29 @@ +From a45b719645960c9bacb430e452192d6ffac5be19 Mon Sep 17 00:00:00 2001 +From: Lars Wendler polynomia...@gentoo.org +Date: Thu, 20 Aug 2015 13:43:47 +0200 +Subject: [PATCH] Let ping6 use crypto if enabled. + +Signed-off-by: Lars Wendler polynomia...@gentoo.org +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index e34be5b..d4cb6c0 100644 +--- a/Makefile b/Makefile +@@ -159,9 +159,9 @@ LIB_clockdiff = $(LIB_CAP) + + # ping / ping6 + DEF_ping_common = $(DEF_CAP) $(DEF_IDN) +-DEF_ping6_common = $(DEF_CAP) $(DEF_IDN) ++DEF_ping6_common = $(DEF_CAP) $(DEF_IDN) $(DEF_CRYPTO) + DEF_ping = $(DEF_CAP) $(DEF_IDN) $(DEF_WITHOUT_IFADDRS) $(DEF_IPV4) +-LIB_ping = $(LIB_CAP) $(LIB_IDN) $(LIB_RESOLV) ++LIB_ping = $(LIB_CAP) $(LIB_IDN) $(LIB_RESOLV) $(LIB_CRYPTO) + + ping: ping_common.o ping6_common.o + ping.o ping_common.o ping6_common.o: ping.h in6_flowlabel.h +-- +2.5.0 + diff --git a/net-misc/iputils/files/iputils-20150815-ping_default_ipv4.patch b/net-misc/iputils/files/iputils-20150815-ping_default_ipv4.patch new file mode 100644 index 000..71d32f0 --- /dev/null +++ b/net-misc/iputils/files/iputils-20150815-ping_default_ipv4.patch @@ -0,0 +1,65 @@ +From 8d4d34eea9fbd25d0103975f366799764bbc4a2f Mon Sep 17