Net-LibAsyncNS
view release on metacpan or search on metacpan
lib/Net/LibAsyncNS.xs view on Meta::CPAN
getaddrinfo_done(self, q)
Net::LibAsyncNS self
Net::LibAsyncNS::Query q
INIT:
int err;
struct addrinfo *res;
struct addrinfo *res_iter;
int n_res;
PPCODE:
err = asyncns_getaddrinfo_done(self, q->query, &res);
XPUSHs(gai_err_to_SV(err));
if(err) {
if(err != EAI_AGAIN)
SvREFCNT_dec(q->sv);
XSRETURN(1);
}
lib/Net/LibAsyncNS.xs view on Meta::CPAN
void
getnameinfo_done(self, q)
Net::LibAsyncNS self
Net::LibAsyncNS::Query q
PREINIT:
int err;
char host[1024];
char serv[256];
PPCODE:
err = asyncns_getnameinfo_done(self, q->query, host, sizeof(host), serv, sizeof(serv));
XPUSHs(gai_err_to_SV(err));
if(err) {
if(err != EAI_AGAIN)
SvREFCNT_dec(q->sv);
XSRETURN(1);
}
lib/Net/LibAsyncNS.xs view on Meta::CPAN
SV *
res_done(self, q)
Net::LibAsyncNS self
Net::LibAsyncNS::Query q
INIT:
int len;
unsigned char *answer;
PPCODE:
len = asyncns_res_done(self, q->query, &answer);
if(len < 0) {
if(-len != EAGAIN)
SvREFCNT_dec(q->sv);
errno = -len;
XSRETURN_UNDEF;
}
mXPUSHp(answer, len);
( run in 1.604 second using v1.01-cache-2.11-cpan-5511b514fd6 )