From: Jo-Philipp Wich Date: Thu, 11 Aug 2011 23:15:05 +0000 (+0000) Subject: libs/nixio: fix possible issue with nonblocking bind() X-Git-Tag: 0.11.0~1895 X-Git-Url: http://git.openwrt.org/?p=project%2Fluci.git;a=commitdiff_plain;h=11ff9204cf9b2fd451bf8e0e0dd3fe3f078c2808 libs/nixio: fix possible issue with nonblocking bind() --- diff --git a/libs/nixio/src/bind.c b/libs/nixio/src/bind.c index 81ab0bb480..711205955c 100644 --- a/libs/nixio/src/bind.c +++ b/libs/nixio/src/bind.c @@ -180,7 +180,7 @@ static int nixio_sock__bind_connect(lua_State *L, int do_bind) { } /* on success */ - if (!status) { + if (!status || errno == EINPROGRESS) { break; } } diff --git a/libs/nixio/src/nixio.c b/libs/nixio/src/nixio.c index f6e8e184c0..70a77b4c9b 100644 --- a/libs/nixio/src/nixio.c +++ b/libs/nixio/src/nixio.c @@ -198,6 +198,8 @@ NIXIO_API int luaopen_nixio(lua_State *L) { NIXIO_PUSH_CONSTANT(SIGSEGV); #ifndef __WINNT__ + NIXIO_PUSH_CONSTANT(EALREADY); + NIXIO_PUSH_CONSTANT(EINPROGRESS); NIXIO_PUSH_CONSTANT(EWOULDBLOCK); NIXIO_PUSH_CONSTANT(ELOOP); NIXIO_PUSH_CONSTANT(EOVERFLOW);