Я гуглил это, но не нашел ничего, кроме #define
для константы.
Это происходит на машине с OSX 10.11.
Вот небольшой репродуктор (хост изначально был получен из функции hostname (), возникла некоторая проблема с его использованием, поэтому он был жестко закодирован)
#include <stdio.h>
#include <sys/socket.h>
#include <netdb.h>
typedef struct addrinfo ADRINFO;
int main(void)
{
const char* host = "Romi-Mac-Mini.local";
const char* port = "1543";
ADRINFO *aip, hint = { AI_NUMERICSERV, AF_UNSPEC, SOCK_STREAM, IPPROTO_TCP,
/*addrlen*/0, /*addr*/0, /*canonname*/0, /*next*/0 };
const int ret = getaddrinfo(host, port, &hint, &aip);
if (!aip)
{
printf("aip is NULL\n");
}
else
{
printf("ret=%d ai_family=%d\n", ret, aip->ai_family);
}
return 0;
}
На проблемной машине он выводит ret=0 ai_family=30