Specify the Strict/Loose flag for the final hop of an IPv6 routing header
Synopsis:
#include <netinet/in.h>
int inet6_rthdr_lasthop(struct cmsghdr *cmsg,
unsigned int flags);
Arguments:
- cmsg
- Ancillary data containing the routing header.
- flags
- Routing header flags. It's either IPV6_RTHDR_LOOSE, or
IPV6_RTHDR_STRICT for an IPv6 Type 0 routing header.
Library:
libsocket
Use the -l socket option to
qcc
to link against this library.
Description:
This function specifies the Strict/Loose flag for the final hop of a
routing header.
Note:
A routing header specifying N intermediate nodes requires
N+1
Strict/Loose flags.
This requires N calls to inet6_rthdr_add() followed
by one call to inet6_rthdr_lasthop().
Based on:
- W. Stevens and M. Thomas, Advanced Sockets API for IPv6,
RFC 2292, February 1998. Contains good examples.
- S. Deering and R. Hinden, Internet Protocol, Version 6
(IPv6) Specification, RFC 2460, December 1998.
Returns:
- 0
- Success.
- -1
- An error occurred.
Classification:
RFC 2292
Safety: |
|
Cancellation point |
No |
Interrupt handler |
No |
Signal handler |
Yes |
Thread |
Yes |