inet6_option_append()

Добавить пошаговые (hop-by-hop) параметры или параметры назначения IPv6 в объект вспомогательных данных

Прототип:

#include <netinet/in.h>
int inet6_option_append( struct cmsghdr *cmsg,
const u_int8_t *typep,
int multx,
int plusy );

Аргументы:

cmsg
Указатель на структуру cmsghdr, которая была проинициализирована вызовом inet6_option_init().
typep
Указатель на 8-битный тип параметра. Предполагается, что за этим полем сразу следует 8-битное поле длины данных опции, за которым следуют данные опции. Необходимо инициализировать эти три поля (тип-длина-значение или TLV) перед вызовом данной функции. Тип опции должен иметь значение от 2 до 255 включительно. (0 и 1 зарезервированы для параметров Pad1 и PadN соответственно.) Длина данных параметра должна быть в диапазоне от 0 до 255 включительно, она определяет длину данных последующего параметра.
multx
Значение x в выражении xn + y. Допустимы значения 1, 2, 4, или 8.
plusy
Значение y в выражении xn + y. Допустимы значения от 0 до 7 включительно.

Библиотека:

libsocket

Описание:

Функция inet6_option_append() добавляет пошаговый (hop-by-hop) параметр или параметр назначения к объекту вспомогательных данных, который был инициализирован посредством inet6_option_init().

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка.

Классификация:

RFC 2292

Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

inet6_option_alloc(), inet6_option_find(), inet6_option_init(), inet6_option_next(), inet6_option_space()

W. Stevens and M. Thomas, Advanced Sockets API for IPv6, RFC 2292, February 1998. Contains examples.

S. Deering and R. Hinden, Internet Protocol, Version 6 (IPv6) Specification, RFC 2460, December 1998.




Предыдущий раздел: Описание API сетевой библиотеки