[Pkg-shadow-commits] r3556 - in upstream/trunk: . man src

Nicolas FRANÇOIS nekral-guest at alioth.debian.org
Sun Nov 6 18:39:36 UTC 2011


Author: nekral-guest
Date: 2011-11-06 18:39:36 +0000 (Sun, 06 Nov 2011)
New Revision: 3556

Modified:
   upstream/trunk/ChangeLog
   upstream/trunk/man/grpck.8.xml
   upstream/trunk/man/pwck.8.xml
   upstream/trunk/src/grpck.c
   upstream/trunk/src/pwck.c
Log:
	* src/pwck.c, man/pwck.8.xml: Add support for long options.
	* src/pwck.c, man/pwck.8.xml: Add -h/--help option
	* src/grpck.c, man/grpck.8.xml: Add support for long options.
	* src/grpck.c, man/grpck.8.xml: Add -h/--help option

Modified: upstream/trunk/ChangeLog
===================================================================
--- upstream/trunk/ChangeLog	2011-11-06 18:39:30 UTC (rev 3555)
+++ upstream/trunk/ChangeLog	2011-11-06 18:39:36 UTC (rev 3556)
@@ -1,3 +1,10 @@
+2011-10-31  Nicolas François  <nicolas.francois at centraliens.net>
+
+	* src/pwck.c, man/pwck.8.xml: Add support for long options.
+	* src/pwck.c, man/pwck.8.xml: Add -h/--help option
+	* src/grpck.c, man/grpck.8.xml: Add support for long options.
+	* src/grpck.c, man/grpck.8.xml: Add -h/--help option
+
 2011-10-30  Nicolas François  <nicolas.francois at centraliens.net>
 
 	* src/expiry.c, man/expiry.1.xml: Add support for long options.

Modified: upstream/trunk/man/grpck.8.xml
===================================================================
--- upstream/trunk/man/grpck.8.xml	2011-11-06 18:39:30 UTC (rev 3555)
+++ upstream/trunk/man/grpck.8.xml	2011-11-06 18:39:36 UTC (rev 3556)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
    Copyright (c) 1992 - 1993, Julianne Frances Haugh
-   Copyright (c) 2007 - 2009, Nicolas François
+   Copyright (c) 2007 - 2011, Nicolas François
    All rights reserved.
   
    Redistribution and use in source and binary forms, with or without
@@ -49,7 +49,8 @@
 
   <refsynopsisdiv id='synopsis'>
     <cmdsynopsis>
-      <command>grpck</command>    <arg choice='opt'>-r </arg>
+      <command>grpck</command>
+      <arg choice='opt'>options</arg>
       <arg choice='opt'>
 	<arg choice='plain'><replaceable>group</replaceable></arg>
 	<arg choice='opt' condition="gshadow">
@@ -57,15 +58,6 @@
 	</arg>
       </arg>
     </cmdsynopsis>
-    <cmdsynopsis>
-      <command>grpck</command>    <arg choice='opt'>-s </arg>
-      <arg choice='opt'>
-	<arg choice='plain'><replaceable>group</replaceable></arg>
-	<arg choice='opt' condition="gshadow">
-	  <arg choice='plain'><replaceable>shadow</replaceable></arg>
-	</arg>
-      </arg>
-    </cmdsynopsis>
   </refsynopsisdiv>
 
   <refsect1 id='description'>
@@ -135,12 +127,22 @@
   <refsect1 id='options'>
     <title>OPTIONS</title>
     <para>
+      The <option>-r</option> and <option>-s</option> options cannot be
+      combined.
+    </para>
+    <para>
       The options which apply to the <command>grpck</command> command are:
     </para>
     <variablelist remap='IP'>
       <varlistentry>
-	<term><option>-r</option></term>
+	<term><option>-h</option>, <option>--help</option></term>
 	<listitem>
+	  <para>Display help message and exit.</para>
+	</listitem>
+      </varlistentry>
+      <varlistentry>
+	<term><option>-r</option>, <option>--read-only</option></term>
+	<listitem>
 	  <para>
 	    Execute the <command>grpck</command> command in read-only mode.
 	    This causes all questions regarding changes to be answered
