gpt4 book ai didi

c - 如何从 struct sockaddr 生成 struct addrinfo?

转载 作者:行者123 更新时间:2023-12-01 12:00:28 26 4
gpt4 key购买 nike

我有一个 struct sockaddr 并且需要制作一个 struct addrinfo(特别是那个,因为这是其他一些 API 想要的)。 IP 地址可以是 IPv4 或 IPv6。处理该问题的最佳方法是什么?

最佳答案

来自 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 addrinfo 包含的信息比 struct sockaddr 包含的信息更多。给定一个 struct sockaddr_in,您可以获得其中的一些信息 (.ai_family = AF_INET, .ai_addrlen = sizeof(struct sockaddr_in))。这是否足够取决于其他 API 正在寻找什么。

关于c - 如何从 struct sockaddr 生成 struct addrinfo?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2240455/

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