Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 11 Jul 2015 21:09:51 +0000 (UTC)
From:      Baptiste Daroussin <bapt@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r285408 - head/usr.sbin/pw
Message-ID:  <201507112109.t6BL9pGO013533@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bapt
Date: Sat Jul 11 21:09:50 2015
New Revision: 285408
URL: https://svnweb.freebsd.org/changeset/base/285408

Log:
  check the gecos format early: at the moment the -c option is parsed

Modified:
  head/usr.sbin/pw/pw.c
  head/usr.sbin/pw/pw_user.c
  head/usr.sbin/pw/pwupd.h

Modified: head/usr.sbin/pw/pw.c
==============================================================================
--- head/usr.sbin/pw/pw.c	Sat Jul 11 21:09:43 2015	(r285407)
+++ head/usr.sbin/pw/pw.c	Sat Jul 11 21:09:50 2015	(r285408)
@@ -254,6 +254,9 @@ main(int argc, char *argv[])
 		case 'a':
 			conf.all = true;
 			break;
+		case 'c':
+			conf.gecos = pw_checkname(optarg, 1);
+			break;
 		case 'g':
 			if (which == 0) { /* for user* */
 				addarg(&arglist, 'g', optarg);

Modified: head/usr.sbin/pw/pw_user.c
==============================================================================
--- head/usr.sbin/pw/pw_user.c	Sat Jul 11 21:09:43 2015	(r285407)
+++ head/usr.sbin/pw/pw_user.c	Sat Jul 11 21:09:50 2015	(r285408)
@@ -650,10 +650,9 @@ pw_user(int mode, char *name, long id, s
 	/*
 	 * Shared add/edit code
 	 */
-	if ((arg = getarg(args, 'c')) != NULL) {
-		char	*gecos = pw_checkname(arg->val, 1);
-		if (strcmp(pwd->pw_gecos, gecos) != 0) {
-			pwd->pw_gecos = gecos;
+	if (conf.gecos != NULL) {
+		if (strcmp(pwd->pw_gecos, conf.gecos) != 0) {
+			pwd->pw_gecos = conf.gecos;
 			edited = 1;
 		}
 	}

Modified: head/usr.sbin/pw/pwupd.h
==============================================================================
--- head/usr.sbin/pw/pwupd.h	Sat Jul 11 21:09:43 2015	(r285407)
+++ head/usr.sbin/pw/pwupd.h	Sat Jul 11 21:09:50 2015	(r285408)
@@ -85,6 +85,7 @@ struct pwconf {
 	char		 etcpath[MAXPATHLEN];
 	char		*newname;
 	char		*config;
+	char		*gecos;
 	int		 fd;
 	int		 which;
 	bool		 quiet;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201507112109.t6BL9pGO013533>