From 148b3be1afb13632d13bc7054acf56eee5e19f1c Mon Sep 17 00:00:00 2001 From: Adam Harrison Date: Tue, 23 Jul 2024 19:16:11 -0400 Subject: Fixed windows non-blocking. --- src/lpm.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/lpm.c b/src/lpm.c index afc2948..5828803 100644 --- a/src/lpm.c +++ b/src/lpm.c @@ -1516,8 +1516,14 @@ static int lpm_get(lua_State* L) { if (!host) return luaL_error(L, "can't resolve hostname %s", context->hostname); context->s = socket(AF_INET, SOCK_STREAM, 0); - if (threaded) - fcntl(context->s, F_SETFL, fcntl(context->s, F_GETFL, 0) | O_NONBLOCK); + if (threaded) { + #if _WIN32 + unsigned long ul = 1; + ioctlsocket(context->s, FIONBIO, (unsigned long *) &ul); + #else + fcntl(context->s, F_SETFL, fcntl(context->s, F_GETFL, 0) | O_NONBLOCK); + #endif + } dest_addr.sin_family = AF_INET; dest_addr.sin_port = htons(port); dest_addr.sin_addr.s_addr = *(long*)(host->h_addr); -- cgit v1.2.3