ВУЗ:
Составители:
46
uint32_t inet_network (const char *NAME)
Функция извлекает номер сети из передаваемого ей в параметре адреса хоста,
заданного в виде чисел, разделенных точками. Если задан неправильный адрес хоста,
функция возвращает –1. Функция используется только с адресами типов A, B и C и не
работает с бесклассовыми адресами.
char * inet_ntoa (struct in_addr ADDR)
Функция конвертирует адрес стандарта IPv4 в строку, состоящую из чисел,
разделенных точками. Возвращаемое значение является указателем на статически-
выделенную область памяти. Последующие вызовы функции могут перезаписать
содержимое этого буфера, поэтому для дальнейшего использования возвращаемое
значение необходимо скопировать. В многопотоковых программах функция создает
буфер для каждого потока. Вместо этой функции рекомендуется использовать функцию
inet_ntop, которая работает с адресами в обеих стандартах.
struct in_addr inet_makeaddr (uint32_t NET, uint32_t LOCAL)
Эта функция создает адрес IPv4 из составляющих его номера сети и локального
адреса.
uint32_t inet_lnaof (struct in_addr ADDR)
Эта функция возвращает значение локального адреса задаваемого адреса хоста.
Работает только с адресами классов A, B и C.
uint32_t inet_netof (struct in_addr ADDR)
Эта функция возвращает значение номера сети задаваемого адреса хоста.
Работает только с адресами классов A, B и C.
int inet_pton (int AF, const char *CP, void *BUF)
Эта функция конвертирует адрес интернет (как IPv4, так и IPv6) из текстового
представления в двоичный формат. Аргумент AF может принимать значения AF_INET
и AF_INET6 в зависимости от того, какого типа адрес необходимо конвертировать. CP –
указатель на входную строку; BUF – указатель на буфер, куда будет сохранен результат
операции. Необходимо позаботиться о том, чтобы размер буфера был достаточен для
хранения результата.
const char * inet_ntop (int AF, const void *CP, char *BUF,
size_t LEN)
Функция конвертирует адрес интернет (как IPv4, так и IPv6) из двоичного
формата в текстовое представление. Аргумент AF может принимать значения AF_INET
и AF_INET6 в зависимости от того, какого типа адрес необходимо конвертировать. CP –
указатель на адрес, который необходимо конвертировать; BUF – указатель на буфер,
куда будет сохранен результат; LEN – длина этого буфера. Функция возвращает адрес
буфера результата.
Имена хостов
Для внутреннего пользования операционная система для преобразования
символьных имен хостов в числовые адреса использует свою базу данных. База данных
обычно расположена в файле /etc/hosts. При отсутствии запрашиваемого символьного
имени в базе данных, система обращается к сервису, называемому сервером имен, если
он явно указан в настройках сети. Функции и структуры данных для доступа к этой базе
данных определены в заголовочном файле <netdb.h>.
struct hostent {
char *h_name;
char **h_aliases;
int h_addrtype;
int h_length;
char **h_addr_list;
char *h_addr;
};
uint32_t inet_network (const char *NAME) Функция извлекает номер сети из передаваемого ей в параметре адреса хоста, заданного в виде чисел, разделенных точками. Если задан неправильный адрес хоста, функция возвращает –1. Функция используется только с адресами типов A, B и C и не работает с бесклассовыми адресами. char * inet_ntoa (struct in_addr ADDR) Функция конвертирует адрес стандарта IPv4 в строку, состоящую из чисел, разделенных точками. Возвращаемое значение является указателем на статически- выделенную область памяти. Последующие вызовы функции могут перезаписать содержимое этого буфера, поэтому для дальнейшего использования возвращаемое значение необходимо скопировать. В многопотоковых программах функция создает буфер для каждого потока. Вместо этой функции рекомендуется использовать функцию inet_ntop, которая работает с адресами в обеих стандартах. struct in_addr inet_makeaddr (uint32_t NET, uint32_t LOCAL) Эта функция создает адрес IPv4 из составляющих его номера сети и локального адреса. uint32_t inet_lnaof (struct in_addr ADDR) Эта функция возвращает значение локального адреса задаваемого адреса хоста. Работает только с адресами классов A, B и C. uint32_t inet_netof (struct in_addr ADDR) Эта функция возвращает значение номера сети задаваемого адреса хоста. Работает только с адресами классов A, B и C. int inet_pton (int AF, const char *CP, void *BUF) Эта функция конвертирует адрес интернет (как IPv4, так и IPv6) из текстового представления в двоичный формат. Аргумент AF может принимать значения AF_INET и AF_INET6 в зависимости от того, какого типа адрес необходимо конвертировать. CP – указатель на входную строку; BUF – указатель на буфер, куда будет сохранен результат операции. Необходимо позаботиться о том, чтобы размер буфера был достаточен для хранения результата. const char * inet_ntop (int AF, const void *CP, char *BUF, size_t LEN) Функция конвертирует адрес интернет (как IPv4, так и IPv6) из двоичного формата в текстовое представление. Аргумент AF может принимать значения AF_INET и AF_INET6 в зависимости от того, какого типа адрес необходимо конвертировать. CP – указатель на адрес, который необходимо конвертировать; BUF – указатель на буфер, куда будет сохранен результат; LEN – длина этого буфера. Функция возвращает адрес буфера результата. Имена хостов Для внутреннего пользования операционная система для преобразования символьных имен хостов в числовые адреса использует свою базу данных. База данных обычно расположена в файле /etc/hosts. При отсутствии запрашиваемого символьного имени в базе данных, система обращается к сервису, называемому сервером имен, если он явно указан в настройках сети. Функции и структуры данных для доступа к этой базе данных определены в заголовочном файле. struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; char *h_addr; }; 46
Страницы
- « первая
- ‹ предыдущая
- …
- 44
- 45
- 46
- 47
- 48
- …
- следующая ›
- последняя »