]> granicus.if.org Git - shadow/commitdiff
* src/newgrp.c, src/chfn.c, src/groupmems.c, src/usermod.c,
authornekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
Thu, 30 Apr 2009 21:39:38 +0000 (21:39 +0000)
committernekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
Thu, 30 Apr 2009 21:39:38 +0000 (21:39 +0000)
src/userdel.c, src/chpasswd.c, src/grpck.c, src/gpasswd.c,
src/groupdel.c, src/chgpasswd.c, src/vipw.c, src/useradd.c,
src/su.c, src/groupmod.c, src/passwd.c, src/pwck.c,
src/groupadd.c, src/chage.c, src/login.c, src/faillog.c,
src/sulogin.c, src/chsh.c, src/pwconv.c: Added splint annotations.
* src/userdel.c, src/pwconv.c, src/lastlog.c, src/grpck.c,
src/vipw.c, src/groupmod.c, src/passwd.c, src/pwck.c, src/login.c,
src/sulogin.c, src/usermod.c: Use return instead of exit at the
end of main().
* src/gpasswd.c, src/passwd.c, src/faillog.c: Use the exitcodes.h
exit codes.
* src/chpasswd.c: Added missing ||.
* src/nologin.c: Do not include exitcodes.h.
* src/nologin.c: Added brackets.
* src/nologin.c: Avoid assignments in comparisons.

26 files changed:
ChangeLog
src/chage.c
src/chfn.c
src/chgpasswd.c
src/chpasswd.c
src/chsh.c
src/faillog.c
src/gpasswd.c
src/groupadd.c
src/groupdel.c
src/groupmems.c
src/groupmod.c
src/grpck.c
src/lastlog.c
src/login.c
src/newgrp.c
src/nologin.c
src/passwd.c
src/pwck.c
src/pwconv.c
src/su.c
src/sulogin.c
src/useradd.c
src/userdel.c
src/usermod.c
src/vipw.c

index f76d16d72ced0fddab27e19b2d1da0572e77936e..1e1bcad0baf28d6e058b9230f3596cbf3ae68f51 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,22 @@
+2009-04-30  Nicolas François  <nicolas.francois@centraliens.net>
+
+       * src/newgrp.c, src/chfn.c, src/groupmems.c, src/usermod.c,
+       src/userdel.c, src/chpasswd.c, src/grpck.c, src/gpasswd.c,
+       src/groupdel.c, src/chgpasswd.c, src/vipw.c, src/useradd.c,
+       src/su.c, src/groupmod.c, src/passwd.c, src/pwck.c,
+       src/groupadd.c, src/chage.c, src/login.c, src/faillog.c,
+       src/sulogin.c, src/chsh.c, src/pwconv.c: Added splint annotations.
+       * src/userdel.c, src/pwconv.c, src/lastlog.c, src/grpck.c,
+       src/vipw.c, src/groupmod.c, src/passwd.c, src/pwck.c, src/login.c,
+       src/sulogin.c, src/usermod.c: Use return instead of exit at the
+       end of main().
+       * src/gpasswd.c, src/passwd.c, src/faillog.c: Use the exitcodes.h
+       exit codes.
+       * src/chpasswd.c: Added missing ||.
+       * src/nologin.c: Do not include exitcodes.h.
+       * src/nologin.c: Added brackets.
+       * src/nologin.c: Avoid assignments in comparisons.
+
 2009-04-30  Nicolas François  <nicolas.francois@centraliens.net>
 
        * libmisc/getgr_nam_gid.c, lib/get_gid.c, lib/get_pid.c,
index 8bdc0e718052426f1cce3d19464b435c258856a4..4a28890f6e5d4abd846b1fe9d27b3ec0ea243009 100644 (file)
 #include <selinux/selinux.h>
 #include <selinux/av_permissions.h>
 #endif
-#include "exitcodes.h"
 #include "prototypes.h"
 #include "defines.h"
 #include "pwio.h"
 #include "shadowio.h"
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Global variables
  */
index c73ef8c5fdafe261c8a9697a499e59c33ecf14a8..677fc2f0e8eb0e114f140c6831d75630d566e9ea 100644 (file)
@@ -44,7 +44,6 @@
 #include <selinux/av_permissions.h>
 #endif
 #include "defines.h"
