我有一个struct sockaddr,并且需要创建一个struct addrinfo (具体地说,因为这是其他API想要的)。IP地址可以是IPv4或IPv6。处理这个问题的最好方法是什么?
发布于 2010-02-11 05:42:27
来自man 3 getaddrinfo,
struct addrinfo {
int ai_flags;
int ai_family;
int ai_socktype;
int ai_protocol;
size_t ai_addrlen;
struct sockaddr *ai_addr;
char *ai_canonname;
struct addrinfo *ai_next;
};与struct sockaddr相比,struct addrinfo包含的信息更多。给定一个struct sockaddr_in,您可以获得其中的一些信息(.ai_family = AF_INET, .ai_addrlen = sizeof(struct sockaddr_in))。这是否足够取决于另一个API正在寻找什么。
https://stackoverflow.com/questions/2240455
复制相似问题