aboutsummaryrefslogtreecommitdiffstats
path: root/main/musl/0003-add-NFDBITS-in-sys-select.h-with-appropriate-feature.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/musl/0003-add-NFDBITS-in-sys-select.h-with-appropriate-feature.patch')
-rw-r--r--main/musl/0003-add-NFDBITS-in-sys-select.h-with-appropriate-feature.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/main/musl/0003-add-NFDBITS-in-sys-select.h-with-appropriate-feature.patch b/main/musl/0003-add-NFDBITS-in-sys-select.h-with-appropriate-feature.patch
new file mode 100644
index 0000000000..dc5cc287e4
--- /dev/null
+++ b/main/musl/0003-add-NFDBITS-in-sys-select.h-with-appropriate-feature.patch
@@ -0,0 +1,30 @@
+From ca9aff6a1646c7fc106bfbb9399b3a1bcb14f18b Mon Sep 17 00:00:00 2001
+From: Rich Felker <dalias@aerifal.cx>
+Date: Sat, 6 Jul 2013 01:12:28 -0400
+Subject: [PATCH] add NFDBITS in sys/select.h with appropriate feature tests
+
+the main use for this macro seems to be knowing the correct allocation
+granularity for dynamic-sized fd_set objects. such usage is
+non-conforming and results in undefined behavior, but it is widespread
+in applications.
+---
+ include/sys/select.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/include/sys/select.h b/include/sys/select.h
+index c5a2877..e25257d 100644
+--- a/include/sys/select.h
++++ b/include/sys/select.h
+@@ -32,6 +32,9 @@ typedef struct
+ int select (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, struct timeval *__restrict);
+ int pselect (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, const struct timespec *__restrict, const sigset_t *__restrict);
+
++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
++#define NFDBITS (8*(int)sizeof(long))
++#endif
+
+ #ifdef __cplusplus
+ }
+--
+1.8.3.2
+