@@ -149,7 +151,7 @@
 	</listitem>
       </varlistentry>
       <varlistentry>
-	<term><option>-s</option></term>
+	<term><option>-s</option>, <option>--sort</option></term>
 	<listitem>
 	  <para>
 	    Sort entries in <filename>/etc/group</filename>

Modified: upstream/trunk/man/pwck.8.xml
===================================================================
--- upstream/trunk/man/pwck.8.xml	2011-11-06 18:39:30 UTC (rev 3555)
+++ upstream/trunk/man/pwck.8.xml	2011-11-06 18:39:36 UTC (rev 3556)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
    Copyright (c) 1992       , Julianne Frances Haugh
-   Copyright (c) 2007 - 2009, Nicolas François
+   Copyright (c) 2007 - 2011, Nicolas François
    All rights reserved.
   
    Redistribution and use in source and binary forms, with or without
@@ -55,8 +55,7 @@
   <refsynopsisdiv id='synopsis'>
     <cmdsynopsis>
       <command>pwck</command>
-      <arg choice='opt'>-q </arg>
-      <arg choice='opt'>-s </arg>
+      <arg choice='opt'>options</arg>
       <arg choice='opt'>
 	<arg choice='plain'>
 	  <replaceable>passwd</replaceable>
@@ -68,21 +67,6 @@
 	</arg>
       </arg>
     </cmdsynopsis>
-    <cmdsynopsis>
-      <command>pwck</command>
-      <arg choice='opt'>-q </arg>
-      <arg choice='opt'>-r </arg>
-      <arg choice='opt'>
-	<arg choice='plain'>
-	  <replaceable>passwd</replaceable>
-	</arg>
-	<arg choice='opt'>
-	<arg choice='plain'>
-	  <replaceable>shadow</replaceable>
-	</arg>
-	</arg>
-      </arg>
-    </cmdsynopsis>
   </refsynopsisdiv>
 
   <refsect1 id='description'>
@@ -172,14 +156,22 @@
   <refsect1 id='options'>
     <title>OPTIONS</title>
     <para>
+      The <option>-r</option> and <option>-s</option> options cannot be
+      combined.
+    </para>
+    <para>
       The options which apply to the <command>pwck</command> command are:
     </para>
     <variablelist remap='IP'>
       <varlistentry>
-	<term>
-	  <option>-q</option>
-	</term>
+	<term><option>-h</option>, <option>--help</option></term>
 	<listitem>
+	  <para>Display help message and exit.</para>
+	</listitem>
+      </varlistentry>
+      <varlistentry>
+	<term><option>-q</option>, <option>--quiet</option></term>
+	<listitem>
 	  <para>
 	    Report errors only. The warnings which do not require any
 	    action from the user won't be displayed.
@@ -187,9 +179,7 @@
 	</listitem>
       </varlistentry>
       <varlistentry>
-	<term>
-	  <option>-r</option>
-	</term>
+	<term><option>-r</option>, <option>--read-only</option></term>
 	<listitem>
 	  <para>
 	    Execute the <command>pwck</command> command in read-only mode.
@@ -197,9 +187,7 @@
 	</listitem>
       </varlistentry>
       <varlistentry>
-	<term>
-	  <option>-s</option>
-	</term>
+	<term><option>-s</option>, <option>--sort</option></term>
 	<listitem>
 	  <para>
 	    Sort entries in <filename>/etc/passwd</filename> and

Modified: upstream/trunk/src/grpck.c
===================================================================
--- upstream/trunk/src/grpck.c	2011-11-06 18:39:30 UTC (rev 3555)
+++ upstream/trunk/src/grpck.c	2011-11-06 18:39:36 UTC (rev 3556)
@@ -39,6 +39,7 @@
 #include <grp.h>
 #include <pwd.h>
 #include <stdio.h>
+#include <getopt.h>
 #include "chkname.h"
 #include "commonio.h"
 #include "defines.h"
@@ -55,6 +56,7 @@
  */
 /*@-exitarg@*/
 #define	E_OKAY		0
