comparison util-src/poll.c @ 14182:a331cde41c85 13.0

util.poll: Reject fd == FD_SETSIZE FD_SETSIZE is the maximum total number of FDs supports (well, the highest valid fd number). 0 is a valid fd number, so it supports up to 1023 if FD_SETSIZE is 1024. This is just a fencepost issue, fds > FD_SETSIZE were already correctly rejected.
author Matthew Wild <mwild1@gmail.com>
date Mon, 25 May 2026 16:06:19 +0100
parents 5fe8a8e16b27
children 75d09be04f13
comparison
equal deleted inserted replaced
14181:6fb6e383123f 14182:a331cde41c85
137 lua_pushboolean(L, 1); 137 lua_pushboolean(L, 1);
138 return 1; 138 return 1;
139 #endif 139 #endif
140 #ifdef USE_SELECT 140 #ifdef USE_SELECT
141 141
142 if(fd > FD_SETSIZE) { 142 if(fd >= FD_SETSIZE) {
143 luaL_pushfail(L); 143 luaL_pushfail(L);
144 lua_pushstring(L, strerror(EBADF)); 144 lua_pushstring(L, strerror(EBADF));
145 lua_pushinteger(L, EBADF); 145 lua_pushinteger(L, EBADF);
146 return 3; 146 return 3;
147 } 147 }