Avoid copying too much from the input string.

This avoids reading past the end of the static strings.  On a system
with bounds checking these tests fault.

Reviewed by:	asomers
Obtained from:	CheriBSD
MFC after:	1 week
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D21004
This commit is contained in:
brooks 2019-07-19 23:58:30 +00:00
parent 1a4fa32808
commit 89d0159a18

View File

@ -65,7 +65,7 @@ test_wcsnlen(const wchar_t *s)
for (i = 0; i <= 1; i++) {
for (bufsize = 0; bufsize <= size + 10; bufsize++) {
s1 = makebuf(bufsize * sizeof(wchar_t), i);
wmemcpy(s1, s, bufsize);
wmemcpy(s1, s, bufsize <= size ? bufsize : size);
len = (size > bufsize) ? bufsize : size - 1;
ATF_CHECK(wcsnlen(s1, bufsize) == len);
}