aboutsummaryrefslogtreecommitdiff
path: root/src/compat/glibc_sanity_fdelt.cpp
diff options
context:
space:
mode:
authorBen Woosley <ben.woosley@gmail.com>2019-03-09 12:32:48 -0500
committerBen Woosley <ben.woosley@gmail.com>2019-04-13 20:21:02 -0700
commit7fb886b1b1110de4c79478ac094e64cdcb81f3c8 (patch)
treed8afe112aa9d58e2ae4162f5694bdc8127046311 /src/compat/glibc_sanity_fdelt.cpp
parent66ce95a4340019ed3be8a36a8aeec86e4f0ace85 (diff)
[moveonly] Split glibc sanity_test_fdelt out
Diffstat (limited to 'src/compat/glibc_sanity_fdelt.cpp')
-rw-r--r--src/compat/glibc_sanity_fdelt.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/compat/glibc_sanity_fdelt.cpp b/src/compat/glibc_sanity_fdelt.cpp
new file mode 100644
index 0000000000..13661d3eef
--- /dev/null
+++ b/src/compat/glibc_sanity_fdelt.cpp
@@ -0,0 +1,23 @@
+// Copyright (c) 2009-2019 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#if defined(HAVE_CONFIG_H)
+#include <config/bitcoin-config.h>
+#endif
+
+#if defined(HAVE_SYS_SELECT_H)
+#include <sys/select.h>
+
+// trigger: Call FD_SET to trigger __fdelt_chk. FORTIFY_SOURCE must be defined
+// as >0 and optimizations must be set to at least -O2.
+// test: Add a file descriptor to an empty fd_set. Verify that it has been
+// correctly added.
+bool sanity_test_fdelt()
+{
+ fd_set fds;
+ FD_ZERO(&fds);
+ FD_SET(0, &fds);
+ return FD_ISSET(0, &fds);
+}
+#endif