-#include "exitcodes.h"
 #include "getdef.h"
 #include "nscd.h"
 #ifdef USE_PAM
@@ -53,6 +52,9 @@
 #include "prototypes.h"
 #include "pwauth.h"
 #include "pwio.h"
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Global variables.
  */
index 945d3130538e4c1806e820a3b9fdbeec6fb87c82..d49d1413cb89ee7701410facdff2211d6c01205d 100644 (file)
 #endif                         /* USE_PAM */
 #endif                         /* ACCT_TOOLS_SETUID */
 #include "defines.h"
-#include "exitcodes.h"
 #include "nscd.h"
 #include "prototypes.h"
 #include "groupio.h"
 #ifdef SHADOWGRP
 #include "sgroupio.h"
 #endif
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Global variables
  */
index b8c66a336841d1056dee4bb26c21e6d4b600c109..676b0f35042f4ba95484d66968b41c7684fb5b38 100644 (file)
 #include "pam_defs.h"
 #endif                         /* USE_PAM */
 #include "defines.h"
-#include "exitcodes.h"
 #include "nscd.h"
 #include "prototypes.h"
 #include "pwio.h"
 #include "shadowio.h"
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Global variables
  */
@@ -494,8 +496,8 @@ int main (int argc, char **argv)
 
 #else                          /* !USE_PAM */
                if (   !eflg
-                   && ((NULL == crypt_method)
-                       (0 != strcmp (crypt_method, "NONE")))) {
+                   && (   (NULL == crypt_method)
+                       || (0 != strcmp (crypt_method, "NONE")))) {
                        void *arg = NULL;
                        if (md5flg) {
                                crypt_method = "MD5";
index a33be57b3ab63ee0a9216992aea109dc2f192587..b50b4f7e883989d7d9497e658cf2450f41d481d8 100644 (file)
@@ -44,7 +44,6 @@
 #include <selinux/av_permissions.h>
 #endif
 #include "defines.h"
-#include "exitcodes.h"
 #include "getdef.h"
 #include "nscd.h"
 #include "prototypes.h"
@@ -53,6 +52,9 @@
 #ifdef USE_PAM
 #include "pam_defs.h"
 #endif
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 #ifndef SHELLS_FILE
 #define SHELLS_FILE "/etc/shells"
 #endif
index 4bfcb1f4afe300d8fa49fbdaa3dec9ae80499f21..a47ee20e90f2bb47ba8c8cbb4eeb94cffc943223 100644 (file)
 #include <time.h>
 #include <assert.h>
 #include "defines.h"
-#include "exitcodes.h"
 #include "faillog.h"
 #include "prototypes.h"
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Global variables
  */
@@ -498,7 +500,7 @@ int main (int argc, char **argv)
                                        fprintf (stderr,
                                                 _("%s: invalid numeric argument '%s'\n"),
                                                 "faillog", optarg);
-                                       usage ();
+                                       exit (E_BAD_ARG);
                                }
                                lflg = true;
                                break;
@@ -507,7 +509,7 @@ int main (int argc, char **argv)
                                        fprintf (stderr,
                                                 _("%s: invalid numeric argument '%s'\n"),
                                                 "faillog", optarg);
-                                       usage ();
+                                       exit (E_BAD_ARG);
                                }
                                mflg = true;
                                break;
@@ -519,7 +521,7 @@ int main (int argc, char **argv)
                                        fprintf (stderr,
                                                 _("%s: invalid numeric argument '%s'\n"),
                                                 "faillog", optarg);
-                                       usage ();
+                                       exit (E_BAD_ARG);
                                }
                                seconds = (time_t) days * DAY;
                                tflg = true;
@@ -550,7 +552,7 @@ int main (int argc, char **argv)
                                                fprintf (stderr,
                                                         _("lastlog: Unknown user or range: %s\n"),
                                                         optarg);
-                                               exit (EXIT_FAILURE);
+                                               exit (E_BAD_ARG);
                                        }
                                }
 
@@ -579,7 +581,7 @@ int main (int argc, char **argv)
                fprintf (stderr,
                         _("faillog: Cannot open %s: %s\n"),
                         FAILLOG_FILE, strerror (errno));
