vsnprintf() can return a value larger than the buffer size.

Submitted by:	assar
Obtained from:	OpenBSD
This commit is contained in:
Ruslan Ermilov 2001-07-19 18:58:31 +00:00
parent e725a1299a
commit 1ee47d0673
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=79992
2 changed files with 2 additions and 2 deletions

View File

@ -1631,7 +1631,7 @@ output_data(const char *format, ...)
remaining = BUFSIZ - (nfrontp - netobuf);
}
ret = vsnprintf(nfrontp, remaining, format, args);
nfrontp += ret;
nfrontp += ((ret < remaining - 1) ? ret : remaining - 1);
va_end(args);
return ret;
}

View File

@ -1631,7 +1631,7 @@ output_data(const char *format, ...)
remaining = BUFSIZ - (nfrontp - netobuf);
}
ret = vsnprintf(nfrontp, remaining, format, args);
nfrontp += ret;
nfrontp += ((ret < remaining - 1) ? ret : remaining - 1);
va_end(args);
return ret;
}