svn commit: r299524 - head/usr.bin/mklocale
Don Lewis
truckman at FreeBSD.org
Thu May 12 08:41:23 UTC 2016
Author: truckman
Date: Thu May 12 08:41:22 2016
New Revision: 299524
URL: https://svnweb.freebsd.org/changeset/base/299524
Log:
Use strlcpy() instead of strncpy() when copying the encoding value
to ensure that the destination is NUL terminated. Length truncation
of one more character should not be an issue since encoding values
that long are not supported by libc. The destination string is
treated as a NUL terminated string, but it is only passed to strcmp()
for comparison to a set of shorter, fixed length strings, so this
is not a serious problem.
Reported by: Coverity
CID: 974769
MFC after: 1 week
Modified:
head/usr.bin/mklocale/yacc.y
Modified: head/usr.bin/mklocale/yacc.y
==============================================================================
--- head/usr.bin/mklocale/yacc.y Thu May 12 07:38:10 2016 (r299523)
+++ head/usr.bin/mklocale/yacc.y Thu May 12 08:41:22 2016 (r299524)
@@ -123,7 +123,7 @@ entry : ENCODING STRING
strcmp($2, "BIG5") &&
strcmp($2, "MSKanji"))
warnx("ENCODING %s is not supported by libc", $2);
- strncpy(new_locale.encoding, $2,
+ strlcpy(new_locale.encoding, $2,
sizeof(new_locale.encoding)); }
| VARIABLE
{ new_locale.variable_len = strlen($1) + 1;
More information about the svn-src-all
mailing list