Author: delphij
Date: Wed Aug 10 08:52:27 2011
New Revision: 224753
URL: http://svn.freebsd.org/changeset/base/224753

Log:
  MFC r223922:
  
  Use strlcpy().

Modified:
  stable/8/usr.bin/rpcgen/rpc_scan.c
Directory Properties:
  stable/8/usr.bin/rpcgen/   (props changed)

Modified: stable/8/usr.bin/rpcgen/rpc_scan.c
==============================================================================
--- stable/8/usr.bin/rpcgen/rpc_scan.c  Wed Aug 10 08:40:59 2011        
(r224752)
+++ stable/8/usr.bin/rpcgen/rpc_scan.c  Wed Aug 10 08:52:27 2011        
(r224753)
@@ -329,10 +329,9 @@ findstrconst(char **str, const char **va
                error("unterminated string constant");
        }
        p++;
-       size = p - *str;
-       tmp = xmalloc(size + 1);
-       (void) strncpy(tmp, *str, size);
-       tmp[size] = 0;
+       size = p - *str + 1;
+       tmp = xmalloc(size);
+       (void) strlcpy(tmp, *str, size);
        *val = tmp;
        *str = p;
 }
@@ -352,13 +351,12 @@ findchrconst(char **str, const char **va
                error("unterminated string constant");
        }
        p++;
-       size = p - *str;
-       if (size != 3) {
+       size = p - *str + 1;
+       if (size != 4) {
                error("empty char string");
        }
-       tmp = xmalloc(size + 1);
-       (void) strncpy(tmp, *str, size);
-       tmp[size] = 0;
+       tmp = xmalloc(size);
+       (void) strlcpy(tmp, *str, size);
        *val = tmp;
        *str = p;
 }
@@ -381,10 +379,9 @@ findconst(char **str, const char **val)
                        p++;
                } while (isdigit(*p));
        }
-       size = p - *str;
-       tmp = xmalloc(size + 1);
-       (void) strncpy(tmp, *str, size);
-       tmp[size] = 0;
+       size = p - *str + 1;
+       tmp = xmalloc(size);
+       (void) strlcpy(tmp, *str, size);
        *val = tmp;
        *str = p;
 }
@@ -438,8 +435,7 @@ findkind(char **mark, token *tokp)
        tokp->kind = TOK_IDENT;
        for (len = 0; isalnum(str[len]) || str[len] == '_'; len++);
        tmp = xmalloc(len + 1);
-       (void) strncpy(tmp, str, len);
-       tmp[len] = 0;
+       (void) strlcpy(tmp, str, len + 1);
        tokp->str = tmp;
        *mark = str + len;
 }
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to