В getaddrinfo("www.example.net","1234", &hints, &server_info)
сокет программирования спутанность getaddrinfo функции
Что является использование параметра hints
?
В getaddrinfo("www.example.net","1234", &hints, &server_info)
сокет программирования спутанность getaddrinfo функции
Что является использование параметра hints
?
getaddrinfo
документируется в man page, который имеет это сказать о параметре подсказок:
намеками аргумент указывает на структуру addrinfo, которая определяет критерии выбора адреса структуры сокета, возвращаемые в списке указывается res. Если подсказки не NULL он указывает на структуру addrinfo которой ai_family, ai_socktype и ai_protocol указать критерии, которые ограничивают набор адресов сокетов, возвращенное getaddrinfo()
Таким образом, это параметр, который ограничивает результаты, основанные по заданным критериям. Критерии задается с помощью addrinfo
-структуру:
struct addrinfo {
int ai_flags;
int ai_family;
int ai_socktype;
int ai_protocol;
socklen_t ai_addrlen;
struct sockaddr *ai_addr;
char *ai_canonname;
struct addrinfo *ai_next;
};
Вы можете прочитать о каждом из параметров структуры на одной и той же страницы человека.
Via [Wikipedia] (http://en.m.wikipedia.org/wiki/Getaddrinfo): «подсказки могут быть либо NULL, либо структурой addrinfo с типом обслуживания, которым мы заинтересованы (например, сокет может быть доступный как для TCP, так и для UDP, поэтому мы можем заявить о своей заинтересованности только в первом) –