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

nekral-guest at alioth.debian.org nekral-guest at alioth.debian.org
Mon Jun 9 22:08:09 UTC 2008


Author: nekral-guest
Date: 2008-06-09 22:08:08 +0000 (Mon, 09 Jun 2008)
New Revision: 2094

Modified:
   upstream/trunk/ChangeLog
   upstream/trunk/src/useradd.c
Log:
	* src/useradd.c: Use a bool when possible instead of int integers.
	* src/useradd.c: Avoid implicit conversion of pointers / integers
	/ chars to booleans.
	* src/useradd.c: Add brackets and parenthesis.
	* src/useradd.c: Avoid assignments in comparisons.
	* src/useradd.c: Ignore the return value of fclose() for read-only
	files.
	* src/useradd.c: Ignore the return value of fflush() before
	closing the files.
	* src/useradd.c: Avoid multi-statements lines.
	* src/useradd.c: Ignore return value of setlocale(),
	bindtextdomain(), and textdomain().
	* src/useradd.c: Ignore the return value of pam_end() before
	exiting.


Modified: upstream/trunk/ChangeLog
===================================================================
--- upstream/trunk/ChangeLog	2008-06-09 21:18:28 UTC (rev 2093)
+++ upstream/trunk/ChangeLog	2008-06-09 22:08:08 UTC (rev 2094)
@@ -1,5 +1,22 @@
 2008-06-09  Nicolas François  <nicolas.francois at centraliens.net>
 
+	* src/useradd.c: Use a bool when possible instead of int integers.
+	* src/useradd.c: Avoid implicit conversion of pointers / integers
+	/ chars to booleans.
+	* src/useradd.c: Add brackets and parenthesis.
+	* src/useradd.c: Avoid assignments in comparisons.
+	* src/useradd.c: Ignore the return value of fclose() for read-only
+	files.
+	* src/useradd.c: Ignore the return value of fflush() before
+	closing the files.
+	* src/useradd.c: Avoid multi-statements lines.
+	* src/useradd.c: Ignore return value of setlocale(),
+	bindtextdomain(), and textdomain().
+	* src/useradd.c: Ignore the return value of pam_end() before
+	exiting.
+
+2008-06-09  Nicolas François  <nicolas.francois at centraliens.net>
+
 	* src/vipw.c: Use a bool when possible instead of int integers.
 	* src/vipw.c: Ignore the return value of umask(), when the mask is
 	set again to the old value.

Modified: upstream/trunk/src/useradd.c
===================================================================
--- upstream/trunk/src/useradd.c	2008-06-09 21:18:28 UTC (rev 2093)
+++ upstream/trunk/src/useradd.c	2008-06-09 22:08:08 UTC (rev 2094)
@@ -106,41 +106,41 @@
 static const char *create_mail_spool = "";
 
 static long user_expire = -1;
-static int is_shadow_pwd;
+static bool is_shadow_pwd;
 
 #ifdef SHADOWGRP
-static int is_shadow_grp;
-static int gshadow_locked = 0;
+static bool is_shadow_grp;
+static bool gshadow_locked = false;
 #endif
-static int passwd_locked = 0;
-static int group_locked = 0;
-static int shadow_locked = 0;
+static bool passwd_locked = false;
+static bool group_locked = false;
+static bool shadow_locked = false;
 static char **user_groups;	/* NULL-terminated list */
 static long sys_ngroups;
-static int do_grp_update = 0;	/* group files need to be updated */
+static bool do_grp_update = false;	/* group files need to be updated */
 
 static char *Prog;
 
