Author: ed
Date: Sun Nov  6 17:20:44 2011
New Revision: 227228
URL: http://svn.freebsd.org/changeset/base/227228

Log:
  Mark the structure fields as const.
  
  This allows us to simply place these strings as constants in the table
  itself, letting the compiler decide to simply merge duplicate strings.

Modified:
  head/usr.bin/chpass/chpass.h
  head/usr.bin/chpass/table.c

Modified: head/usr.bin/chpass/chpass.h
==============================================================================
--- head/usr.bin/chpass/chpass.h        Sun Nov  6 16:58:17 2011        
(r227227)
+++ head/usr.bin/chpass/chpass.h        Sun Nov  6 17:20:44 2011        
(r227228)
@@ -48,7 +48,7 @@ typedef struct _entry {
        int (*func)(char *, struct passwd *, struct _entry *);
        int restricted;
        size_t len;
-       char *except, *save;
+       const char *except, *save;
 } ENTRY;
 
 /* Field numbers. */

Modified: head/usr.bin/chpass/table.c
==============================================================================
--- head/usr.bin/chpass/table.c Sun Nov  6 16:58:17 2011        (r227227)
+++ head/usr.bin/chpass/table.c Sun Nov  6 17:20:44 2011        (r227228)
@@ -39,27 +39,24 @@ __FBSDID("$FreeBSD$");
 #include <stddef.h>
 #include "chpass.h"
 
-char e1[] = ": ";
-char e2[] = ":,";
-
 ENTRY list[] = {
-       { "login",              p_login,  1,   5, e1,   NULL },
-       { "password",           p_passwd, 1,   8, e1,   NULL },
-       { "uid",                p_uid,    1,   3, e1,   NULL },
-       { "gid",                p_gid,    1,   3, e1,   NULL },
-       { "class",              p_class,  1,   5, e1,   NULL },
+       { "login",              p_login,  1,   5, ": ", NULL },
+       { "password",           p_passwd, 1,   8, ": ", NULL },
+       { "uid",                p_uid,    1,   3, ": ", NULL },
+       { "gid",                p_gid,    1,   3, ": ", NULL },
+       { "class",              p_class,  1,   5, ": ", NULL },
        { "change",             p_change, 1,   6, NULL, NULL },
        { "expire",             p_expire, 1,   6, NULL, NULL },
 #ifdef RESTRICT_FULLNAME_CHANGE                /* do not allow fullname 
changes */
-       { "full name",          p_gecos,  1,   9, e2,   NULL },
+       { "full name",          p_gecos,  1,   9, ":,", NULL },
 #else
-       { "full name",          p_gecos,  0,   9, e2,   NULL },
+       { "full name",          p_gecos,  0,   9, ":,", NULL },
 #endif
-       { "office phone",       p_gecos,  0,  12, e2,   NULL },
-       { "home phone",         p_gecos,  0,  10, e2,   NULL },
-       { "office location",    p_gecos,  0,  15, e2,   NULL },
-       { "other information",  p_gecos,  0,  11, e1,   NULL },
-       { "home directory",     p_hdir,   1,  14, e1,   NULL },
-       { "shell",              p_shell,  0,   5, e1,   NULL },
+       { "office phone",       p_gecos,  0,  12, ":,", NULL },
+       { "home phone",         p_gecos,  0,  10, ":,", NULL },
+       { "office location",    p_gecos,  0,  15, ":,", NULL },
+       { "other information",  p_gecos,  0,  11, ": ", NULL },
+       { "home directory",     p_hdir,   1,  14, ": ", NULL },
+       { "shell",              p_shell,  0,   5, ": ", NULL },
        { NULL, NULL, 0, 0, NULL, NULL },
 };
_______________________________________________
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