[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