Author: des
Date: Tue Nov  4 13:49:53 2008
New Revision: 184633
URL: http://svn.freebsd.org/changeset/base/184633

Log:
  Avoid assigning a const char * to a char *.
  
  MFC after:    3 weeks

Modified:
  head/lib/libutil/login_cap.c
  head/lib/libutil/login_class.c

Modified: head/lib/libutil/login_cap.c
==============================================================================
--- head/lib/libutil/login_cap.c        Tue Nov  4 13:49:18 2008        
(r184632)
+++ head/lib/libutil/login_cap.c        Tue Nov  4 13:49:53 2008        
(r184633)
@@ -61,6 +61,8 @@ static char * internal_string = NULL;
 static size_t internal_arraysz = 0;
 static const char ** internal_array = NULL;
 
+static char path_login_conf[] = _PATH_LOGIN_CONF;
+
 static char *
 allocstr(const char *str)
 {
@@ -215,15 +217,14 @@ login_getclassbyname(char const *name, c
 
        if (dir && snprintf(userpath, MAXPATHLEN, "%s/%s", dir,
                            _FILE_LOGIN_CONF) < MAXPATHLEN) {
-           login_dbarray[i] = userpath;
            if (_secure_path(userpath, pwd->pw_uid, pwd->pw_gid) != -1)
-               i++;            /* only use 'secure' data */
+               login_dbarray[i++] = userpath;
        }
        /*
         * XXX: Why to add the system database if the class is `me'?
         */
-       if (_secure_path(_PATH_LOGIN_CONF, 0, 0) != -1)
-           login_dbarray[i++] = _PATH_LOGIN_CONF;
+       if (_secure_path(path_login_conf, 0, 0) != -1)
+           login_dbarray[i++] = path_login_conf;
        login_dbarray[i] = NULL;
 
        memset(lc, 0, sizeof(login_cap_t));

Modified: head/lib/libutil/login_class.c
==============================================================================
--- head/lib/libutil/login_class.c      Tue Nov  4 13:49:18 2008        
(r184632)
+++ head/lib/libutil/login_class.c      Tue Nov  4 13:49:53 2008        
(r184633)
@@ -142,14 +142,13 @@ substvar(const char * var, const struct 
        int     tildes = 0;
        int     dollas = 0;
        char    *p;
+       const char *q;
 
        if (pwd != NULL) {
-           /* Count the number of ~'s in var to substitute */
-           for (p = (char *)var; (p = strchr(p, '~')) != NULL; p++)
-               ++tildes;
-           /* Count the number of $'s in var to substitute */
-           for (p = (char *)var; (p = strchr(p, '$')) != NULL; p++)
-               ++dollas;
+           for (q = var; *q != '\0'; ++q) {
+               tildes += (*q == '~');
+               dollas += (*q == '$');
+           }
        }
 
        np = malloc(strlen(var) + (dollas * nlen)
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to