VMS Help  —  TCPIP Services, Programming Interfaces, Socket API Functions, inet6_rth_init()
    Initializes an IPv6 routing header buffer.
    Format
      #include  <in6.h>
      void *inet6_rth_init  ( void *bp, int bp_len, int type, int
                            segments );

1  –  Arguments

 bp
    Points to a buffer that is to contain an IPv6 routing header.
 bp_len
    Specifies the length, in bytes, of the buffer.
 type
    Specifies the type of routing header. The valid value is IPV6_
    RTHDR_TYPE_0 for IPv6 routing header type 0.
 segments
    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.

2  –  Description

    This function initializes a buffer and buffer data for an IPv6
    routing header. The function sets the ip6r0_segleft, ip6r0_nxt,
    and ip6r0_reserved members in the ip6_rthdr0 structure to zero.
    In addition, it sets the ip6r0_type member to type and sets the
    ip6r0_len member based on the segments argument. The ip6_rthdr0
    structure is defined in the IP6.H header file.
    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.

3  –  Return Values

    x                  Upon successful completion, the inet6_rth_
                       init() function returns a pointer to the
                       buffer that is to contain the routing header.
    NULL pointer       Failure. If the type is not supported, the bp
                       is a null, or the number of bp_len is invalid.
Close Help