End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
Socket::AncillaryData#ipv6_pktinfo_ifindex
ancdata.ipv6_pktinfo_ifindex => addr
ext/socket/ancdata.c
View on GitHub ↗
static VALUE
ancillary_ipv6_pktinfo_ifindex(VALUE self)
{
struct in6_pktinfo pktinfo;
struct sockaddr_in6 sa;
extract_ipv6_pktinfo(self, &pktinfo, &sa);
return UINT2NUM(pktinfo.ipi6_ifindex);
}
Extracts ifindex from IPV6_PKTINFO ancillary data.
IPV6_PKTINFO is defined by RFC 3542.
Example
addr = Addrinfo.ip("::1") ifindex = 0 ancdata = Socket::AncillaryData.ipv6_pktinfo(addr, ifindex) p ancdata.ipv6_pktinfo_ifindex #=> 0
See also
#ipv6_pktinfo_addr
#level
#ipv6_pktinfo
#timestamp
also in
4.1 · 4.0 · 3.4 · 3.3 · 3.2 · 3.1