08:42:26 | Start |
08:42:27 | tst_get_unused_port() get port 53370
|
| == create an IPv6 socket == |
08:42:27 | socket(domain:AF_INET6, type:SOCK_DGRAM, protocol:0)
|
08:42:27 | return sockfd=4
|
| == leave this any group == |
08:42:27 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:27 | return 106
|
08:42:27 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:27 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:27 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:27 | return error ENOENT
|
| == join a anycast group on Link0 == |
08:42:27 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:27 | return 106
|
08:42:27 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:27 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:27 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:27 | return 0
|
| == leave this any group == |
08:42:27 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:27 | return 106
|
08:42:27 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:27 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:27 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:27 | return 0
|
| == creat send socket == |
08:42:27 | socket(domain:AF_INET6, type:SOCK_DGRAM, protocol:0)
|
08:42:27 | return sockfd=5
|
08:42:27 | inet_pton(af:AF_INET6, src:"::1", dst:0x7ffd8f6b8688)
|
08:42:27 | return 1, dst=0000:0000:0000:0000:0000:0000:0000:0001
|
08:42:27 | bind(sockfd:5, my_addr:0x7ffd8f6b8680, addrlen:28)
|
08:42:27 | return 0
|
08:42:27 | setsockopt(sockfd:5, level:IPPROTO_ICMP, optname:IPV6_2292PKTINFO, optval:0x7ffd8f6b8654, optlen:4)
|
08:42:27 | return 0
|
08:42:27 | bind(sockfd:4, my_addr:0x7ffd8f6b86a0, addrlen:28)
|
08:42:27 | return 0
|
08:42:27 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b8668)
|
08:42:27 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:27 | sendto(sockfd:5, buf:0x7ffd8f6b865c, len:4, flags:0, to:0x7ffd8f6b8660, tolen:28)
|
08:42:27 | return 4
|
08:42:27 | recvfrom(sockfd:4, buf:0x7ffd8f6b8658, len:4, flags:64, from:(nil), fromlen:0)
|
08:42:27 | return -1
|
| == join a anycast group on Link0 == |
08:42:27 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:27 | return 106
|
08:42:27 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:27 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:27 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:27 | return 0
|
| == leave this any group == |
08:42:28 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:28 | return 106
|
08:42:28 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return 0
|
| == leave this any group again == |
08:42:28 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:28 | return 106
|
08:42:28 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return error ENOENT
|
| == join a anycast group on Link0 == |
08:42:28 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:28 | return 106
|
08:42:28 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return 0
|
| == leave this anycast group with index 0== |
08:42:28 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return 0
|
| == leave this any group == |
08:42:28 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:28 | return 106
|
08:42:28 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return error ENOENT
|
08:42:28 | sendto(sockfd:5, buf:0x7ffd8f6b865c, len:4, flags:0, to:0x7ffd8f6b8660, tolen:28)
|
08:42:28 | return 4
|
08:42:28 | recvfrom(sockfd:4, buf:0x7ffd8f6b8658, len:4, flags:64, from:(nil), fromlen:0)
|
08:42:28 | return -1
|
| == join a anycast group on Link0 == |
08:42:28 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:28 | return 106
|
08:42:28 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return 0
|
| == leave EINVAL anycast group |
08:42:28 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:28 | return 106
|
08:42:28 | inet_pton(af:AF_INET6, src:"ff03::01", dst:0x7ffd8f6b86c0)
|
08:42:28 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0001
|
08:42:28 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_ANYCAST, optval:0x7ffd8f6b86c0, optlen:20)
|
08:42:28 | return error ENOENT
|
| OK |
08:42:28 | End |