Page MenuHomeFreeBSD

D57420.id179165.diff
No OneTemporary

D57420.id179165.diff

diff --git a/lib/libc/tests/secure/fortify_uio_test.c b/lib/libc/tests/secure/fortify_uio_test.c
--- a/lib/libc/tests/secure/fortify_uio_test.c
+++ b/lib/libc/tests/secure/fortify_uio_test.c
@@ -179,6 +179,8 @@
const size_t __len = 2 - 1;
const size_t __idx __unused = __len - 1;
+ replace_stdin();
+
readv(STDIN_FILENO, __stack.__buf, __len);
#undef BUF
@@ -200,6 +202,8 @@
const size_t __len = 2;
const size_t __idx __unused = __len - 1;
+ replace_stdin();
+
readv(STDIN_FILENO, __stack.__buf, __len);
#undef BUF
@@ -230,6 +234,8 @@
/* Child */
disable_coredumps();
+ replace_stdin();
+
readv(STDIN_FILENO, __stack.__buf, __len);
_exit(EX_SOFTWARE); /* Should have aborted. */
@@ -274,6 +280,7 @@
const size_t __idx __unused = __len - 1;
__stack.__buf = malloc(__bufsz);
+ replace_stdin();
readv(STDIN_FILENO, __stack.__buf, __len);
#undef BUF
@@ -297,6 +304,7 @@
const size_t __idx __unused = __len - 1;
__stack.__buf = malloc(__bufsz);
+ replace_stdin();
readv(STDIN_FILENO, __stack.__buf, __len);
#undef BUF
@@ -329,6 +337,7 @@
/* Child */
disable_coredumps();
__stack.__buf = malloc(__bufsz);
+ replace_stdin();
readv(STDIN_FILENO, __stack.__buf, __len);
_exit(EX_SOFTWARE); /* Should have aborted. */
@@ -542,6 +551,8 @@
const size_t __len = 2 - 1;
const size_t __idx __unused = __len - 1;
+ replace_stdin();
+
preadv(STDIN_FILENO, __stack.__buf, __len, 0);
#undef BUF
@@ -563,6 +574,8 @@
const size_t __len = 2;
const size_t __idx __unused = __len - 1;
+ replace_stdin();
+
preadv(STDIN_FILENO, __stack.__buf, __len, 0);
#undef BUF
@@ -593,6 +606,8 @@
/* Child */
disable_coredumps();
+ replace_stdin();
+
preadv(STDIN_FILENO, __stack.__buf, __len, 0);
_exit(EX_SOFTWARE); /* Should have aborted. */
@@ -637,6 +652,7 @@
const size_t __idx __unused = __len - 1;
__stack.__buf = malloc(__bufsz);
+ replace_stdin();
preadv(STDIN_FILENO, __stack.__buf, __len, 0);
#undef BUF
@@ -660,6 +676,7 @@
const size_t __idx __unused = __len - 1;
__stack.__buf = malloc(__bufsz);
+ replace_stdin();
preadv(STDIN_FILENO, __stack.__buf, __len, 0);
#undef BUF
@@ -692,6 +709,7 @@
/* Child */
disable_coredumps();
__stack.__buf = malloc(__bufsz);
+ replace_stdin();
preadv(STDIN_FILENO, __stack.__buf, __len, 0);
_exit(EX_SOFTWARE); /* Should have aborted. */
diff --git a/lib/libc/tests/secure/generate-fortify-tests.lua b/lib/libc/tests/secure/generate-fortify-tests.lua
--- a/lib/libc/tests/secure/generate-fortify-tests.lua
+++ b/lib/libc/tests/secure/generate-fortify-tests.lua
@@ -411,6 +411,7 @@
"__buf",
"__len",
},
+ init = stdio_init,
},
{
func = "readv",
@@ -435,6 +436,7 @@
"__len",
"0",
},
+ init = stdio_init,
},
{
func = "preadv",

File Metadata

Mime Type
text/plain
Expires
Sat, Jun 13, 11:53 PM (2 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33936519
Default Alt Text
D57420.id179165.diff (2 KB)

Event Timeline