In build_iovec(), if passed in len is -1, check to see if

val is NULL before doing strlen() to calculate new len.

Submitted by:	maxim
This commit is contained in:
Craig Rodrigues 2005-11-14 17:39:00 +00:00
parent c22d354139
commit 9fce8c898e
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=152417

View File

@ -40,7 +40,6 @@ __FBSDID("$FreeBSD$");
#include <sys/stat.h>
#include <sys/uio.h>
#include <assert.h>
#include <err.h>
#include <errno.h>
#include <stdarg.h>
@ -155,8 +154,12 @@ build_iovec(struct iovec **iov, int *iovlen, const char *name, void *val,
(*iov)[i].iov_len = strlen(name) + 1;
i++;
(*iov)[i].iov_base = val;
if (len == (size_t)-1)
len = strlen(val) + 1;
if (len == (size_t)-1) {
if (val != NULL)
len = strlen(val) + 1;
else
len = 0;
}
(*iov)[i].iov_len = (int)len;
*iovlen = ++i;
}