【发布时间】:2013-10-21 20:01:33
【问题描述】:
我有一个网络地址,例如 - 192.168.74.0/24。尝试使用 getaddrinfo 进行网络地址转换,似乎不起作用。这里的名字是 192.168.74.0/24。 getaddrindo 的返回值为 -2。适用于不带前缀的 ipv4 地址。
static const struct addrinfo hint = {
.ai_family = AF_UNSPEC,
.ai_flags = AI_NUMERICHOST
};
struct addrinfo *ai;
int ret;
ret = getaddrinfo(name, NULL, &hint, &ai);
if (ret) {
printf("cannot parse '%s'", name);
return false;
}
【问题讨论】:
-
192.168.74.0/24 不是地址:它指定了网络或地址范围。你期望
getaddrinfo会返回什么?
标签: c linux getaddrinfo