-static int
-    bflg = 0,			/* new default root of home directory */
-    cflg = 0,			/* comment (GECOS) field for new account */
-    dflg = 0,			/* home directory for new account */
-    Dflg = 0,			/* set/show new user default values */
-    eflg = 0,			/* days since 1970-01-01 when account is locked */
-    fflg = 0,			/* days until account with expired password is locked */
-    gflg = 0,			/* primary group ID for new account */
-    Gflg = 0,			/* secondary group set for new account */
-    kflg = 0,			/* specify a directory to fill new user directory */
-    lflg = 0,			/* do not add user to lastlog database file */
-    mflg = 0,			/* create user's home directory if it doesn't exist */
-    Nflg = 0,			/* do not create a group having the same name as the user, but add the user to def_group (or the group specified with -g) */
-    oflg = 0,			/* permit non-unique user ID to be specified with -u */
-    rflg = 0,			/* create a system account */
-    sflg = 0,			/* shell program for new account */
-    uflg = 0,			/* specify user ID for new account */
-    Uflg = 0;			/* create a group having the same name as the user */
+static bool
+    bflg = false,		/* new default root of home directory */
+    cflg = false,		/* comment (GECOS) field for new account */
+    dflg = false,		/* home directory for new account */
+    Dflg = false,		/* set/show new user default values */
+    eflg = false,		/* days since 1970-01-01 when account is locked */
+    fflg = false,		/* days until account with expired password is locked */
+    gflg = false,		/* primary group ID for new account */
+    Gflg = false,		/* secondary group set for new account */
+    kflg = false,		/* specify a directory to fill new user directory */
+    lflg = false,		/* do not add user to lastlog database file */
+    mflg = false,		/* create user's home directory if it doesn't exist */
+    Nflg = false,		/* do not create a group having the same name as the user, but add the user to def_group (or the group specified with -g) */
+    oflg = false,		/* permit non-unique user ID to be specified with -u */
+    rflg = false,		/* create a system account */
+    sflg = false,		/* shell program for new account */
+    uflg = false,		/* specify user ID for new account */
+    Uflg = false;		/* create a group having the same name as the user */
 
-static int home_added;
+static bool home_added = false;
 
 /*
  * exit status values
@@ -237,7 +237,7 @@
 	char *errptr;
 
 	val = strtol (numstr, &errptr, 10);
-	if (*errptr || errno == ERANGE) {
+	if (('\0' != *errptr) || (ERANGE == errno)) {
 		fprintf (stderr, _("%s: invalid numeric argument '%s'\n"), Prog,
 			 numstr);
 		exit (E_BAD_ARG);
@@ -251,7 +251,7 @@
 	char *errptr;
 
 	val = strtol (uidstr, &errptr, 10);
-	if (*errptr || errno == ERANGE || val < 0) {
+	if (('\0' != *errptr) || (ERANGE == errno) || (val < 0)) {
 		fprintf (stderr,
 			 _("%s: invalid numeric argument '%s'\n"), Prog,
 			 uidstr);
@@ -279,19 +279,25 @@
 	 * Open the defaults file for reading.
 	 */
 
-	if (!(fp = fopen (def_file, "r")))
+	fp = fopen (def_file, "r");
+	if (NULL == fp) {
 		return;
+	}
 
 	/*
 	 * Read the file a line at a time. Only the lines that have relevant
 	 * values are used, everything else can be ignored.
 	 */
