inet6_rth_init(3)inet6_rth_init(3)NAMEinet6_rth_init - Initialize an IPv6 Routing header buffer
SYNOPSIS
#include <netinet/ip6.h>
void inet6_rth_init(
void *bp,
int bp_len,
int type,
int segments );
LIBRARY
Standard C Library (libc)
PARAMETERS
Points to a buffer that is to contain an IPv6 Routing header. Speci‐
fies the length, in bytes, of the buffer. Specifies the type of Rout‐
ing 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.
DESCRIPTION
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.
RETURN VALUES
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.
SEE ALSO
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)