-               exit (EXIT_FAILURE);
+               exit (E_NOPERM);
        }
 
        /* Get the size of the faillog */
@@ -587,7 +589,7 @@ int main (int argc, char **argv)
                fprintf (stderr,
                         _("faillog: Cannot get the size of %s: %s\n"),
                         FAILLOG_FILE, strerror (errno));
-               exit (EXIT_FAILURE);
+               exit (E_NOPERM);
        }
 
        if (lflg) {
@@ -608,6 +610,6 @@ int main (int argc, char **argv)
 
        fclose (fail);
 
-       exit (errors ? EXIT_FAILURE : EXIT_SUCCESS);
+       exit (errors ? E_NOPERM : E_SUCCESS);
 }
 
index fd1d8fc1dd266d3aea317dd1a2c415dd55245d08..5def9a8973e5793de5a2e92c1758b431230b7836 100644 (file)
 #include <stdio.h>
 #include <sys/types.h>
 #include "defines.h"
-#include "exitcodes.h"
 #include "groupio.h"
 #include "nscd.h"
 #include "prototypes.h"
 #ifdef SHADOWGRP
 #include "sgroupio.h"
 #endif
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Global variables
  */
@@ -220,7 +222,7 @@ static void failure (void)
 {
        fprintf (stderr, _("%s: Permission denied.\n"), Prog);
        log_gpasswd_failure (": Permission denied");
-       exit (1);
+       exit (E_NOPERM);
 }
 
 /*
@@ -248,9 +250,9 @@ static void process_flags (int argc, char **argv)
                        /* local, no need for xgetpwnam */
                        if (getpwnam (user) == NULL) {
                                fprintf (stderr,
-                                        _("%s: user '%s' does not exist\n"), Prog,
-                                        user);
-                               exit (1);
+                                        _("%s: user '%s' does not exist\n"),
+                                        Prog, user);
+                               exit (E_BAD_ARG);
                        }
                        break;
 #ifdef SHADOWGRP
@@ -259,11 +261,11 @@ static void process_flags (int argc, char **argv)
                                fprintf (stderr,
                                         _("%s: shadow group passwords required for -A\n"),
                                         Prog);
-                               exit (2);
+                               exit (E_GSHADOW_NOTFOUND);
                        }
                        admins = optarg;
                        if (!is_valid_user_list (admins)) {
-                               exit (1);
+                               exit (E_BAD_ARG);
                        }
                        Aflg = true;
                        break;
@@ -277,7 +279,7 @@ static void process_flags (int argc, char **argv)
                case 'M':       /* set the list of members */
                        members = optarg;
                        if (!is_valid_user_list (members)) {
-                               exit (1);
+                               exit (E_BAD_ARG);
                        }
                        Mflg = true;
                        break;
@@ -345,7 +347,7 @@ static void open_files (void)
                fprintf (stderr,
                         _("%s: cannot lock %s; try again later.\n"),
                         Prog, gr_dbname ());
-               exit (1);
+               exit (E_NOPERM);
        }
        add_cleanup (cleanup_unlock_group, NULL);
 
@@ -355,7 +357,7 @@ static void open_files (void)
                        fprintf (stderr,
                                 _("%s: cannot lock %s; try again later.\n"),
                                 Prog, sgr_dbname ());
-                       exit (1);
+                       exit (E_NOPERM);
                }
                add_cleanup (cleanup_unlock_gshadow, NULL);
        }
@@ -368,7 +370,7 @@ static void open_files (void)
                         _("%s: cannot open %s\n"),
                         Prog, gr_dbname ());
                SYSLOG ((LOG_WARN, "cannot open %s", gr_dbname ()));
-               exit (1);
+               exit (E_NOPERM);
        }
 
 #ifdef SHADOWGRP
@@ -378,7 +380,7 @@ static void open_files (void)
                                 _("%s: cannot open %s\n"),
                                 Prog, sgr_dbname ());
                        SYSLOG ((LOG_WARN, "cannot open %s", sgr_dbname ()));
-                       exit (1);
+                       exit (E_NOPERM);
                }
                add_cleanup (log_gpasswd_failure_gshadow, NULL);
        }
