mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH v2] iputils: update s20121221 -> s20161105
@ 2017-01-24 23:13 Clemens Gruber
  2017-01-25  6:41 ` Uwe Kleine-König
  2017-03-10  9:45 ` Michael Olbrich
  0 siblings, 2 replies; 6+ messages in thread
From: Clemens Gruber @ 2017-01-24 23:13 UTC (permalink / raw)
  To: ptxdist; +Cc: Clemens Gruber

The current version of iputils ping can handle IPv4 and IPv6 but
requires a crypto library dependency for ICMPv6 NI queries.
Add all possible choices: libgcrypt, nettle, openssl or none

tracepath works with IPv4 as well as IPv6 and it does not have to run as
root.
traceroute6 only works with IPv6 and requires superuser privileges.

Signed-off-by: Clemens Gruber <clemens.gruber@pqgruber.com>
---
 rules/iputils.in   | 71 +++++++++++++++++++++++++++++++++---------------------
 rules/iputils.make | 18 ++++++++------
 2 files changed, 55 insertions(+), 34 deletions(-)

diff --git a/rules/iputils.in b/rules/iputils.in
index 99105f75f..769f2ceb2 100644
--- a/rules/iputils.in
+++ b/rules/iputils.in
@@ -3,10 +3,11 @@
 menuconfig IPUTILS
 	tristate
 	prompt "iputils                       "
-	select LIBC_RESOLV	if IPUTILS_PING6
-	select LIBCAP		if IPUTILS_ARPING || IPUTILS_PING || IPUTILS_PING6 || IPUTILS_TRACEROUTE6 || IPUTILS_CLOCKDIFF
-	select GNUTLS		if IPUTILS_PING6
-	select GNUTLS_OPENSSL	if IPUTILS_PING6
+	select LIBC_RESOLV	if IPUTILS_PING
+	select LIBCAP		if IPUTILS_ARPING || IPUTILS_PING || IPUTILS_TRACEROUTE6 || IPUTILS_CLOCKDIFF
+	select LIBGCRYPT	if IPUTILS_GCRYPT
+	select NETTLE		if IPUTILS_NETTLE
+	select OPENSSL		if IPUTILS_OPENSSL
 	help
 	  The iputils package is set of small useful utilities for Linux
 	  networking.
@@ -36,11 +37,10 @@ config IPUTILS_PING
 	depends on (!BUSYBOX_PING && !INETUTILS_PING) || ALLYES
 	prompt "ping"
 	help
-	  The ping command uses the ICMP protocol's mandatory ECHO_REQUEST datagram
-	  to elicit an ICMP ECHO_RESPONSE from a host or gateway. ECHO_REQUEST
-	  datagrams pings have an IP and ICMP header, followed by a struct
-	  timeval and then an arbitrary number of pad bytes used to fill out
-	  the packet.
+	  ping uses the ICMP protocols mandatory ECHO_REQUEST datagram to elicit
+	  an ICMP ECHO_RESPONSE from a host or gateway.
+	  It works with both IPv4 and IPv6. Using only one of them explicitly can
+	  be enforced by specifying -4 or -6.
 
 comment "inetutils' ping is selected!"
         depends on INETUTILS_PING
@@ -48,21 +48,38 @@ comment "inetutils' ping is selected!"
 comment "BusyBox' ping is selected!"
         depends on BUSYBOX_PING
 
-config IPUTILS_PING6
-	bool
-	depends on (!BUSYBOX_PING6 && !INETUTILS_PING6) || ALLYES
-	prompt "ping6"
-	depends on GLOBAL_IPV6
+if GLOBAL_IPV6
+
+choice
+	prompt "crypto library to be used for ping -N"
+	default IPUTILS_NOCRYPTO
+	depends on IPUTILS_PING
 	help
-	  The ping6 command is IPv6 version of ping, and can also send Node
-	  Information Queries (RFC4620). Intermediate hops may not be allowed,
-	  because IPv6 source routing was deprecated (RFC5095).
+	  Selecting a crypto library is necessary for ping to support
+	  sending IPv6 Node Information Queries (RFC 4620).
+
+	config IPUTILS_NOCRYPTO
+		bool
+		prompt "none"
+		help
+		  No crypto library is used. This means that ping -N
+		  won't work.
+
+	config IPUTILS_GCRYPT
+		bool
+		prompt "libgcrypt"
+
+	config IPUTILS_NETTLE
+		bool
+		prompt "nettle"
 
-comment "inetutils' ping6 is selected!"
-        depends on INETUTILS_PING6
+	config IPUTILS_OPENSSL
+		bool
+		prompt "openssl"
 
