summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Somers <asomers@FreeBSD.org>2019-08-23 15:22:20 +0000
committerAlan Somers <asomers@FreeBSD.org>2019-08-23 15:22:20 +0000
commit208ae7b7b4dd9513b0e8c94a240977efb9cd8cbf (patch)
treecc853cb52d61dc815956fc2fa061da454ab0d21f
parent5469a751a260d5bbf3430a88d0c434d069aa344e (diff)
downloadsrc-test-208ae7b7b4dd9513b0e8c94a240977efb9cd8cbf.tar.gz
src-test-208ae7b7b4dd9513b0e8c94a240977efb9cd8cbf.zip
ping6: Rename options for better consistency with ping
Now equivalent options have the same flags, and nonequivalent options have different flags. This is a prelude to merging the two commands. Submitted by: Ján Sučan <sucanjan@gmail.com> MFC: Never Sponsored by: Google LLC (Google Summer of Code 2019) Differential Revision: https://reviews.freebsd.org/D21345
Notes
Notes: svn path=/head/; revision=351423
-rw-r--r--UPDATING5
-rw-r--r--sbin/ping6/ping6.858
-rw-r--r--sbin/ping6/ping6.c54
-rw-r--r--sbin/ping6/tests/Makefile2
-rw-r--r--sbin/ping6/tests/ping6_c1_s8_t1.out (renamed from sbin/ping6/tests/ping6_c1_s8_X1.out)0
-rw-r--r--sbin/ping6/tests/ping6_test.sh12
6 files changed, 68 insertions, 63 deletions
diff --git a/UPDATING b/UPDATING
index 09d9b2a600728..0391baf9b9669 100644
--- a/UPDATING
+++ b/UPDATING
@@ -26,6 +26,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
disable the most expensive debugging functionality run
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
+20190823:
+ Several of ping6's options have been renamed for better consistency
+ with ping. If you use any of -ARWXaghmrtwx, you must update your
+ scripts. See ping6(8) for details.
+
20190727:
The vfs.fusefs.sync_unmount and vfs.fusefs.init_backgrounded sysctls
and the "-o sync_unmount" and "-o init_backgrounded" mount options have
diff --git a/sbin/ping6/ping6.8 b/sbin/ping6/ping6.8
index 99111e2999971..32e6da6146ac8 100644
--- a/sbin/ping6/ping6.8
+++ b/sbin/ping6/ping6.8
@@ -29,7 +29,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 22, 2014
+.Dd August 22, 2019
.Dt PING6 8
.Os
.Sh NAME
@@ -40,23 +40,17 @@ packets to network hosts
.Sh SYNOPSIS
.Nm
.\" without ipsec, or new ipsec
-.Op Fl DdfHmnNoqrRtvwW
+.Op Fl aAdDfHnNoOquvyY
.\" old ipsec
.\" .Op Fl ADdEfmnNqRtvwW
.Bk -words
-.Op Fl a Ar addrtype
-.Ek
-.Bk -words
.Op Fl b Ar bufsiz
.Ek
.Bk -words
.Op Fl c Ar count
.Ek
.Bk -words
-.Op Fl g Ar gateway
-.Ek
-.Bk -words
-.Op Fl h Ar hoplimit
+.Op Fl e Ar gateway
.Ek
.Bk -words
.Op Fl I Ar interface
@@ -65,13 +59,13 @@ packets to network hosts
.Op Fl i Ar wait
.Ek
.Bk -words
-.Op Fl x Ar waittime
+.Op Fl k Ar addrtype
.Ek
.Bk -words
-.Op Fl X Ar timeout
+.Op Fl l Ar preload
.Ek
.Bk -words
-.Op Fl l Ar preload
+.Op Fl m Ar hoplimit
.Ek
.Bk -words
.\" new ipsec
@@ -87,6 +81,12 @@ packets to network hosts
.Op Fl s Ar packetsize
.Ek
.Bk -words
+.Op Fl t Ar timeout
+.Ek
+.Bk -words
+.Op Fl W Ar waittime
+.Ek
+.Bk -words
.Op Ar hops ...
.Ek
.Bk -words
@@ -110,10 +110,10 @@ header formatted as documented in RFC2463.
The options are as follows:
.Bl -tag -width Ds
.\" old ipsec
-.\" .It Fl A
+.\" .It Fl Z
.\" Enables transport-mode IPsec authentication header
.\" (experimental).
-.It Fl a Ar addrtype
+.It Fl k Ar addrtype
Generate ICMPv6 Node Information Node Addresses query, rather than echo-request.
.Ar addrtype
must be a string constructed of the following characters.
@@ -172,7 +172,7 @@ Only the super-user may use this option.
.Bf -emphasis
This can be very hard on a network and should be used with caution.
.Ef
-.It Fl g Ar gateway
+.It Fl e Ar gateway
Specifies to use
.Ar gateway
as the next hop to the destination.
@@ -182,7 +182,7 @@ Specifies to try reverse-lookup of IPv6 addresses.
The
.Nm
utility does not try reverse-lookup unless the option is specified.
-.It Fl h Ar hoplimit
+.It Fl m Ar hoplimit
Set the IPv6 hoplimit.
.It Fl I Ar interface
Source packets with the given interface address.
@@ -197,12 +197,12 @@ The default is to wait for one second between each packet.
This option is incompatible with the
.Fl f
option.
-.It Fl x Ar waittime
+.It Fl W Ar waittime
Time in milliseconds to wait for a reply for each packet sent.
If a reply arrives later,
the packet is not printed as replied,
but considered as replied when calculating statistics.
-.It Fl X Ar timeout
+.It Fl t Ar timeout
Specify a timeout,
in seconds,
before ping exits regardless of how many packets have been received.
@@ -214,12 +214,12 @@ is specified,
sends that many packets as fast as possible before falling into its normal
mode of behavior.
Only the super-user may use this option.
-.It Fl m
+.It Fl u
By default,
.Nm
asks the kernel to fragment packets to fit into the minimum IPv6 MTU.
The
-.Fl m
+.Fl u
option
will suppress the behavior in the following two levels:
when the option is specified once, the behavior will be disabled for
@@ -270,13 +270,13 @@ specifies IPsec policy to be used for the probe.
Quiet output.
Nothing is displayed except the summary lines at startup time and
when finished.
-.It Fl r
+.It Fl a
Audible.
Include a bell
.Tn ( ASCII
0x07)
character in the output when any packet is received.
-.It Fl R
+.It Fl A
Audible.
Output a bell
.Tn ( ASCII
@@ -301,12 +301,12 @@ header data.
You may need to specify
.Fl b
as well to extend socket buffer size.
-.It Fl t
+.It Fl O
Generate ICMPv6 Node Information supported query types query,
rather than echo-request.
.Fl s
has no effect if
-.Fl t
+.Fl O
is specified.
.It Fl v
Verbose output.
@@ -314,20 +314,20 @@ Verbose output.
packets other than
.Tn ECHO_RESPONSE
that are received are listed.
-.It Fl w
+.It Fl y
Generate ICMPv6 Node Information DNS Name query, rather than echo-request.
.Fl s
has no effect if
-.Fl w
+.Fl y
is specified.
-.It Fl W
+.It Fl Y
Same as
-.Fl w ,
+.Fl y ,
but with old packet format based on 03 draft.
This option is present for backward compatibility.
.Fl s
has no effect if
-.Fl w
+.Fl y
is specified.
.It Ar hops
IPv6 addresses for intermediate nodes,
diff --git a/sbin/ping6/ping6.c b/sbin/ping6/ping6.c
index 75b956e87b273..649eadf3bf2ee 100644
--- a/sbin/ping6/ping6.c
+++ b/sbin/ping6/ping6.c
@@ -347,14 +347,14 @@ main(int argc, char *argv[])
#ifdef IPSEC_POLICY_IPSEC
#define ADDOPTS "P:"
#else
-#define ADDOPTS "AE"
+#define ADDOPTS "ZE"
#endif /*IPSEC_POLICY_IPSEC*/
#endif
while ((ch = getopt(argc, argv,
- "a:b:c:DdfHg:h:I:i:l:mnNop:qrRS:s:tvwWx:X:" ADDOPTS)) != -1) {
+ "k:b:c:DdfHe:m:I:i:l:unNop:qaAS:s:OvyYW:t:" ADDOPTS)) != -1) {
#undef ADDOPTS
switch (ch) {
- case 'a':
+ case 'k':
{
char *cp;
@@ -431,13 +431,13 @@ main(int argc, char *argv[])
options |= F_FLOOD;
setbuf(stdout, (char *)NULL);
break;
- case 'g':
+ case 'e':
gateway = optarg;
break;
case 'H':
options |= F_HOSTNAME;
break;
- case 'h': /* hoplimit */
+ case 'm': /* hoplimit */
hoplimit = strtol(optarg, &e, 10);
if (*optarg == '\0' || *e != '\0')
errx(1, "illegal hoplimit %s", optarg);
@@ -481,7 +481,7 @@ main(int argc, char *argv[])
if (preload < 0 || *optarg == '\0' || *e != '\0')
errx(1, "illegal preload value -- %s", optarg);
break;
- case 'm':
+ case 'u':
#ifdef IPV6_USE_MIN_MTU
mflag++;
break;
@@ -506,10 +506,10 @@ main(int argc, char *argv[])
case 'q':
options |= F_QUIET;
break;
- case 'r':
+ case 'a':
options |= F_AUDIBLE;
break;
- case 'R':
+ case 'A':
options |= F_MISSED;
break;
case 'S':
@@ -543,22 +543,22 @@ main(int argc, char *argv[])
MAXDATALEN);
}
break;
- case 't':
+ case 'O':
options &= ~F_NOUSERDATA;
options |= F_SUPTYPES;
break;
case 'v':
options |= F_VERBOSE;
break;
- case 'w':
+ case 'y':
options &= ~F_NOUSERDATA;
options |= F_FQDN;
break;
- case 'W':
+ case 'Y':
options &= ~F_NOUSERDATA;
options |= F_FQDNOLD;
break;
- case 'x':
+ case 'W':
t = strtod(optarg, &e);
if (*e || e == optarg || t > (double)INT_MAX)
err(EX_USAGE, "invalid timing interval: `%s'",
@@ -566,7 +566,7 @@ main(int argc, char *argv[])
options |= F_WAITTIME;
waittime = (int)t;
break;
- case 'X':
+ case 't':
alarmtimeout = strtoul(optarg, &e, 0);
if ((alarmtimeout < 1) || (alarmtimeout == ULONG_MAX))
errx(EX_USAGE, "invalid timeout: `%s'",
@@ -590,7 +590,7 @@ main(int argc, char *argv[])
errx(1, "invalid security policy");
break;
#else
- case 'A':
+ case 'Z':
options |= F_AUTHHDR;
break;
case 'E':
@@ -1835,7 +1835,7 @@ pr_exthdrs(struct msghdr *mhdr)
bufsize = CONTROLLEN - ((caddr_t)CMSG_DATA(cm) - (caddr_t)bufp);
if (bufsize <= 0)
- continue;
+ continue;
switch (cm->cmsg_type) {
case IPV6_HOPOPTS:
printf(" HbH Options: ");
@@ -2783,7 +2783,7 @@ nigroup(char *name, int nig_oldmcprefix)
}
if (valid != 1)
return NULL; /*XXX*/
-
+
if (nig_oldmcprefix) {
/* draft-ietf-ipngwg-icmp-name-lookup */
bcopy(digest, &in6.s6_addr[12], 4);
@@ -2803,27 +2803,27 @@ usage(void)
{
(void)fprintf(stderr,
#if defined(IPSEC) && !defined(IPSEC_POLICY_IPSEC)
- "A"
+ "Z"
#endif
"usage: ping6 [-"
- "Dd"
+ "aADd"
#if defined(IPSEC) && !defined(IPSEC_POLICY_IPSEC)
"E"
#endif
- "fH"
+ "fHnNoOq"
#ifdef IPV6_USE_MIN_MTU
- "m"
+ "u"
#endif
- "nNoqrRtvwW] "
- "[-a addrtype] [-b bufsiz] [-c count] [-g gateway]\n"
- " [-h hoplimit] [-I interface] [-i wait] [-l preload]"
+ "vyY] "
+ "[-b bufsiz] [-c count] [-e gateway]\n"
+ " [-I interface] [-i wait] [-k addrtype] [-l preload] "
+ "[-m hoplimit]\n"
+ " [-p pattern]"
#if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC)
" [-P policy]"
#endif
- "\n"
- " [-p pattern] [-S sourceaddr] [-s packetsize] "
- "[-x waittime]\n"
- " [-X timeout] [hops ...] host\n");
+ " [-S sourceaddr] [-s packetsize]\n"
+ " [-t timeout] [-W waittime] [hops ...] host\n");
exit(1);
}
diff --git a/sbin/ping6/tests/Makefile b/sbin/ping6/tests/Makefile
index a59b5ab47d3d2..f773d23c294ae 100644
--- a/sbin/ping6/tests/Makefile
+++ b/sbin/ping6/tests/Makefile
@@ -3,6 +3,6 @@
PACKAGE= tests
ATF_TESTS_SH+= ping6_test
-${PACKAGE}FILES+= ping6_c1_s8_X1.out
+${PACKAGE}FILES+= ping6_c1_s8_t1.out
.include <bsd.test.mk>
diff --git a/sbin/ping6/tests/ping6_c1_s8_X1.out b/sbin/ping6/tests/ping6_c1_s8_t1.out
index 81c56e6cf586a..81c56e6cf586a 100644
--- a/sbin/ping6/tests/ping6_c1_s8_X1.out
+++ b/sbin/ping6/tests/ping6_c1_s8_t1.out
diff --git a/sbin/ping6/tests/ping6_test.sh b/sbin/ping6/tests/ping6_test.sh
index 4320d60f638a5..d7721d620614c 100644
--- a/sbin/ping6/tests/ping6_test.sh
+++ b/sbin/ping6/tests/ping6_test.sh
@@ -27,21 +27,21 @@
#
# $FreeBSD$
-atf_test_case ping6_c1_s8_X1
-ping6_c1_s8_X1_head() {
+atf_test_case ping6_c1_s8_t1
+ping6_c1_s8_t1_head() {
atf_set "descr" "Stop after receiving 1 ECHO_RESPONSE packet"
}
-ping6_c1_s8_X1_body() {
+ping6_c1_s8_t1_body() {
if ! getaddrinfo -f inet6 localhost 1>/dev/null 2>&1; then
atf_skip "IPv6 is not configured"
fi
atf_check -s exit:0 -o save:std.out -e empty \
- ping6 -c 1 -s 8 -X 1 localhost
- check_ping_statistics std.out $(atf_get_srcdir)/ping6_c1_s8_X1.out
+ ping6 -c 1 -s 8 -t 1 localhost
+ check_ping_statistics std.out $(atf_get_srcdir)/ping6_c1_s8_t1.out
}
atf_init_test_cases() {
- atf_add_test_case ping6_c1_s8_X1
+ atf_add_test_case ping6_c1_s8_t1
}
check_ping_statistics() {