Страница 138 из 399
Разница между функциями sock_ntop и getnameinfo состоит в том, что первая не задействует DNS, а только возвращает IP-адрес и номер порта. Последняя же обычно пытается получить имя и для узла, и для службы.
В табл. 11.4 показаны шесть флагов, которые можно задать для изменения действия, выполняемого функцией getnameinfo.
Таблица 11.4. Флаги функции getnameinfo
Константа Описание NI_DGRAM Дейтаграммный сокет NI_NAMEREQD Возвращать ошибку, если невозможно получить имя узла по его адресу NI_NOFQDN Возвращать только ту часть FQDN, которая содержит имя узла NI_NUMERICHOST Возвращать численное значение адреса вместо имени узла NI_NUMERICSCOPE Возвращать численное значение идентификатора области NI_NUMERICSERV Возвращать номер порта вместо имени службы