Initialize an IPv6 routing header
#include <netinet/in.h> struct cmsghdr * inet6_rthdr_init(void *bp, int type);
libsocket
Use the -l socket option to qcc to link against this library.
This function initializes the buffer pointed to by bp to contain a cmsghdr structure followed by a Routing header of the specified type. The cmsg_len member of the cmsghdr structure is initialized to the size of the structure plus the amount of space required by the Routing header.
The cmsg_level and cmsg_type members are also initialized as required.
You must allocate the buffer before calling this function. To determine the size of the buffer, call inet6_rthdr_space().
A pointer to the cmsghdr structure, which you'll pass to other functions (and used as the first argument to list functions) or NULL if an error occured.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |
inet6_rthdr_add(), inet6_rthdr_getaddr(), inet6_rthdr_getflags(), inet6_rthdr_lasthop(), inet6_rthdr_reverse(), inet6_rthdr_segments(), inet6_rthdr_space()
Based on: