X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=psi.d%2Fnetdb.psi;h=6b55fec29947cf90d8b63762584bc09e6ce96ed1;hp=cc66e9cde683452913e91ea0a713c07e17d33183;hb=01147b369f0fde8119074435b296bd8197489088;hpb=b78637d9020222f1032349f231c0dc84a69797bc diff --git a/psi.d/netdb.psi b/psi.d/netdb.psi index cc66e9c..6b55fec 100644 --- a/psi.d/netdb.psi +++ b/psi.d/netdb.psi @@ -1,3 +1,9 @@ +#ifdef __linux__ +lib "anl"; +#endif + +#include + function psi\endhostent() : void { return endhostent() as void(endhostent); } @@ -72,12 +78,12 @@ function psi\getaddrinfo(string $node, string $service, array $hints = NULL, obj function psi\getnameinfo(string $addr, string &$host = NULL, string &$service = NULL, int $flags = 0) : int { let sa = strval($addr); let salen = strlen($addr); - let hostlen = psi\NI_MAXHOST; - let host = calloc(hostlen, psi\SIZEOF_CHAR); - let servlen = psi\NI_MAXSERV; - let serv = calloc(servlen, psi\SIZEOF_CHAR); + let hostlen = NI_MAXHOST; + let host = calloc(hostlen, sizeof(char)); + let servlen = NI_MAXSERV; + let serv = calloc(servlen, sizeof(char)); let flags = intval($flags); - return getnameinfo(sa, salen, hostlen, host, servlen, serv, flags) as to_int(getnameinfo); + return getnameinfo(sa, salen, host, hostlen, serv, servlen, flags) as to_int(getnameinfo); set $host = to_string(host); set $service = to_string(serv); }