aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/INSTALL22
1 files changed, 9 insertions, 13 deletions
diff --git a/docs/INSTALL b/docs/INSTALL
index 7b779c037..ae5556969 100644
--- a/docs/INSTALL
+++ b/docs/INSTALL
@@ -326,19 +326,15 @@ QNX
===
(This section was graciously brought to us by David Bentham)
- By setting FD_SETSIZE early in connect.c we override the QNX default value
- and thus avoid a crash.
-
- Fortunately in the QNX headers its defined as
-
- #ifndef FD_SETSIZE
- #define FD_SETSIZE 32
- #endif
-
- so its relatively easy to override without changing the original
- definition. QNX claim posix compliance so this definition style could be
- standard in other o/s's. Eg Microsoft Visual C++ 6 defines it similarly,
- but its set to 64.
+ As QNX is targetted for resource constrained environments, the QNX headers
+ set conservative limits. This includes the FD_SETSIZE macro, set by default
+ to 32. Socket descriptors returned within the CURL library may exceed this,
+ resulting in memory faults/SIGSEGV crashes when passed into select(..)
+ calls using fd_set macros.
+
+ A good all-round solution to this is to override the default when building
+ libcurl, by overriding CFLAGS during configure, example
+ # configure CFLAGS='-DFD_SETSIZE=64 -g -O2'
CROSS COMPILE
=============