+#define	E_SUCCESS	0
 #define	E_USAGE		1
 #define	E_BAD_ENTRY	2
 #define	E_CANT_OPEN	3
@@ -82,7 +84,7 @@
 
 /* local function prototypes */
 static void fail_exit (int status);
-static void usage (void);
+static /*@noreturn@*/void usage (int status);
 static void delete_member (char **, const char *);
 static void process_flags (int argc, char **argv);
 static void open_files (void);
@@ -134,14 +136,28 @@
 /*
  * usage - print syntax message and exit
  */
-static void usage (void)
+static /*@noreturn@*/void usage (int status)
 {
+	FILE *usageout = (E_SUCCESS != status) ? stderr : stdout;
 #ifdef	SHADOWGRP
-	fprintf (stderr, _("Usage: %s [-r] [-s] [group [gshadow]]\n"), Prog);
-#else
-	fprintf (stderr, _("Usage: %s [-r] [-s] [group]\n"), Prog);
-#endif
-	exit (E_USAGE);
+	(void) fprintf (usageout,
+	                _("Usage: %s [options] [group [gshadow]]\n"
+	                  "\n"
+	                  "Options:\n"),
+	                Prog);
+#else				/* !SHADOWGRP */
+	(void) fprintf (usageout,
+	                _("Usage: %s [options] [group]\n"
+	                  "\n"
+	                  "Options:\n"),
+	                Prog);
+#endif				/* !SHADOWGRP */
+	(void) fputs (_("  -h, --help                    display this help message and exit\n"), usageout);
+	(void) fputs (_("  -r, --read-only               display errors and warnings\n"
+	                "                                but do not change files\n"), usageout);
+	(void) fputs (_("  -s, --sort                    sort entries by UID\n"), usageout);
+	(void) fputs ("\n", usageout);
+	exit (status);
 }
 
 /*
@@ -173,13 +189,24 @@
  */
 static void process_flags (int argc, char **argv)
 {
-	int arg;
+	int c;
+	static struct option long_options[] = {
+		{"help",      no_argument, NULL, 'h'},
+		{"quiet",     no_argument, NULL, 'q'},
+		{"read-only", no_argument, NULL, 'r'},
+		{"sort",      no_argument, NULL, 's'},
+		{NULL, 0, NULL, '\0'}
+	};
 
 	/*
 	 * Parse the command line arguments
 	 */
-	while ((arg = getopt (argc, argv, "qrs")) != EOF) {
-		switch (arg) {
+	while ((c = getopt_long (argc, argv, "hqrs",
+	                         long_options, NULL)) != -1) {
+		switch (c) {
+		case 'h':
+			usage (E_SUCCESS);
+			/*@notreached@*/break;
 		case 'q':
 			/* quiet - ignored for now */
 			break;
@@ -190,12 +217,12 @@
 			sort_mode = true;
 			break;
 		default:
-			usage ();
+			usage (E_USAGE);
 		}
 	}
 
 	if (sort_mode && read_only) {
-		fprintf (stderr, _("%s: -s and -r are incompatibile\n"), Prog);
+		fprintf (stderr, _("%s: -s and -r are incompatible\n"), Prog);
 		exit (E_USAGE);
 	}
 
@@ -208,7 +235,7 @@
 	if (argc > (optind + 1))
 #endif
 	{
-		usage ();
+		usage (E_USAGE);
 	}
 
 	/*

Modified: upstream/trunk/src/pwck.c
===================================================================
--- upstream/trunk/src/pwck.c	2011-11-06 18:39:30 UTC (rev 3555)
+++ upstream/trunk/src/pwck.c	2011-11-06 18:39:36 UTC (rev 3556)
@@ -3,7 +3,7 @@
  * Copyright (c) 1996 - 2000, Marek Michałkiewicz
  * Copyright (c) 2001       , Michał Moskal
  * Copyright (c) 2001 - 2006, Tomasz Kłoczko
- * Copyright (c) 2007 - 2010, Nicolas François
+ * Copyright (c) 2007 - 2011, Nicolas François
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -39,6 +39,7 @@
 #include <grp.h>
 #include <pwd.h>
 #include <stdio.h>
+#include <getopt.h>
 #include "chkname.h"
 #include "commonio.h"
 #include "defines.h"
@@ -56,6 +57,7 @@
  */
 /*@-exitarg@*/
 #define	E_OKAY		0
+#define	E_SUCCESS	0
 #define	E_USAGE		1
 #define	E_BADENTRY	2
 #define	E_CANTOPEN	3
@@ -86,7 +88,7 @@
 
 /* local function prototypes */
 static void fail_exit (int code);
-static void usage (void);
+static /*@noreturn@*/void usage (int status);
 static void process_flags (int argc, char **argv);
 static void open_files (void);
 static void close_files (bool changed);
@@ -127,20 +129,37 @@
 /*
  * usage - print syntax message and exit
  */
-static void usage (void)
+static /*@noreturn@*/void usage (int status)
 {
+	FILE *usageout = (E_SUCCESS != status) ? stderr : stdout;
 #ifdef WITH_TCB
 	if (getdef_bool ("USE_TCB")) {
-		fprintf (stderr, _("Usage: %s [-q] [-r] [passwd]\n"),
-		         Prog);
+		(void) fprintf (usageout,
+		                _("Usage: %s [options] [passwd]\n"
+		                  "\n"
+		                  "Options:\n"),
+		                Prog);
 	} else
 #endif				/* WITH_TCB */
 	{
-		fprintf (stderr,
-		         _("Usage: %s [-q] [-r] [-s] [passwd [shadow]]\n"),
-		         Prog);
+		(void) fprintf (usageout,
+		                _("Usage: %s [options] [passwd [shadow]]\n"
+		                  "\n"
+		                  "Options:\n"),
+		                Prog);
 	}
-	exit (E_USAGE);
+	(void) fputs (_("  -h, --help                    display this help message and exit\n"), usageout);
+	(void) fputs (_("  -q, --quiet                   report errors only\n"), usageout);
+	(void) fputs (_("  -r, --read-only               display errors and warnings\n"
+	                "                                but do not change files\n"), usageout);
+#ifdef WITH_TCB
+	if (!getdef_bool ("USE_TCB")) {
+#endif				/* !WITH_TCB */
+	{
+		(void) fputs (_("  -s, --sort                    sort entries by UID\n"), usageout);
+	}
+	(void) fputs ("\n", usageout);
+	exit (status);
 }
 
 /*
@@ -150,13 +169,24 @@
  */
 static void process_flags (int argc, char **argv)
 {
-	int arg;
+	int c;
+	static struct option long_options[] = {
+		{"help",      no_argument, NULL, 'h'},
+		{"quiet",     no_argument, NULL, 'q'},
+		{"read-only", no_argument, NULL, 'r'},
+		{"sort",      no_argument, NULL, 's'},
+		{NULL, 0, NULL, '\0'}
+	};
 
 	/*
 	 * Parse the command line arguments
 	 */
-	while ((arg = getopt (argc, argv, "eqrs")) != EOF) {
-		switch (arg) {
+	while ((c = getopt_long (argc, argv, "ehqrs",
+	                         long_options, NULL)) != -1) {
+		switch (c) {
+		case 'h':
+			usage (E_SUCCESS);
+			/*@notreached@*/break;
 		case 'e':	/* added for Debian shadow-961025-2 compatibility */
 		case 'q':
 			quiet = true;
@@ -168,7 +198,7 @@
 			sort_mode = true;
 			break;
 		default:
-			usage ();
+			usage (E_USAGE);
 		}
 	}
 
@@ -181,7 +211,7 @@
 	 * Make certain we have the right number of arguments
 	 */
 	if ((argc < optind) || (argc > (optind + 2))) {
-		usage ();
+		usage (E_USAGE);
 	}
 
 	/*
@@ -198,7 +228,7 @@
 			fprintf (stderr,
 			         _("%s: no alternative shadow file allowed when USE_TCB is enabled.\n"),
 			         Prog);
-			usage ();
+			usage (E_USAGE);
 		}
 #endif				/* WITH_TCB */
 		spw_setdbname (argv[optind + 1]);




More information about the Pkg-shadow-commits mailing list