-	while (fgets (buf, sizeof buf, fp)) {
-		if ((cp = strrchr (buf, '\n')))
+	while (fgets (buf, sizeof buf, fp) == buf) {
+		cp = strrchr (buf, '\n');
+		if (NULL != cp) {
 			*cp = '\0';
+		}
 
-		if (!(cp = strchr (buf, '=')))
+		cp = strchr (buf, '=');
+		if (NULL == cp) {
 			continue;
+		}
 
 		cp++;
 
@@ -305,7 +311,8 @@
 			if (*cp != '\0' && *ep == '\0') { /* valid number */
 				def_group = val;
 				/* local, no need for xgetgrgid */
-				if ((grp = getgrgid (def_group))) {
+				grp = getgrgid (def_group);
+				if (NULL != grp) {
 					def_gname = xstrdup (grp->gr_name);
 				} else {
 					fprintf (stderr,
@@ -313,7 +320,7 @@
 						 Prog, cp);
 				}
 			/* local, no need for xgetgrnam */
-			} else if ((grp = getgrnam (cp))) {
+			} else if ((grp = getgrnam (cp)) != NULL) {
 				def_group = grp->gr_gid;
 				def_gname = xstrdup (cp);
 			} else {
@@ -342,10 +349,11 @@
 		else if (MATCH (buf, INACT)) {
 			long val = strtol (cp, &ep, 10);
 
-			if (*cp || errno == ERANGE)
+			if (('\0' != *cp) || (ERANGE == errno)) {
 				def_inactive = val;
-			else
+			} else {
 				def_inactive = -1;
+			}
 		}
 
 		/*
@@ -359,8 +367,9 @@
 		 * Default Skeleton information
 		 */
 		else if (MATCH (buf, SKEL)) {
-			if (*cp == '\0')
+			if ('\0' == *cp) {
 				cp = SKEL_DIR;	/* XXX warning: const */
+			}
 
 			def_template = xstrdup (cp);
 		}
@@ -369,8 +378,9 @@
 		 * Create by default user mail spool or not ?
 		 */
 		else if (MATCH (buf, CREATE_MAIL_SPOOL)) {
-			if (*cp == '\0')
+			if (*cp == '\0') {
 				cp = CREATE_MAIL_SPOOL;	/* XXX warning: const */
+			}
 
 			def_create_mail_spool = xstrdup (cp);
 		}
@@ -409,24 +419,26 @@
 	static char new_file[] = NEW_USER_FILE;
 	char *cp;
 	int ofd;
-	int out_group = 0;
-	int out_home = 0;
-	int out_inactive = 0;
-	int out_expire = 0;
-	int out_shell = 0;
-	int out_skel = 0;
-	int out_create_mail_spool = 0;
+	bool out_group = false;
+	bool out_home = false;
+	bool out_inactive = false;
+	bool out_expire = false;
+	bool out_shell = false;
+	bool out_skel = false;
+	bool out_create_mail_spool = false;
 
 	/*
 	 * Create a temporary file to copy the new output to.
 	 */
-	if ((ofd = mkstemp (new_file)) == -1) {
+	ofd = mkstemp (new_file);
+	if (-1 == ofd) {
 		fprintf (stderr,
 			 _("%s: cannot create new defaults file\n"), Prog);
 		return -1;
 	}
 
-	if (!(ofp = fdopen (ofd, "w"))) {
+	ofp = fdopen (ofd, "w");
+	if (NULL == ofp) {
 		fprintf (stderr, _("%s: cannot open new defaults file\n"),
 			 Prog);
 		return -1;
@@ -437,42 +449,45 @@
 	 * temporary file, using any new values. Each line is checked
 	 * to insure that it is not output more than once.
 	 */
-	if (!(ifp = fopen (def_file, "r"))) {
+	ifp = fopen (def_file, "r");
+	if (NULL == ifp) {
 		fprintf (ofp, "# useradd defaults file\n");
 		goto skip;
 	}
 
-	while (fgets (buf, sizeof buf, ifp)) {
-		if ((cp = strrchr (buf, '\n')))
+	while (fgets (buf, sizeof buf, ifp) == buf) {
+		cp = strrchr (buf, '\n');
+		if (NULL != cp) {
 			*cp = '\0';
+		}
 
 		if (!out_group && MATCH (buf, DGROUP)) {
 			fprintf (ofp, DGROUP "%u\n", (unsigned int) def_group);
-			out_group++;
+			out_group = true;
 		} else if (!out_home && MATCH (buf, HOME)) {
 			fprintf (ofp, HOME "%s\n", def_home);
-			out_home++;
+			out_home = true;
 		} else if (!out_inactive && MATCH (buf, INACT)) {
 			fprintf (ofp, INACT "%ld\n", def_inactive);
-			out_inactive++;
+			out_inactive = true;
 		} else if (!out_expire && MATCH (buf, EXPIRE)) {
 			fprintf (ofp, EXPIRE "%s\n", def_expire);
-			out_expire++;
+			out_expire = true;
 		} else if (!out_shell && MATCH (buf, SHELL)) {
 			fprintf (ofp, SHELL "%s\n", def_shell);
-			out_shell++;
+			out_shell = true;
 		} else if (!out_skel && MATCH (buf, SKEL)) {
 			fprintf (ofp, SKEL "%s\n", def_template);
-			out_skel++;
+			out_skel = true;
 		} else if (!out_create_mail_spool
 			   && MATCH (buf, CREATE_MAIL_SPOOL)) {
 			fprintf (ofp, CREATE_MAIL_SPOOL "%s\n",
 				 def_create_mail_spool);
-			out_create_mail_spool++;
+			out_create_mail_spool = true;
 		} else
 			fprintf (ofp, "%s\n", buf);
 	}
-	fclose (ifp);
+	(void) fclose (ifp);
 
       skip:
 	/*
@@ -500,8 +515,8 @@
 	 * Flush and close the file. Check for errors to make certain
 	 * the new file is intact.
 	 */
-	fflush (ofp);
-	if (ferror (ofp) || fclose (ofp)) {
+	(void) fflush (ofp);
+	if ((ferror (ofp) != 0) || (fclose (ofp) != 0)) {
 		unlink (new_file);
 		return -1;
 	}
@@ -510,7 +525,7 @@
 	 * Rename the current default file to its backup name.
 	 */
 	snprintf (buf, sizeof buf, "%s-", def_file);
-	if (rename (def_file, buf) && errno != ENOENT) {
+	if ((rename (def_file, buf) != 0) && (ENOENT != errno)) {
 		snprintf (buf, sizeof buf, _("%s: rename: %s"), Prog, def_file);
 		perror (buf);
 		unlink (new_file);
@@ -520,7 +535,7 @@
 	/*
 	 * Rename the new default file to its correct name.
 	 */
-	if (rename (new_file, def_file)) {
+	if (rename (new_file, def_file) != 0) {
 		snprintf (buf, sizeof buf, _("%s: rename: %s"), Prog, new_file);
 		perror (buf);
 		return -1;
@@ -552,8 +567,9 @@
 	int errors = 0;
 	int ngroups = 0;
 
-	if (!*list)
+	if ('\0' == *list) {
 		return 0;
+	}
 
 	/*
 	 * So long as there is some data to be converted, strip off
@@ -564,8 +580,10 @@
 		/*
 		 * Strip off a single name from the list
 		 */
-		if ((cp = strchr (list, ',')))
+		cp = strchr (list, ',');
+		if (NULL != cp) {
 			*cp++ = '\0';
+		}
 
 		/*
 		 * Names starting with digits are treated as numerical
@@ -577,7 +595,7 @@
 		 * There must be a match, either by GID value or by
 		 * string name.
 		 */
-		if (!grp) {
+		if (NULL == grp) {
 			fprintf (stderr, _("%s: unknown group %s\n"),
 				 Prog, list);
 			errors++;
@@ -588,8 +606,9 @@
 		 * If the group doesn't exist, don't dump core...
 		 * Instead, try the next one.  --marekm
 		 */
-		if (!grp)
+		if (NULL == grp) {
 			continue;
+		}
 
 #ifdef	USE_NIS
 		/*
@@ -616,15 +635,16 @@
 		 * Add the group name to the user's list of groups.
 		 */
 		user_groups[ngroups++] = xstrdup (grp->gr_name);
-	} while (list);
+	} while (NULL != list);
 
 	user_groups[ngroups] = (char *) 0;
 
 	/*
 	 * Any errors in finding group names are fatal
 	 */
-	if (errors)
+	if (0 != errors) {
 		return -1;
+	}
 
 	return 0;
 }
@@ -767,7 +787,7 @@
 		 * from the old entry, and we need it later.
 		 */
 		ngrp = __gr_dup (grp);
-		if (!ngrp) {
+		if (NULL == ngrp) {
 			fprintf (stderr,
 				 _("%s: Out of memory. Cannot update the group database.\n"),
 				 Prog);
@@ -779,7 +799,7 @@
 		 * update the group entry to reflect the change.
 		 */
 		ngrp->gr_mem = add_list (ngrp->gr_mem, user_name);
-		if (!gr_update (ngrp)) {
+		if (gr_update (ngrp) == 0) {
 			fprintf (stderr,
 				 _("%s: error adding new group entry\n"), Prog);
 			fail_exit (E_GRP_UPDATE);
@@ -801,13 +821,13 @@
 	 * that the user is a member of. The administrative list isn't
 	 * modified.
 	 */
-	for (sgr_rewind (), sgrp = sgr_next (); sgrp; sgrp = sgr_next ()) {
+	for (sgr_rewind (), sgrp = sgr_next (); NULL != sgrp; sgrp = sgr_next ()) {
 
 		/*
 		 * See if the user specified this group as one of their
 		 * concurrent groups.
 		 */
-		if (!gr_locate (sgrp->sg_name))
+		if (gr_locate (sgrp->sg_name) == NULL)
 			continue;
 
 		if (!is_on_list (user_groups, sgrp->sg_name))
@@ -818,7 +838,7 @@
 		 * from the old entry, and we need it later.
 		 */
 		nsgrp = __sgr_dup (sgrp);
-		if (!nsgrp) {
+		if (NULL == nsgrp) {
 			fprintf (stderr,
 				 _("%s: Out of memory. Cannot update the shadow group database.\n"),
 				 Prog);
@@ -830,7 +850,7 @@
 		 * update the group entry to reflect the change.
 		 */
 		nsgrp->sg_mem = add_list (nsgrp->sg_mem, user_name);
-		if (!sgr_update (nsgrp)) {
+		if (sgr_update (nsgrp) == 0) {
 			fprintf (stderr,
 				 _("%s: error adding new group entry\n"), Prog);
 			fail_exit (E_GRP_UPDATE);
@@ -855,7 +875,7 @@
 static void process_flags (int argc, char **argv)
 {
 	const struct group *grp;
-	int anyflag = 0;
+	bool anyflag = false;
 	char *cp;
 
 	{
@@ -899,7 +919,7 @@
 					exit (E_BAD_ARG);
 				}
 				def_home = optarg;
-				bflg++;
+				bflg = true;
 				break;
 			case 'c':
 				if (!VALID (optarg)) {
@@ -910,7 +930,7 @@
 					exit (E_BAD_ARG);
 				}
 				user_comment = optarg;
-				cflg++;
+				cflg = true;
 				break;
 			case 'd':
 				if (!VALID (optarg)
@@ -922,15 +942,15 @@
 					exit (E_BAD_ARG);
 				}
 				user_home = optarg;
-				dflg++;
+				dflg = true;
 				break;
 			case 'D':
 				if (anyflag)
 					usage ();
-				Dflg++;
+				Dflg = true;
 				break;
 			case 'e':
-				if (*optarg) {
+				if ('\0' != *optarg) {
 					user_expire = strtoday (optarg);
 					if (user_expire == -1) {
 						fprintf (stderr,
@@ -945,7 +965,7 @@
 				/*
 				 * -e "" is allowed - it's a no-op without /etc/shadow
 				 */
-				if (*optarg && !is_shadow_pwd) {
+				if (('\0' != *optarg) && !is_shadow_pwd) {
 					fprintf (stderr,
 						 _
 						 ("%s: shadow passwords required for -e\n"),
@@ -954,25 +974,25 @@
 				}
 				if (Dflg)
 					def_expire = optarg;
-				eflg++;
+				eflg = true;
 				break;
 			case 'f':
 				def_inactive = get_number (optarg);
 				/*
 				 * -f -1 is allowed - it's a no-op without /etc/shadow
 				 */
-				if (def_inactive != -1 && !is_shadow_pwd) {
+				if ((-1 != def_inactive) && !is_shadow_pwd) {
 					fprintf (stderr,
 						 _
 						 ("%s: shadow passwords required for -f\n"),
 						 Prog);
 					exit (E_USAGE);
 				}
-				fflg++;
+				fflg = true;
 				break;
 			case 'g':
 				grp = getgr_nam_gid (optarg);
-				if (!grp) {
+				if (NULL == grp) {
 					fprintf (stderr,
 						 _
 						 ("%s: unknown group %s\n"),
@@ -985,21 +1005,23 @@
 				} else {
 					user_gid = grp->gr_gid;
 				}
-				gflg++;
+				gflg = true;
 				break;
 			case 'G':
-				if (get_groups (optarg))
+				if (get_groups (optarg) != 0) {
 					exit (E_NOTFOUND);
-				if (user_groups[0])
-					do_grp_update++;
-				Gflg++;
+				}
+				if (NULL != user_groups[0]) {
+					do_grp_update = true;
+				}
+				Gflg = true;
 				break;
 			case 'h':
 				usage ();
 				break;
 			case 'k':
 				def_template = optarg;
-				kflg++;
+				kflg = true;
 				break;
 			case 'K':
 				/*
@@ -1008,7 +1030,7 @@
 				 * note: -K UID_MIN=10,UID_MAX=499 doesn't work yet
 				 */
 				cp = strchr (optarg, '=');
-				if (!cp) {
+				if (NULL == cp) {
 					fprintf (stderr,
 						 _
 						 ("%s: -K requires KEY=VALUE\n"),
@@ -1016,21 +1038,22 @@
 					exit (E_BAD_ARG);
 				}
 				/* terminate name, point to value */
-				*cp++ = '\0';
+				*cp = '\0';
+				cp++;
 				if (putdef_str (optarg, cp) < 0)
 					exit (E_BAD_ARG);
 				break;
 			case 'l':
-				lflg++;
+				lflg = true;
 				break;
 			case 'm':
-				mflg++;
+				mflg = true;
 				break;
 			case 'N':
-				Nflg++;
+				Nflg = true;
 				break;
 			case 'o':
-				oflg++;
+				oflg = true;
 				break;
 			case 'p':	/* set encrypted password */
 				if (!VALID (optarg)) {
@@ -1043,13 +1066,13 @@
 				user_pass = optarg;
 				break;
 			case 'r':
-				rflg++;
+				rflg = true;
 				break;
 			case 's':
 				if (!VALID (optarg)
-				    || (optarg[0]
-					&& (optarg[0] != '/'
-					    && optarg[0] != '*'))) {
+				    || (   ('\0' != optarg[0])
+				        && ('/'  != optarg[0])
+				        && ('*'  != optarg[0]))) {
 					fprintf (stderr,
 						 _
 						 ("%s: invalid shell '%s'\n"),
@@ -1058,19 +1081,19 @@
 				}
 				user_shell = optarg;
 				def_shell = optarg;
-				sflg++;
+				sflg = true;
 				break;
 			case 'u':
 				user_id = get_uid (optarg);
-				uflg++;
+				uflg = true;
 				break;
 			case 'U':
-				Uflg++;
+				Uflg = true;
 				break;
 			default:
 				usage ();
 			}
-			anyflag++;
+			anyflag = true;
 		}
 	}
 
@@ -1167,23 +1190,23 @@
  */
 static void close_files (void)
 {
-	if (!pw_close ()) {
+	if (pw_close () == 0) {
 		fprintf (stderr, _("%s: cannot rewrite password file\n"), Prog);
 		fail_exit (E_PW_UPDATE);
 	}
-	if (is_shadow_pwd && !spw_close ()) {
+	if (is_shadow_pwd && (spw_close () == 0)) {
 		fprintf (stderr,
 			 _("%s: cannot rewrite shadow password file\n"), Prog);
 		fail_exit (E_PW_UPDATE);
 	}
 	if (do_grp_update) {
-		if (!gr_close ()) {
+		if (gr_close () == 0) {
 			fprintf (stderr,
 				 _("%s: cannot rewrite group file\n"), Prog);
 			fail_exit (E_GRP_UPDATE);
 		}
 #ifdef	SHADOWGRP
-		if (is_shadow_grp && !sgr_close ()) {
+		if (is_shadow_grp && (sgr_close () == 0)) {
 			fprintf (stderr,
 				 _
 				 ("%s: cannot rewrite shadow group file\n"),
@@ -1194,16 +1217,16 @@
 	}
 	if (is_shadow_pwd) {
 		spw_unlock ();
-		shadow_locked--;
+		shadow_locked = false;
 	}
 	pw_unlock ();
-	passwd_locked--;
+	passwd_locked = false;
 	gr_unlock ();
-	group_locked--;
+	group_locked = false;
 #ifdef	SHADOWGRP
 	if (is_shadow_grp) {
 		sgr_unlock ();
-		gshadow_locked--;
+		gshadow_locked = false;
 	}
 #endif
 }
@@ -1215,7 +1238,7 @@
  */
 static void open_files (void)
 {
-	if (!pw_lock ()) {
+	if (pw_lock () == 0) {
 		fprintf (stderr, _("%s: unable to lock password file\n"), Prog);
 #ifdef WITH_AUDIT
 		audit_logger (AUDIT_USER_CHAUTHTOK, Prog,
@@ -1223,8 +1246,8 @@
 #endif
 		exit (E_PW_UPDATE);
 	}
-	passwd_locked++;
-	if (!pw_open (O_RDWR)) {
+	passwd_locked = true;
+	if (pw_open (O_RDWR) == 0) {
 		fprintf (stderr, _("%s: unable to open password file\n"), Prog);
 #ifdef WITH_AUDIT
 		audit_logger (AUDIT_USER_CHAUTHTOK, Prog,
@@ -1233,7 +1256,7 @@
 		fail_exit (E_PW_UPDATE);
 	}
 	if (is_shadow_pwd) {
-		if (!spw_lock ()) {
+		if (spw_lock () == 0) {
 			fprintf (stderr,
 			         _("%s: cannot lock shadow password file\n"),
 			         Prog);
@@ -1244,8 +1267,8 @@
 #endif
 			fail_exit (E_PW_UPDATE);
 		}
-		shadow_locked++;
-		if (!spw_open (O_RDWR)) {
+		shadow_locked = true;
+		if (spw_open (O_RDWR) == 0) {
 			fprintf (stderr,
 			         _("%s: cannot open shadow password file\n"),
 			         Prog);
@@ -1261,25 +1284,25 @@
 	/*
 	 * Lock and open the group file.
 	 */
-	if (!gr_lock ()) {
+	if (gr_lock () == 0) {
 		fprintf (stderr, _("%s: error locking group file\n"), Prog);
 		fail_exit (E_GRP_UPDATE);
 	}
-	group_locked++;
-	if (!gr_open (O_RDWR)) {
+	group_locked = true;
+	if (gr_open (O_RDWR) == 0) {
 		fprintf (stderr, _("%s: error opening group file\n"), Prog);
 		fail_exit (E_GRP_UPDATE);
 	}
 #ifdef  SHADOWGRP
 	if (is_shadow_grp) {
-		if (!sgr_lock ()) {
+		if (sgr_lock () == 0) {
 			fprintf (stderr,
 			         _("%s: error locking shadow group file\n"),
 			         Prog);
 			fail_exit (E_GRP_UPDATE);
 		}
-		gshadow_locked++;
-		if (!sgr_open (O_RDWR)) {
+		gshadow_locked = true;
+		if (sgr_open (O_RDWR) == 0) {
 			fprintf (stderr,
 			         _("%s: error opening shadow group file\n"),
 			         Prog);
@@ -1351,7 +1374,7 @@
 	/*
 	 * Write out the new group file entry.
 	 */
-	if (!gr_update (&grp)) {
+	if (gr_update (&grp) == 0) {
 		fprintf (stderr, _("%s: error adding new group entry\n"), Prog);
 		fail_exit (E_GRP_UPDATE);
 	}
@@ -1359,13 +1382,13 @@
 	/*
 	 * Write out the new shadow group entries as well.
 	 */
-	if (is_shadow_grp && !sgr_update (&sgrp)) {
+	if (is_shadow_grp && (sgr_update (&sgrp) == 0)) {
 		fprintf (stderr, _("%s: error adding new group entry\n"), Prog);
 		fail_exit (E_GRP_UPDATE);
 	}
 #endif				/* SHADOWGRP */
 	SYSLOG ((LOG_INFO, "new group: name=%s, GID=%u", user_name, user_gid));
-	do_grp_update++;
+	do_grp_update = true;
 }
 
 static void faillog_reset (uid_t uid)
@@ -1438,7 +1461,7 @@
 	/*
 	 * Put the new (struct passwd) in the table.
 	 */
-	if (!pw_update (&pwent)) {
+	if (pw_update (&pwent) == 0) {
 		fprintf (stderr,
 			 _("%s: error adding new password entry\n"), Prog);
 		fail_exit (E_PW_UPDATE);
@@ -1447,7 +1470,7 @@
 	/*
 	 * Put the new (struct spwd) in the table.
 	 */
-	if (is_shadow_pwd && !spw_update (&spent)) {
+	if (is_shadow_pwd && (spw_update (&spent) == 0)) {
 		fprintf (stderr,
 			 _
 			 ("%s: error adding new shadow password entry\n"),
@@ -1466,8 +1489,9 @@
 	/*
 	 * Do any group file updates for this user.
 	 */
-	if (do_grp_update)
+	if (do_grp_update) {
 		grp_update ();
+	}
 }
 
 /*
@@ -1479,9 +1503,9 @@
  */
 static void create_home (void)
 {
-	if (access (user_home, F_OK)) {
+	if (access (user_home, F_OK) != 0) {
 		/* XXX - create missing parent directories.  --marekm */
-		if (mkdir (user_home, 0)) {
+		if (mkdir (user_home, 0) != 0) {
 			fprintf (stderr,
 				 _
 				 ("%s: cannot create directory %s\n"),
@@ -1496,7 +1520,7 @@
 		chown (user_home, user_id, user_gid);
 		chmod (user_home,
 		       0777 & ~getdef_num ("UMASK", GETDEF_DEFAULT_UMASK));
-		home_added++;
+		home_added = true;
 #ifdef WITH_AUDIT
 		audit_logger (AUDIT_USER_CHAUTHTOK, Prog,
 			      "adding home directory", user_name, user_id, 1);
@@ -1533,7 +1557,7 @@
 		}
 
 		gr = getgrnam ("mail"); /* local, no need for xgetgrnam */
-		if (!gr) {
+		if (NULL == gr) {
 			fputs (_("Group 'mail' not found. Creating the user mailbox file with 0600 mode.\n"),
 			       stderr);
 			gid = user_gid;
@@ -1543,8 +1567,10 @@
 			mode = 0660;
 		}
 
-		if (fchown (fd, user_id, gid) || fchmod (fd, mode))
+		if (   (fchown (fd, user_id, gid) != 0)
+		    || (fchmod (fd, mode) != 0)) {
 			perror (_("Setting mailbox file permissions"));
+		}
 
 		close (fd);
 	}
@@ -1569,9 +1595,9 @@
 	 */
 	Prog = Basename (argv[0]);
 
-	setlocale (LC_ALL, "");
-	bindtextdomain (PACKAGE, LOCALEDIR);
-	textdomain (PACKAGE);
+	(void) setlocale (LC_ALL, "");
+	(void) bindtextdomain (PACKAGE, LOCALEDIR);
+	(void) textdomain (PACKAGE);
 
 	OPENLOG ("useradd");
 
@@ -1602,27 +1628,27 @@
 			retval = PAM_USER_UNKNOWN;
 		}
 
-		if (retval == PAM_SUCCESS) {
+		if (PAM_SUCCESS == retval) {
 			retval = pam_start ("useradd", pampw->pw_name,
 					    &conv, &pamh);
 		}
 	}
 
-	if (retval == PAM_SUCCESS) {
+	if (PAM_SUCCESS == retval) {
 		retval = pam_authenticate (pamh, 0);
-		if (retval != PAM_SUCCESS) {
-			pam_end (pamh, retval);
+		if (PAM_SUCCESS != retval) {
+			(void) pam_end (pamh, retval);
 		}
 	}
 
-	if (retval == PAM_SUCCESS) {
+	if (PAM_SUCCESS == retval) {
 		retval = pam_acct_mgmt (pamh, 0);
-		if (retval != PAM_SUCCESS) {
-			pam_end (pamh, retval);
+		if (PAM_SUCCESS != retval) {
+			(void) pam_end (pamh, retval);
 		}
 	}
 
-	if (retval != PAM_SUCCESS) {
+	if (PAM_SUCCESS != retval) {
 		fprintf (stderr, _("%s: PAM authentication failed\n"), Prog);
 		fail_exit (1);
 	}
@@ -1633,8 +1659,9 @@
 	 * a new user.
 	 */
 	if (Dflg) {
-		if (gflg || bflg || fflg || eflg || sflg)
-			exit (set_defaults ()? 1 : 0);
+		if (gflg || bflg || fflg || eflg || sflg) {
+			exit ((set_defaults () != 0) ? 1 : 0);
+		}
 
 		show_defaults ();
 		exit (E_SUCCESS);
@@ -1643,7 +1670,7 @@
 	/*
 	 * Start with a quick check to see if the user exists.
 	 */
-	if (getpwnam (user_name)) { /* local, no need for xgetpwnam */
+	if (getpwnam (user_name) != NULL) { /* local, no need for xgetpwnam */
 		fprintf (stderr, _("%s: user %s exists\n"), Prog, user_name);
 #ifdef WITH_AUDIT
 		audit_logger (AUDIT_USER_CHAUTHTOK, Prog, "adding user",
@@ -1659,7 +1686,8 @@
 	 * --bero
 	 */
 	if (Uflg) {
-		if (getgrnam (user_name)) { /* local, no need for xgetgrnam */
+		/* local, no need for xgetgrnam */
+		if (getgrnam (user_name) != NULL) {
 			fprintf (stderr,
 				 _
 				 ("%s: group %s exists - if you want to add this user to that group, use -g.\n"),
@@ -1728,7 +1756,7 @@
 				  "Not copying any file from skel directory into it.\n"),
 				 Prog);
 
-	} else if (getdef_str ("CREATE_HOME")) {
+	} else if (getdef_str ("CREATE_HOME") != NULL) {
 		/*
 		 * RedHat added the CREATE_HOME option in login.defs in their
 		 * version of shadow-utils (which makes -m the default, with
@@ -1755,9 +1783,11 @@
 	nscd_flush_cache ("group");
 
 #ifdef USE_PAM
-	if (retval == PAM_SUCCESS)
-		pam_end (pamh, PAM_SUCCESS);
+	if (PAM_SUCCESS == retval) {
+		(void) pam_end (pamh, PAM_SUCCESS);
+	}
 #endif				/* USE_PAM */
 
 	return E_SUCCESS;
 }
+




More information about the Pkg-shadow-commits mailing list