gpt4 book ai didi

c++ - Linux 系统调用 getname info 返回 EAI_AGAIN

转载 作者:太空宇宙 更新时间:2023-11-04 04:49:44 26 4
gpt4 key购买 nike

在我的 C++ 应用程序中,我使用 getnameinfo 并返回 EAI_AGAIN - 是什么导致了此错误?

struct sockaddr_storage ss;
socklen_t salen = sizeof(ss);
struct sockaddr *sa;
struct addrinfo hints, *paddr, *paddrp;

sa = (struct sockaddr *)&ss;

if (getpeername(sock, sa, &salen) != 0) {
error = errno;
return -1;
}

char hbuf[NI_MAXHOST];
char pbuf[NI_MAXSERV];
if (0 != (error = getnameinfo(sa, salen,
hbuf, sizeof(hbuf),
pbuf, sizeof(pbuf),
0))) {
return -1;//here it returns, the error is -3=EAI_AGAIN
}

最佳答案

根据getnameinfo :

[EAI_AGAIN] The name could not be resolved at this time. Future attempts may succeed.

最可能的原因是 DNS 查找期间出现某种超时。

关于c++ - Linux 系统调用 getname info 返回 EAI_AGAIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4438115/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com