@@ -669,7 +671,7 @@ static void close_files (void)
                fprintf (stderr,
                         _("%s: failure while writing changes to %s\n"),
                         Prog, gr_dbname ());
-               exit (1);
+               exit (E_NOPERM);
        }
        add_cleanup (log_gpasswd_success_group, NULL);
        del_cleanup (log_gpasswd_failure_group);
@@ -683,7 +685,7 @@ static void close_files (void)
                        fprintf (stderr,
                                 _("%s: failure while writing changes to %s\n"),
                                 Prog, sgr_dbname ());
-                       exit (1);
+                       exit (E_NOPERM);
                }
                add_cleanup (log_gpasswd_success_gshadow, NULL);
                del_cleanup (log_gpasswd_failure_gshadow);
@@ -815,7 +817,7 @@ static void get_group (struct group *gr)
        if (gr_open (O_RDONLY) == 0) {
                fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ());
                SYSLOG ((LOG_WARN, "cannot open %s", gr_dbname ()));
-               exit (1);
+               exit (E_NOPERM);
        }
 
        tmpgr = gr_locate (group);
@@ -823,7 +825,7 @@ static void get_group (struct group *gr)
                fprintf (stderr,
                         _("%s: group '%s' does not exist in %s\n"),
                         Prog, group, gr_dbname ());
-               exit (1);
+               exit (E_BAD_ARG);
        }
 
        *gr = *tmpgr;
@@ -838,7 +840,7 @@ static void get_group (struct group *gr)
                SYSLOG ((LOG_ERR,
                         "failure while closing read-only %s",
                         gr_dbname ()));
-               exit (1);
+               exit (E_NOPERM);
        }
 
 #ifdef SHADOWGRP
@@ -848,7 +850,7 @@ static void get_group (struct group *gr)
                                 _("%s: cannot open %s\n"),
                                 Prog, sgr_dbname ());
                        SYSLOG ((LOG_WARN, "cannot open %s", sgr_dbname ()));
-                       exit (1);
+                       exit (E_NOPERM);
                }
                tmpsg = sgr_locate (group);
                if (NULL != tmpsg) {
@@ -884,7 +886,7 @@ static void get_group (struct group *gr)
                        SYSLOG ((LOG_ERR,
                                 "failure while closing read-only %s",
                                 sgr_dbname ()));
-                       exit (1);
+                       exit (E_NOPERM);
                }
        }
 #endif                         /* SHADOWGRP */
@@ -1010,7 +1012,7 @@ int main (int argc, char **argv)
                SYSLOG ((LOG_WARN,
                         "Cannot determine the user name of the caller (UID %lu)",
                         (unsigned long) getuid ()));
-               exit (1);
+               exit (E_NOPERM);
        }
        myname = xstrdup (pw->pw_name);
 
@@ -1020,7 +1022,7 @@ int main (int argc, char **argv)
         */
        if (atexit (do_cleanups) != 0) {
                fprintf(stderr, "%s: cannot set exit function\n", Prog);
-               exit(EXIT_FAILURE);
+               exit (1);
        }
 
        /* Parse the options */
@@ -1106,7 +1108,7 @@ int main (int argc, char **argv)
                        fprintf (stderr,
                                 _("%s: user '%s' is not a member of '%s'\n"),
                                 Prog, user, group);
-                       exit (1);
+                       exit (E_BAD_ARG);
                }
                goto output;
        }
@@ -1144,7 +1146,7 @@ int main (int argc, char **argv)
         */
        if ((isatty (0) == 0) || (isatty (1) == 0)) {
                fprintf (stderr, _("%s: Not a tty\n"), Prog);
-               exit (1);
+               exit (E_NOPERM);
        }
 
        catch_signals (0);      /* save tty modes */
@@ -1175,7 +1177,7 @@ int main (int argc, char **argv)
                fputs (_("Cannot change ID to root.\n"), stderr);
                SYSLOG ((LOG_ERR, "can't setuid(0)"));
                closelog ();
-               exit (1);
+               exit (E_NOPERM);
        }
        pwd_init ();
 
