instance method
Socket::AncillaryData#ipv6_pktinfo_addr
() -> ::Addrinfo
ancdata.ipv6_pktinfo_addr => addr
ext/socket/ancdata.c
View on GitHub ↗
static VALUE
ancillary_ipv6_pktinfo_addr(VALUE self)
{
struct in6_pktinfo pktinfo;
struct sockaddr_in6 sa;
extract_ipv6_pktinfo(self, &pktinfo, &sa);
return rsock_addrinfo_new((struct sockaddr *)&sa, (socklen_t)sizeof(sa), PF_INET6, 0, 0, Qnil, Qnil);
}
Extracts addr 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_addr #=> #<Addrinfo: ::1>
See also
#ipv6_pktinfo
#ipv6_pktinfo_ifindex
#ip_pktinfo
#level
also in
4.1 · 3.4 · 3.3 · 3.2 · 3.1 · 3.0