Архив документации OpenNet.ru / Раздел "Программирование, языки" / Индекс
Дальше: Приложение А. Реализация протокола Вверх: 7 Операции с сетевой Назад: 7.2 Номера портов

7.3 Имена хостов

Для получения информации о хостах определена структура hostent:
struct hostent {
    char  *h_name; /* Официальное имя хоста */
    char  **h_aliases; /* Массив псевдонимов хоста */
    int   h_addrtype;  /* Тип адреса (обычно AF_INET) */
    int   h_length;    /* Длина адреса в байтах */
    char  **h_addr_list; /* Список адресов хоста */
}

Функция gethostbyname позволяет получить адрес хоста по его имени:

struct hostent  *gethostbyname(const char *name);

Функция gethostbyaddr позволяет определить имя хоста по его адресу. В качестве аргументов функции передаются указатель на адрес хоста, длина адреса и его тип (AF_INET для IPv4):

struct hostent  *gethostbyaddr(const void *addr, size_t len, int type);

В случае возникновения ошибок функции возвращают NULL. Код ошибки помещается в переменную h_errno.



Zwon
2002-03-24

Архив документации на OpenNet.ru