index b81163b70ed61f8b3f62cef2523d57108b6fee5d..d2a14dfeb083c5660f4d01a05f03bac27b8799be 100644 (file)
@@ -59,6 +59,7 @@
 /*
  * exit status values
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_USAGE                2       /* invalid command syntax */
 #define E_BAD_ARG      3       /* invalid argument to option */
index aec63faf6229251d87560abaef76f6bdda8c8a6a..569cec4e055c18c0cef1a7ea4241da6dc46b4e12 100644 (file)
@@ -67,6 +67,7 @@ static bool is_shadow_grp;
 /*
  * exit status values
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_USAGE                2       /* invalid command syntax */
 #define E_NOTFOUND     6       /* specified group doesn't exist */
index 8c1ff669ee508f96578c4a02fc390159c80547c4..b16fea34d9f6ff46431d6b8fabc2208dab4eb44b 100644 (file)
@@ -49,7 +49,7 @@
 #endif
 
 /* Exit Status Values */
-
+/*@-exitarg@*/
 #define EXIT_SUCCESS           0       /* success */
 #define EXIT_USAGE             1       /* invalid command syntax */
 #define EXIT_GROUP_FILE                2       /* group file access problems */
index 9029c51a2fea0dfc285a9197b3ee2292f11f4c36..568e278456347304e4e8e1aa42e47891ecbcb4a6 100644 (file)
@@ -58,6 +58,7 @@
 /*
  * exit status values
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_USAGE                2       /* invalid command syntax */
 #define E_BAD_ARG      3       /* invalid argument to option */
@@ -813,7 +814,6 @@ int main (int argc, char **argv)
 
        nscd_flush_cache ("group");
 
-       exit (E_SUCCESS);
-       /* NOT REACHED */
+       return E_SUCCESS;
 }
 
index cdc4252693597d5b2f301dc2af97ea86be89abb8..ca4d72e18d9c7d56a1b34106888f3bd562b7967f 100644 (file)
@@ -53,7 +53,7 @@
 /*
  * Exit codes
  */
-
+/*@-exitarg@*/
 #define        E_OKAY          0
 #define        E_USAGE         1
 #define        E_BAD_ENTRY     2
@@ -840,6 +840,6 @@ int main (int argc, char **argv)
                }
        }
 
-       exit ((0 != errors) ? E_BAD_ENTRY : E_OKAY);
+       return ((0 != errors) ? E_BAD_ENTRY : E_OKAY);
 }
 
index 39dd8939311fc9fb185bdeb794ca77cfa88662e8..4aa81fb0ccdb6cf3a79833d291a076a5c7c5b38e 100644 (file)
@@ -296,6 +296,7 @@ int main (int argc, char **argv)
        print ();
 
        (void) fclose (lastlogfile);
-       exit (EXIT_SUCCESS);
+
+       return EXIT_SUCCESS;
 }
 
index 2f8fc48161aec9293fe3fbb5d03815fb1c3e5f97..f480e7b4a1e2454bd7c6b77a0a4705eee5f5be35 100644 (file)
@@ -51,7 +51,9 @@
 #include "getdef.h"
 #include "prototypes.h"
 #include "pwauth.h"
+/*@-exitarg@*/
 #include "exitcodes.h"
+
 #ifdef USE_PAM
 #include "pam_defs.h"
 
@@ -1324,8 +1326,7 @@ int main (int argc, char **argv)
                /* exec the shell finally */
                err = shell (pwd->pw_shell, (char *) 0, newenvp);
        }
-       exit (err == ENOENT ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
-       /* NOT REACHED */
-       return 0;
+
+       return ((err == ENOENT) ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
 }
 
index e8169b4e56d4538688f2e6b289b43f64c223bb8b..1b19b90a100a2723ccb09ff05fafacc67447df1d 100644 (file)
@@ -42,7 +42,9 @@
 #include "defines.h"
 #include "getdef.h"
 #include "prototypes.h"
+/*@-exitarg@*/
 #include "exitcodes.h"
+
 /*
  * Global variables
  */
@@ -345,7 +347,7 @@ static void syslog_sg (const char *name, const char *group)
                                         (unsigned long) gid, name));
                        }
                        closelog ();
-                       exit (EXIT_SUCCESS);
+                       exit (E_SUCCESS);
                }
 
                /* child - restore signals to their default state */
