svn commit: r291342 - head/contrib/bmake
Simon J. Gerraty
sjg at FreeBSD.org
Thu Nov 26 00:26:25 UTC 2015
Author: sjg
Date: Thu Nov 26 00:26:23 2015
New Revision: 291342
URL: https://svnweb.freebsd.org/changeset/base/291342
Log:
ParseTrackInput: do not access beyond end of buffer.
Reviewed by: dim
Modified:
head/contrib/bmake/parse.c
Modified: head/contrib/bmake/parse.c
==============================================================================
--- head/contrib/bmake/parse.c Wed Nov 25 22:59:41 2015 (r291341)
+++ head/contrib/bmake/parse.c Thu Nov 26 00:26:23 2015 (r291342)
@@ -2390,15 +2390,19 @@ static void
ParseTrackInput(const char *name)
{
char *old;
+ char *ep;
char *fp = NULL;
size_t name_len = strlen(name);
old = Var_Value(MAKE_MAKEFILES, VAR_GLOBAL, &fp);
if (old) {
+ ep = old + strlen(old) - name_len;
/* does it contain name? */
for (; old != NULL; old = strchr(old, ' ')) {
if (*old == ' ')
old++;
+ if (old >= ep)
+ break; /* cannot contain name */
if (memcmp(old, name, name_len) == 0
&& (old[name_len] == 0 || old[name_len] == ' '))
goto cleanup;
More information about the svn-src-head
mailing list