-comment "BusyBox' ping6 is selected!"
-        depends on BUSYBOX_PING6
+endchoice
+
+endif
 
 config IPUTILS_RARPD
 	bool
@@ -98,12 +115,9 @@ config IPUTILS_TRACEPATH
 	bool
 	prompt "tracepath"
 	help
-
-config IPUTILS_TRACEPATH6
-	bool
-	prompt "tracepath6"
-	depends on GLOBAL_IPV6
-	help
+	  tracepath traces the path to a network host discovering the MTU along
+	  this path. Because it uses UDP for tracing, it does not need superuser
+	  privileges like traceroute6. tracepath works for both IPv4 and IPv6.
 
 config IPUTILS_TRACEROUTE6
 	bool
@@ -111,6 +125,9 @@ config IPUTILS_TRACEROUTE6
 	prompt "traceroute6"
 	depends on GLOBAL_IPV6
 	help
+	  traceroute6 tracks the route packets take from an IP network on their
+	  way to a given host. Supports UDP, ICMP and TCP for tracing and works
+	  for IPv6 only.
 
 comment "BusyBox' traceroute6 is selected!"
         depends on BUSYBOX_TRACEROUTE6
diff --git a/rules/iputils.make b/rules/iputils.make
index dc93d5cbb..9bd68fb45 100644
--- a/rules/iputils.make
+++ b/rules/iputils.make
@@ -16,11 +16,11 @@ PACKAGES-$(PTXCONF_IPUTILS) += iputils
 #
 # Paths and names
 #
-IPUTILS_VERSION	:= s20121221
-IPUTILS_MD5	:= 6072aef64205720dd1893b375e184171
+IPUTILS_VERSION	:= s20161105
+IPUTILS_MD5	:= 06f0be2dabe10dc80fdb328073230e69
 IPUTILS		:= iputils-$(IPUTILS_VERSION)
-IPUTILS_SUFFIX	:= tar.bz2
-IPUTILS_URL	:= http://www.skbuff.net/iputils/$(IPUTILS).$(IPUTILS_SUFFIX)
+IPUTILS_SUFFIX	:= tar.gz
+IPUTILS_URL	:= http://codeload.github.com/iputils/iputils/$(IPUTILS_SUFFIX)/$(IPUTILS_VERSION)
 IPUTILS_SOURCE	:= $(SRCDIR)/$(IPUTILS).$(IPUTILS_SUFFIX)
 IPUTILS_DIR	:= $(BUILDDIR)/$(IPUTILS)
 IPUTILS_LICENSE	:= GPL-2.0
@@ -34,16 +34,20 @@ IPUTILS_TOOLS-y					:=
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_ARPING)		+= arping
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_CLOCKDIFF)	+= clockdiff
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_PING)		+= ping
-IPUTILS_TOOLS-$(PTXCONF_IPUTILS_PING6)		+= ping6
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_RARPD)		+= rarpd
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_RDISC)		+= rdisc
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_TFTPD)		+= tftpd
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_TRACEPATH)	+= tracepath
-IPUTILS_TOOLS-$(PTXCONF_IPUTILS_TRACEPATH6)	+= tracepath6
 IPUTILS_TOOLS-$(PTXCONF_IPUTILS_TRACEROUTE6)	+= traceroute6
 
 IPUTILS_CONF_TOOL	:= NO
-IPUTILS_MAKEVARS	:= $(CROSS_ENV) TARGETS="$(IPUTILS_TOOLS-y)"
+IPUTILS_MAKEVARS	:= \
+	$(CROSS_ENV) \
+	USE_IDN=no \
+	USE_GCRYPT=$(call ptx/ifdef, PTXCONF_IPUTILS_GCRYPT, yes, no) \
+	USE_NETTLE=$(call ptx/ifdef, PTXCONF_IPUTILS_NETTLE, yes, no) \
+	USE_CRYPTO=$(call ptx/ifdef, PTXCONF_IPUTILS_OPENSSL, shared, no) \
+	TARGETS="$(IPUTILS_TOOLS-y)"
 
 # ----------------------------------------------------------------------------
 # Install
-- 
2.11.0


_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-03-10  9:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-24 23:13 [ptxdist] [PATCH v2] iputils: update s20121221 -> s20161105 Clemens Gruber
2017-01-25  6:41 ` Uwe Kleine-König
2017-01-26 10:40   ` Michael Olbrich
2017-01-26 10:47     ` Marc Kleine-Budde
2017-01-28 16:15       ` Clemens Gruber
2017-03-10  9:45 ` Michael Olbrich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox