Искать пошаговые (hop-by-hop) параметры или параметры назначения IPv6
#include <netinet/in.h>int inet6_option_find( const struct cmsghdr *cmsg,u_int8_t **tptrp,int type );
cmsghdr
, которая была проинициализирована посредством inet6_option_init().IPV6_HOPOPTS
либо IPV6_DSTOPTS
. Тип хранится в поле cmsg_type структуры cmsghdr
, на которую указывает *cmsgp.libsocket
Функция inet6_option_find() аналогична функции inet6_option_next(). Однако она позволяет вызывающей стороне указать тип параметра для поиска вместо того, чтобы всегда возвращать следующий параметр в объекте вспомогательных данных. cmsg - это указатель на структуру cmsghdr
, в которой cmsg_level равно IPPROTO_IPV6
, а cmsg_type равно либо IPV6_HOPOPTS
, либо IPV6_DSTOPTS
.
tptrp является указателем на указатель на байт, который функция использует для учета позиции в объекте вспомогательных данных при каждом вызове функции.
При вызове данной функции в первый раз для данного объекта вспомогательных данных, необходимо установить для *tptrp значение NULL
. Функция начинает поиск параметра указанного типа, начиная с значения указателя * tptrp.
8
-битный параметр).NULL
).NULL
).RFC 2292
inet6_option_alloc(), inet6_option_append(), inet6_option_init(), inet6_option_next(), inet6_option_space()
Основано на:
Предыдущий раздел: Описание API сетевой библиотеки