Shouldn't Curl_select() use curl_socket_t ?
#include "select.h"
+#ifdef WIN32
+#define VALID_SOCK(s) (1) /* Win-sockets are not in range [0..FD_SETSIZE> */
+#else
+#define VALID_SOCK(s) ((s) >= 0) && ((s) < FD_SETSIZE))
+#endif
+
/*
* This is an internal function used for waiting for read or write
* events on single file descriptors. It attempts to replace select()
FD_ZERO(&fds_read);
if (readfd != CURL_SOCKET_BAD) {
- if ((readfd < 0) || (readfd >= FD_SETSIZE)) {
+ if (!VALID_SOCK(readfd)) {
errno = EINVAL;
return -1;
}
FD_ZERO(&fds_write);
if (writefd != CURL_SOCKET_BAD) {
- if ((writefd < 0) || (writefd >= FD_SETSIZE)) {
+ if (!VALID_SOCK(writefd)) {
errno = EINVAL;
return -1;
}