Use poll with nfds_t type Fixes: https://github.com/3proxy/3proxy/issues/895 Bug: https://bugs.gentoo.org/881015 Upstream-PR: https://github.com/3proxy/3proxy/pull/907 diff --git a/src/common.c b/src/common.c index ec25eb6..7a64a08 100644 --- a/src/common.c +++ b/src/common.c @@ -157,7 +157,7 @@ int WINAPI #endif - mypoll(struct mypollfd *fds, unsigned int nfds, int timeout){ + mypoll(struct mypollfd *fds, nfds_t nfds, int timeout){ fd_set readfd; fd_set writefd; fd_set oobfd; diff --git a/src/structures.h b/src/structures.h index a2f5ba7..0db681b 100644 --- a/src/structures.h +++ b/src/structures.h @@ -69,6 +69,7 @@ int mutex_unlock(int *val); #ifdef WITH_POLL #include #else +typedef unsigned int nfds_t; #ifdef WITH_WSAPOLL #define poll(A,B,C) WSAPoll(A,B,C) @@ -84,7 +85,7 @@ int #ifdef _WIN32 WINAPI #endif - mypoll(struct mypollfd *fds, unsigned int nfds, int timeout); + mypoll(struct mypollfd *fds, nfds_t nfds, int timeout); #ifndef POLLIN #define POLLIN 1 #endif @@ -434,7 +435,7 @@ struct sockfuncs { int (WINAPI *_getsockname)(void* state, SOCKET s, struct sockaddr * name, int * namelen); int (WINAPI *_getsockopt)(void* state, SOCKET s, int level, int optname, char * optval, int * optlen); int (WINAPI *_setsockopt)(void* state, SOCKET s, int level, int optname, const char *optval, int optlen); - int (WINAPI *_poll)(void* state, struct pollfd *fds, unsigned int nfds, int timeout); + int (WINAPI *_poll)(void* state, struct pollfd *fds, nfds_t nfds, int timeout); int (WINAPI *_send)(void* state, SOCKET s, const char *msg, int len, int flags); int (WINAPI *_sendto)(void* state, SOCKET s, const char *msg, int len, int flags, const struct sockaddr *to, int tolen); int (WINAPI *_recv)(void* state, SOCKET s, char *buf, int len, int flags);