|
inet6_rth_init(3)
Contents
|
inet6_rth_init - Initialize an IPv6 Routing header buffer
#include <netinet/ip6.h>
void inet6_rth_init(
void *bp,
int bp_len,
int type,
int segments );
Standard C Library (libc)
Points to a buffer that is to contain an IPv6 Routing
header. Specifies the length, in bytes, of the buffer.
Specifies the type of Routing header. The valid value is
IPV6_RTHDR_TYPE_0 for IPv6 Routing header type 0. Specifies
the number of segments or addresses that are to be
included in the Routing header. The valid value is from 0
to 127, inclusive.
The inet6_rth_init() function initializes a buffer and
buffer data for an IPv6 Routing header. The function sets
the ip60r_segleft, ip6r0_nxt, and ip6r0_reserved members
in the ip6_rthdr0 structure to zero (0). In addition, it
sets the ip6r0_type member to type and sets the ip6r0_len
member based in the segments parameter. (See RFC 2460 for
a description of the actual value.) The ip6_rthdr0 structure
is defined in netinet/ip6.h.
The application must allocate the buffer. Use the
inet6_rth_space() function to determine the buffer size.
Use the returned pointer as the first argument to the
inet6_rth_add() function.
Upon successful completion, the inet6_rth_init() function
returns a pointer to the buffer that is to contain the
Routing header. If the type is not supported, the bp is a
null, or the number of bp_len is invalid, the function
returns a NULL pointer.
Functions: inet6_rth_add(3), inet6_rth_getaddr(3),
inet6_rth_reverse(3), inet6_rth_segments(3),
inet6_rth_space(3).
Network Programmer's Guide
inet6_rth_init(3)
[ Back ] |