Author: ed
Date: Mon Aug  3 22:07:50 2015
New Revision: 286259
URL: https://svnweb.freebsd.org/changeset/base/286259

Log:
  Avoid calling strlen() where we can use the strspn() return value.

Modified:
  head/usr.sbin/pw/pw_group.c
  head/usr.sbin/pw/pw_user.c

Modified: head/usr.sbin/pw/pw_group.c
==============================================================================
--- head/usr.sbin/pw/pw_group.c Mon Aug  3 21:19:31 2015        (r286258)
+++ head/usr.sbin/pw/pw_group.c Mon Aug  3 22:07:50 2015        (r286259)
@@ -297,7 +297,7 @@ pw_group_show(int argc, char **argv, cha
        };
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, GID_MAX);
                else
                        name = arg1;
@@ -360,7 +360,7 @@ pw_group_del(int argc, char **argv, char
        bool nis = false;
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, GID_MAX);
                else
                        name = arg1;
@@ -491,7 +491,7 @@ pw_group_add(int argc, char **argv, char
        quiet = precrypted = dryrun = pretty = nis = false;
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, GID_MAX);
                else
                        name = arg1;
@@ -577,7 +577,7 @@ pw_group_mod(int argc, char **argv, char
        quiet = pretty = dryrun = nis = precrypted = false;
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, GID_MAX);
                else
                        name = arg1;

Modified: head/usr.sbin/pw/pw_user.c
==============================================================================
--- head/usr.sbin/pw/pw_user.c  Mon Aug  3 21:19:31 2015        (r286258)
+++ head/usr.sbin/pw/pw_user.c  Mon Aug  3 22:07:50 2015        (r286259)
@@ -214,7 +214,7 @@ pw_userlock(char *arg1, int mode)
        if (arg1 == NULL)
                errx(EX_DATAERR, "username or id required");
 
-       if (strspn(arg1, "0123456789") == strlen(arg1))
+       if (arg1[strspn(arg1, "0123456789")] == '\0')
                id = pw_checkid(arg1, UID_MAX);
        else
                name = arg1;
@@ -709,7 +709,7 @@ pw_user_show(int argc, char **argv, char
        bool quiet = false;
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, UID_MAX);
                else
                        name = arg1;
@@ -793,7 +793,7 @@ pw_user_del(int argc, char **argv, char 
        bool quiet = false;
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, UID_MAX);
                else
                        name = arg1;
@@ -1124,7 +1124,7 @@ pw_user_add(int argc, char **argv, char 
                err(EXIT_FAILURE, "calloc()");
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, UID_MAX);
                else
                        name = arg1;
@@ -1435,7 +1435,7 @@ pw_user_mod(int argc, char **argv, char 
        edited = docreatehome = false;
 
        if (arg1 != NULL) {
-               if (strspn(arg1, "0123456789") == strlen(arg1))
+               if (arg1[strspn(arg1, "0123456789")] == '\0')
                        id = pw_checkid(arg1, UID_MAX);
                else
                        name = arg1;
_______________________________________________
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