* src/faillog.c: Add annotations to indicate that usage() does not
return. * src/faillog.c: Fix message: this is faillog, not lastlog. * src/faillog.c: Check that there are no extra arguments after parsing the options.
This commit is contained in:
parent
1def4ef49d
commit
495125415b
@ -1,3 +1,11 @@
|
|||||||
|
2011-07-23 Nicolas François <nicolas.francois@centraliens.net>
|
||||||
|
|
||||||
|
* src/faillog.c: Add annotations to indicate that usage() does not
|
||||||
|
return.
|
||||||
|
* src/faillog.c: Fix message: this is faillog, not lastlog.
|
||||||
|
* src/faillog.c: Check that there are no extra arguments after
|
||||||
|
parsing the options.
|
||||||
|
|
||||||
2011-07-23 Nicolas François <nicolas.francois@centraliens.net>
|
2011-07-23 Nicolas François <nicolas.francois@centraliens.net>
|
||||||
|
|
||||||
* src/chgpasswd.c: Add annotations to indicate that usage() does
|
* src/chgpasswd.c: Add annotations to indicate that usage() does
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
* Copyright (c) 1989 - 1993, Julianne Frances Haugh
|
* Copyright (c) 1989 - 1993, Julianne Frances Haugh
|
||||||
* Copyright (c) 1996 - 2000, Marek Michałkiewicz
|
* Copyright (c) 1996 - 2000, Marek Michałkiewicz
|
||||||
* Copyright (c) 2002 - 2006, Tomasz Kłoczko
|
* Copyright (c) 2002 - 2006, Tomasz Kłoczko
|
||||||
* Copyright (c) 2007 - 2010, Nicolas François
|
* Copyright (c) 2007 - 2011, Nicolas François
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@ -48,7 +48,7 @@
|
|||||||
#include "exitcodes.h"
|
#include "exitcodes.h"
|
||||||
|
|
||||||
/* local function prototypes */
|
/* local function prototypes */
|
||||||
static void usage (int status);
|
static /*@noreturn@*/void usage (int status);
|
||||||
static void print_one (/*@null@*/const struct passwd *pw, bool force);
|
static void print_one (/*@null@*/const struct passwd *pw, bool force);
|
||||||
static void set_locktime (long locktime);
|
static void set_locktime (long locktime);
|
||||||
static bool set_locktime_one (uid_t uid, long locktime);
|
static bool set_locktime_one (uid_t uid, long locktime);
|
||||||
@ -80,7 +80,7 @@ static struct stat statbuf; /* fstat buffer for file size */
|
|||||||
|
|
||||||
#define NOW (time((time_t *) 0))
|
#define NOW (time((time_t *) 0))
|
||||||
|
|
||||||
static void usage (int status)
|
static /*@noreturn@*/void usage (int status)
|
||||||
{
|
{
|
||||||
FILE *usageout = (E_SUCCESS != status) ? stderr : stdout;
|
FILE *usageout = (E_SUCCESS != status) ? stderr : stdout;
|
||||||
(void) fprintf (usageout,
|
(void) fprintf (usageout,
|
||||||
@ -587,7 +587,7 @@ int main (int argc, char **argv)
|
|||||||
break;
|
break;
|
||||||
case 'h':
|
case 'h':
|
||||||
usage (E_SUCCESS);
|
usage (E_SUCCESS);
|
||||||
break;
|
/*@notreached@*/break;
|
||||||
case 'l':
|
case 'l':
|
||||||
if (getlong (optarg, &fail_locktime) == 0) {
|
if (getlong (optarg, &fail_locktime) == 0) {
|
||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
@ -643,7 +643,7 @@ int main (int argc, char **argv)
|
|||||||
&umin, &has_umin,
|
&umin, &has_umin,
|
||||||
&umax, &has_umax) == 0) {
|
&umax, &has_umax) == 0) {
|
||||||
fprintf (stderr,
|
fprintf (stderr,
|
||||||
_("lastlog: Unknown user or range: %s\n"),
|
_("faillog: Unknown user or range: %s\n"),
|
||||||
optarg);
|
optarg);
|
||||||
exit (E_BAD_ARG);
|
exit (E_BAD_ARG);
|
||||||
}
|
}
|
||||||
@ -655,6 +655,12 @@ int main (int argc, char **argv)
|
|||||||
usage (E_USAGE);
|
usage (E_USAGE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (argc > optind) {
|
||||||
|
fprintf (stderr,
|
||||||
|
_("faillog: unexpected argument: %s\n"),
|
||||||
|
argv[optind]);
|
||||||
|
usage (EXIT_FAILURE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tflg && (lflg || mflg || rflg)) {
|
if (tflg && (lflg || mflg || rflg)) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user