@@ -728,7 +730,7 @@ int main (int argc, char **argv)
                              (unsigned int) getuid (), 0);
 #endif
                perror ("/bin/sh");
-               exit (errno == ENOENT ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
+               exit ((errno == ENOENT) ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
        }
 
        /*
@@ -800,7 +802,7 @@ int main (int argc, char **argv)
         * the previous environment which should be the user's login shell.
         */
        err = shell (prog, initflag ? (char *) 0 : cp, newenvp);
-       exit (err == ENOENT ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
+       exit ((err == ENOENT) ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
        /* @notreached@ */
       failure:
 
index 45e83e6edd2663848cbc015678bdd0e59977d528..07235258cfd759edfb0d5f858a2098ed528a45ec 100644 (file)
 #include <stdio.h>
 #include <syslog.h>
 #include <unistd.h>
-#include "exitcodes.h"
 
 int main (void)
 {
        const char *user, *tty;
 
-       if ((tty = ttyname (0)) == NULL)
+       tty = ttyname (0);
+       if (NULL == tty) {
                tty = "UNKNOWN";
-       if ((user = getlogin ()) == NULL)
+       }
+       user = getlogin ();
+       if (NULL == user) {
                user = "UNKNOWN";
+       }
        openlog ("nologin", LOG_CONS, LOG_AUTH);
        syslog (LOG_CRIT, "Attempted login by %s on %s", user, tty);
        closelog ();
 
        printf ("%s", "This account is currently not available.\n");
-       return E_NOPERM;
+
+       return EXIT_FAILURE;
 }
index 7c90dcb95282a130f6d3c9506cf22c49ec88c92d..cda99885134591b35508929a42ec7d597b86820b 100644 (file)
 #include "pwauth.h"
 #include "pwio.h"
 #include "shadowio.h"
+
 /*
  * exit status values
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_NOPERM       1       /* permission denied */
 #define E_USAGE                2       /* invalid combination of options */
@@ -1004,7 +1006,7 @@ int main (int argc, char **argv)
                if (NULL != user_context) {
                        freecon (user_context);
                }
-               exit(1);
+               exit (E_NOPERM);
        }
 #endif                         /* WITH_SELINUX */
 
@@ -1111,7 +1113,7 @@ int main (int argc, char **argv)
                        printf (_("%s: password expiry information changed."), Prog);
                }
        }
-       exit (E_SUCCESS);
-       /*@notreached@*/
+
+       return E_SUCCESS;
 }
 
index 2483907d6746ea70bebf8ba4c928f5f235ceb8ca..badb3b26d1b44bc90232cc328507f149397163e2 100644 (file)
@@ -51,7 +51,7 @@
 /*
  * Exit codes
  */
-
+/*@-exitarg@*/
 #define        E_OKAY          0
 #define        E_USAGE         1
 #define        E_BADENTRY      2
@@ -707,6 +707,6 @@ int main (int argc, char **argv)
        }
 
        closelog ();
-       exit ((0 != errors) ? E_BADENTRY : E_OKAY);
+       return ((0 != errors) ? E_BADENTRY : E_OKAY);
 }
 
index 86be03caebdfef866dc473aa9ff28d6029c31554..d0a1b399fd2752ed3c3aeab491135a148d0783a9 100644 (file)
 #include "pwio.h"
 #include "shadowio.h"
 #include "nscd.h"
+
 /*
  * exit status values
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_NOPERM       1       /* permission denied */
 #define E_USAGE                2       /* invalid command syntax */
@@ -269,6 +271,6 @@ int main (int argc, char **argv)
 
        nscd_flush_cache ("passwd");
 
-       exit (E_SUCCESS);
+       return E_SUCCESS;
 }
 
index e8a69741f2415a6311c4dacaba00c6fe33424be4..a5a4c7c5069e52404de2b714909c069b2e6082a0 100644 (file)
--- a/src/su.c
+++ b/src/su.c
 #include <sys/types.h>
 #include "prototypes.h"
 #include "defines.h"
-#include "exitcodes.h"
 #include "pwauth.h"
 #include "getdef.h"
 #ifdef USE_PAM
 #include "pam_defs.h"
