diff --git a/.topdeps b/.topdeps index 8b9694c75b..2cf45e3049 100644 --- a/.topdeps +++ b/.topdeps @@ -11,3 +11,4 @@ gcc-shadow gcc-64bit-constants gcc-ident-pragmas gcc-missing-braces +gcc-fortify-source diff --git a/cmd/zdb/zdb.c b/cmd/zdb/zdb.c index c8076b1780..fb9c4be6f0 100644 --- a/cmd/zdb/zdb.c +++ b/cmd/zdb/zdb.c @@ -1882,7 +1882,7 @@ zdb_dump_block_raw(void *buf, uint64_t size, int flags) { if (flags & ZDB_FLAG_BSWAP) byteswap_uint64_array(buf, size); - (void) write(2, buf, size); + VERIFY(write(fileno(stderr), buf, size) == size); } static void diff --git a/cmd/ztest/ztest.c b/cmd/ztest/ztest.c index fcfeef4dab..019c57385f 100644 --- a/cmd/ztest/ztest.c +++ b/cmd/ztest/ztest.c @@ -1171,7 +1171,7 @@ ztest_vdev_LUN_growth(ztest_args_t *za) */ if (fsize < 2 * zopt_vdev_size) { size_t newsize = fsize + ztest_random(fsize / 32); - (void) ftruncate(fd, newsize); + VERIFY(ftruncate(fd, newsize) == 0); if (zopt_verbose >= 6) { (void) printf("%s grew from %lu to %lu bytes\n", dev_name, (ulong_t)fsize, (ulong_t)newsize); diff --git a/lib/libzpool/kernel.c b/lib/libzpool/kernel.c index 00e8ad09d2..a53ab265df 100644 --- a/lib/libzpool/kernel.c +++ b/lib/libzpool/kernel.c @@ -829,7 +829,7 @@ umem_out_of_memory(void) { char errmsg[] = "out of memory -- generating core dump\n"; - write(fileno(stderr), errmsg, sizeof (errmsg)); + (void) fprintf(stderr, "%s", errmsg); abort(); return (0); }