svn commit: r253600 - stable/8/lib/libc/stdlib

Andriy Gapon avg at FreeBSD.org
Wed Jul 24 08:57:00 UTC 2013


Author: avg
Date: Wed Jul 24 08:56:59 2013
New Revision: 253600
URL: http://svnweb.freebsd.org/changeset/base/253600

Log:
  MFC r253380,253413: name passed into __setenv is not necessarily NUL-terminated

Modified:
  stable/8/lib/libc/stdlib/getenv.c
Directory Properties:
  stable/8/lib/libc/   (props changed)

Modified: stable/8/lib/libc/stdlib/getenv.c
==============================================================================
--- stable/8/lib/libc/stdlib/getenv.c	Wed Jul 24 08:39:09 2013	(r253599)
+++ stable/8/lib/libc/stdlib/getenv.c	Wed Jul 24 08:56:59 2013	(r253600)
@@ -504,9 +504,8 @@ __setenv(const char *name, size_t nameLe
 		envVars[envNdx].valueSize = valueLen;
 
 		/* Save name of name/value pair. */
-		env = stpcpy(envVars[envNdx].name, name);
-		if ((envVars[envNdx].name)[nameLen] != '=')
-			env = stpcpy(env, "=");
+		env = stpncpy(envVars[envNdx].name, name, nameLen);
+		*env++ = '=';
 	}
 	else
 		env = envVars[envNdx].value;


More information about the svn-src-all mailing list