-#endif
+#endif                         /* USE_PAM */
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * Assorted #defines to control su's behavior
  */
index b129202cd6c918e6fe124fd4b306584f8dd2c952..33955512c79a2b9ff2a598208edca5d5939a1a5d 100644 (file)
@@ -43,7 +43,9 @@
 #include "getdef.h"
 #include "prototypes.h"
 #include "pwauth.h"
+/*@-exitarg@*/
 #include "exitcodes.h"
+
 /*
  * Global variables
  */
@@ -244,7 +246,7 @@ static RETSIGTYPE catch_signals (unused int sig)
 #endif
        /* exec the shell finally. */
        err = shell (pwent.pw_shell, (char *) 0, environ);
-       exit ((err == ENOENT) ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
-        /*NOTREACHED*/ return (0);
+
+       return ((err == ENOENT) ? E_CMD_NOTFOUND : E_CMD_NOEXEC);
 }
 
index 4757fd4d59ef70cfe0d363537a487cf940957b69..04dc5477724a4165e3c9c75f74e39dc1de236ade 100644 (file)
@@ -153,6 +153,7 @@ static bool home_added = false;
 /*
  * exit status values
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_PW_UPDATE    1       /* can't update password file */
 #define E_USAGE                2       /* invalid command syntax */
index b75c7c136a2c9084506c2f881b541550aa5676e4..91c368d36d44d75a8565d317c95a0a86d9d0d870 100644 (file)
 #include "pwauth.h"
 #include "pwio.h"
 #include "shadowio.h"
-#include "exitcodes.h"
 #ifdef SHADOWGRP
 #include "sgroupio.h"
 #endif
+/*@-exitarg@*/
+#include "exitcodes.h"
+
 /*
  * exit status values
  */
@@ -1021,7 +1023,6 @@ int main (int argc, char **argv)
        nscd_flush_cache ("passwd");
        nscd_flush_cache ("group");
 
-       exit ((0 != errors) ? E_HOMEDIR : E_SUCCESS);
-       /* NOT REACHED */
+       return ((0 != errors) ? E_HOMEDIR : E_SUCCESS);
 }
 
index cec2d1ae91d9e22d693d478bc5335d80028c6f6e..4c87f1539bb7b7148c728a66fc13f48f035d3bc4 100644 (file)
 #include "sgroupio.h"
 #endif
 #include "shadowio.h"
+
 /*
  * exit status values
  * for E_GRP_UPDATE and E_NOSPACE (not used yet), other update requests
  * will be implemented (as documented in the Solaris 2.x man page).
  */
+/*@-exitarg@*/
 #define E_SUCCESS      0       /* success */
 #define E_PW_UPDATE    1       /* can't update password file */
 #define E_USAGE                2       /* invalid command syntax */
@@ -1792,8 +1794,7 @@ int main (int argc, char **argv)
                            user_gid, gflg ? user_newgid : user_gid);
        }
 
-       exit (E_SUCCESS);
-       /* NOT REACHED */
+       return E_SUCCESS;
 }
 
 #ifdef WITH_SELINUX
index 0df05302a4536b2e6c4e060a091eb5b299764229..5a3b4b3083b5f8c636932a6d46537c3794e3c404 100644 (file)
@@ -29,6 +29,9 @@
 
 #include <errno.h>
 #include <getopt.h>
+#ifdef WITH_SELINUX                                                            
+#include <selinux/selinux.h>                                                   
+#endif
 #include <signal.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
 #include <utime.h>
 #include "defines.h"
-#include "exitcodes.h"
 #include "groupio.h"
 #include "nscd.h"
 #include "prototypes.h"
 #include "pwio.h"
 #include "sgroupio.h"
 #include "shadowio.h"
-
-#ifdef WITH_SELINUX                                                            
-#include <selinux/selinux.h>                                                   
-#endif
+/*@-exitarg@*/
+#include "exitcodes.h"
 
 #define MSG_WARN_EDIT_OTHER_FILE _( \
        "You have modified %s.\n"\
@@ -406,6 +406,6 @@ int main (int argc, char **argv)
        nscd_flush_cache ("passwd");
        nscd_flush_cache ("group");
 
-       exit (E_SUCCESS);
+       return E_SUCCESS;
 }