svn commit: r357078 - stable/12/usr.bin/showmount

Eitan Adler eadler at FreeBSD.org
Fri Jan 24 14:22:10 UTC 2020


Author: eadler
Date: Fri Jan 24 14:22:09 2020
New Revision: 357078
URL: https://svnweb.freebsd.org/changeset/base/357078

Log:
  MFC r355647:
  	[showmount] implement long options
  
  	add long options support to showmount. Where mappings exist use the GNU
  	names for said options.
  
  Relnotes:	yes

Modified:
  stable/12/usr.bin/showmount/showmount.8
  stable/12/usr.bin/showmount/showmount.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.bin/showmount/showmount.8
==============================================================================
--- stable/12/usr.bin/showmount/showmount.8	Fri Jan 24 13:05:53 2020	(r357077)
+++ stable/12/usr.bin/showmount/showmount.8	Fri Jan 24 14:22:09 2020	(r357078)
@@ -67,20 +67,20 @@ for a detailed description of the protocol.
 .Pp
 The following options are available:
 .Bl -tag -width indent
-.It Fl a
+.It Fl a , Fl -all
 List all mount points in the form:
 .Bd -ragged -offset indent -compact
 .Ar host : Ns Ar dirpath .
 .Ed
-.It Fl d
+.It Fl d , Fl -directories
 List directory paths of mount points instead of hosts.
-.It Fl E
+.It Fl E , Fl -exports-script
 Show the
 .Ar host Ns 's
 exports list in a script-friendly format.
 Client addresses and the header are not shown, and special
 characters are escaped.
-.It Fl e
+.It Fl e , Fl -exports
 Show the
 .Ar host Ns 's
 exports list.

Modified: stable/12/usr.bin/showmount/showmount.c
==============================================================================
--- stable/12/usr.bin/showmount/showmount.c	Fri Jan 24 13:05:53 2020	(r357077)
+++ stable/12/usr.bin/showmount/showmount.c	Fri Jan 24 14:22:09 2020	(r357078)
@@ -53,6 +53,7 @@ static const char rcsid[] =
 #include <sys/socketvar.h>
 
 #include <err.h>
+#include <getopt.h>
 #include <netdb.h>
 #include <rpc/rpc.h>
 #include <rpc/pmap_clnt.h>
@@ -102,6 +103,14 @@ int xdr_exportslist(XDR *, struct exportslist **);
 int tcp_callrpc(const char *host, int prognum, int versnum, int procnum,
 		xdrproc_t inproc, char *in, xdrproc_t outproc, char *out);
 
+static const struct option long_opts[] = {
+	{ "all",			no_argument,	NULL,	'a' },
+	{ "directories",	no_argument,	NULL,	'd' },
+	{ "exports-script",	no_argument,	NULL,	'E' },
+	{ "exports",		no_argument,	NULL,	'e' },
+	{ NULL,				0,				NULL,	0 },
+};
+
 /*
  * This command queries the NFS mount daemon for it's mount list and/or
  * it's exports list and prints them out.
@@ -119,7 +128,7 @@ main(int argc, char **argv)
 	const char *host;
 	int ch, estat, nbytes;
 
-	while ((ch = getopt(argc, argv, "adEe13")) != -1)
+	while ((ch = getopt_long(argc, argv, "+adEe13", long_opts, NULL)) != -1)
 		switch (ch) {
 		case 'a':
 			if (type == 0) {


More information about the svn-src-all mailing list