Check memory size on FD_* functions

Make sure the buffer we're dealing with has enough room.
Might as well check for memory issues while we're here,
even though I don't imagine they'll happen in practice.

Change-Id: I0ae1f0f06aca9ceb91e58c70183bb14e275b92b5
diff --git a/tests/fortify_test.cpp b/tests/fortify_test.cpp
index abe2cae..d514a3d 100644
--- a/tests/fortify_test.cpp
+++ b/tests/fortify_test.cpp
@@ -554,6 +554,20 @@
   ASSERT_EXIT(FD_ISSET(-1, &set), testing::KilledBySignal(SIGABRT), "");
 }
 
+TEST(DEATHTEST, FD_ISSET_2_fortified) {
+  ::testing::FLAGS_gtest_death_test_style = "threadsafe";
+  char buf[1];
+  fd_set* set = (fd_set*) buf;
+  ASSERT_EXIT(FD_ISSET(0, set), testing::KilledBySignal(SIGABRT), "");
+}
+
+TEST(DEATHTEST, FD_ZERO_fortified) {
+  ::testing::FLAGS_gtest_death_test_style = "threadsafe";
+  char buf[1];
+  fd_set* set = (fd_set*) buf;
+  ASSERT_EXIT(FD_ZERO(set), testing::KilledBySignal(SIGABRT), "");
+}
+
 extern "C" char* __strncat_chk(char*, const char*, size_t, size_t);
 extern "C" char* __strcat_chk(char*, const char*, size_t);