Author: bapt
Date: Mon Jan 26 16:50:42 2015
New Revision: 277764
URL: https://svnweb.freebsd.org/changeset/base/277764

Log:
  Revert r277652
  
  uid and gid are never and should never be negative. The pw(8) manpage clearly
  states the -u and -g arguments are for uids/gids, hence using negative values 
is
  abusing a bug in former versions of pw(8)

Deleted:
  head/usr.sbin/pw/tests/pw_groupshow.sh
  head/usr.sbin/pw/tests/pw_usershow.sh
Modified:
  head/usr.sbin/pw/pw_group.c
  head/usr.sbin/pw/pw_user.c
  head/usr.sbin/pw/tests/Makefile

Modified: head/usr.sbin/pw/pw_group.c
==============================================================================
--- head/usr.sbin/pw/pw_group.c Mon Jan 26 16:32:41 2015        (r277763)
+++ head/usr.sbin/pw/pw_group.c Mon Jan 26 16:50:42 2015        (r277764)
@@ -68,11 +68,7 @@ pw_group(struct userconf * cnf, int mode
        };
 
        if (a_gid != NULL) {
-               const char *teststr;
-               teststr = a_gid->val;
-               if (*teststr == '-')
-                       teststr++;
-               if (strspn(teststr, "0123456789") != strlen(teststr))
+               if (strspn(a_gid->val, "0123456789") != strlen(a_gid->val))
                        errx(EX_USAGE, "-g expects a number");
        }
 

Modified: head/usr.sbin/pw/pw_user.c
==============================================================================
--- head/usr.sbin/pw/pw_user.c  Mon Jan 26 16:32:41 2015        (r277763)
+++ head/usr.sbin/pw/pw_user.c  Mon Jan 26 16:50:42 2015        (r277764)
@@ -322,10 +322,7 @@ pw_user(struct userconf * cnf, int mode,
                        a_name = NULL;
                }
        } else {
-               const char *teststr = a_uid->val;
-               if (*teststr == '-')
-                       teststr++;
-               if (strspn(teststr, "0123456789") != strlen(teststr))
+               if (strspn(a_uid->val, "0123456789") != strlen(a_uid->val))
                        errx(EX_USAGE, "-u expects a number");
        }
 

Modified: head/usr.sbin/pw/tests/Makefile
==============================================================================
--- head/usr.sbin/pw/tests/Makefile     Mon Jan 26 16:32:41 2015        
(r277763)
+++ head/usr.sbin/pw/tests/Makefile     Mon Jan 26 16:50:42 2015        
(r277764)
@@ -9,11 +9,9 @@ ATF_TESTS_SH=  pw_etcdir \
                pw_lock \
                pw_groupdel \
                pw_groupmod \
-               pw_groupshow \
                pw_useradd \
                pw_userdel \
-               pw_usermod \
-               pw_usershow
+               pw_usermod
 
 .for tp in ${ATF_TESTS_SH}
 TEST_METADATA.${tp}+=  required_user="root"
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to