mirror of
https://github.com/lunarmodules/luasocket.git
synced 2024-12-25 12:08:21 +01:00
fix(build): Use gai_strerrorA not gai_strerror on Windows
* Explicitly call gai_strerrorA (for Windows builds), so that the code work correctly in 32bit or 64bit builds. * Implement GAI_STRERROR macro to deal with Windows vs. Non-Windows compiles for 64-bit. * make usocket.c consistent with other modules that call macro GAI_STRERROR * Use different name not just different case for macro wrapping function Co-authored-by: Caleb Maclennan <caleb@alerque.com>
This commit is contained in:
parent
d1ad8160cb
commit
5a7e3f0888
4
src/inet.c
Normal file → Executable file
4
src/inet.c
Normal file → Executable file
@ -253,7 +253,7 @@ int inet_meth_getpeername(lua_State *L, p_socket ps, int family)
|
||||
port, sizeof(port), NI_NUMERICHOST | NI_NUMERICSERV);
|
||||
if (err) {
|
||||
lua_pushnil(L);
|
||||
lua_pushstring(L, gai_strerror(err));
|
||||
lua_pushstring(L, LUA_GAI_STRERROR(err));
|
||||
return 2;
|
||||
}
|
||||
lua_pushstring(L, name);
|
||||
@ -286,7 +286,7 @@ int inet_meth_getsockname(lua_State *L, p_socket ps, int family)
|
||||
name, INET6_ADDRSTRLEN, port, 6, NI_NUMERICHOST | NI_NUMERICSERV);
|
||||
if (err) {
|
||||
lua_pushnil(L);
|
||||
lua_pushstring(L, gai_strerror(err));
|
||||
lua_pushstring(L, LUA_GAI_STRERROR(err));
|
||||
return 2;
|
||||
}
|
||||
lua_pushstring(L, name);
|
||||
|
2
src/socket.h
Normal file → Executable file
2
src/socket.h
Normal file → Executable file
@ -16,8 +16,10 @@
|
||||
\*=========================================================================*/
|
||||
#ifdef _WIN32
|
||||
#include "wsocket.h"
|
||||
#define LUA_GAI_STRERROR gai_strerrorA
|
||||
#else
|
||||
#include "usocket.h"
|
||||
#define LUA_GAI_STRERROR gai_strerror
|
||||
#endif
|
||||
|
||||
/*=========================================================================*\
|
||||
|
4
src/udp.c
Normal file → Executable file
4
src/udp.c
Normal file → Executable file
@ -191,7 +191,7 @@ static int meth_sendto(lua_State *L) {
|
||||
err = getaddrinfo(ip, port, &aihint, &ai);
|
||||
if (err) {
|
||||
lua_pushnil(L);
|
||||
lua_pushstring(L, gai_strerror(err));
|
||||
lua_pushstring(L, LUA_GAI_STRERROR(err));
|
||||
return 2;
|
||||
}
|
||||
|
||||
@ -290,7 +290,7 @@ static int meth_receivefrom(lua_State *L) {
|
||||
INET6_ADDRSTRLEN, portstr, 6, NI_NUMERICHOST | NI_NUMERICSERV);
|
||||
if (err) {
|
||||
lua_pushnil(L);
|
||||
lua_pushstring(L, gai_strerror(err));
|
||||
lua_pushstring(L, LUA_GAI_STRERROR(err));
|
||||
if (wanted > sizeof(buf)) free(dgram);
|
||||
return 2;
|
||||
}
|
||||
|
@ -449,6 +449,6 @@ const char *socket_gaistrerror(int err) {
|
||||
case EAI_SERVICE: return PIE_SERVICE;
|
||||
case EAI_SOCKTYPE: return PIE_SOCKTYPE;
|
||||
case EAI_SYSTEM: return strerror(errno);
|
||||
default: return gai_strerror(err);
|
||||
default: return LUA_GAI_STRERROR(err);
|
||||
}
|
||||
}
|
||||
|
@ -429,6 +429,6 @@ const char *socket_gaistrerror(int err) {
|
||||
#ifdef EAI_SYSTEM
|
||||
case EAI_SYSTEM: return strerror(errno);
|
||||
#endif
|
||||
default: return gai_strerror(err);
|
||||
default: return LUA_GAI_STRERROR(err);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user