08:42:20 | Start |
| == create an IPv6 socket == |
08:42:20 | socket(domain:AF_INET6, type:SOCK_DGRAM, protocol:0)
|
08:42:20 | return sockfd=4
|
| == join a multicast group on Link0 == |
08:42:20 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:20 | return 106
|
08:42:20 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:20 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:20 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:20 | return 0
|
| == leave this multicast group == |
08:42:20 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:20 | return 106
|
08:42:20 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:20 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:20 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:20 | return 0
|
| == leave dummy_ipv6 to ff03::02 again == |
08:42:20 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:20 | return 106
|
08:42:20 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:20 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:20 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:20 | return error EADDRNOTAVAIL
|
| == bind socket to lo== |
08:42:21 | tst_get_unused_port() get port 51277
|
08:42:21 | bind(sockfd:4, my_addr:0x7ffe728b1650, addrlen:28)
|
08:42:21 | return 0
|
| == creat recv socket == |
08:42:21 | socket(domain:AF_INET6, type:SOCK_DGRAM, protocol:0)
|
08:42:21 | return sockfd=5
|
| == bind socket to ifaddr0== |
08:42:22 | tst_get_unused_port() get port 58643
|
08:42:22 | inet_pton(af:AF_INET6, src:"fe80::686d:b9ff:fea2:3a1", dst:0x7ffe728b1638)
|
08:42:22 | return 1, dst=fe80:0000:0000:0000:686d:b9ff:fea2:03a1
|
08:42:22 | setsockopt(sockfd:5, level:IPPROTO_ICMP, optname:IPV6_RECVERR, optval:0x7ffe728b1670, optlen:40)
|
08:42:22 | return 0
|
08:42:22 | bind(sockfd:5, my_addr:0x7ffe728b1630, addrlen:28)
|
08:42:22 | return 0
|
08:42:22 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:22 | return 106
|
08:42:22 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:22 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:22 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b1618)
|
08:42:22 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:22 | sendto(sockfd:5, buf:0x7ffe728b1608, len:4, flags:0, to:0x7ffe728b1610, tolen:28)
|
08:42:22 | return 4
|
08:42:22 | recvfrom(sockfd:4, buf:0x7ffe728b1604, len:4, flags:64, from:0x7ffe728b1630, fromlen:28)
|
08:42:22 | return -1
|
| == join a multicast group on Link0 == |
08:42:22 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:22 | return 106
|
08:42:22 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:22 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:22 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:22 | return 0
|
| == leave this multicast group with index 0== |
08:42:23 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:23 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:23 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:23 | return 0
|
| == leave this multicast group on Link0 again== |
08:42:23 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:23 | return 106
|
08:42:23 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:23 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:23 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:23 | return error EADDRNOTAVAIL
|
| == join a multicast group on Link0 == |
08:42:23 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:23 | return 106
|
08:42:23 | inet_pton(af:AF_INET6, src:"ff03::02", dst:0x7ffe728b16a0)
|
08:42:23 | return 1, dst=ff03:0000:0000:0000:0000:0000:0000:0002
|
08:42:23 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_JOIN_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:23 | return 0
|
| == leave EINVAL multicast group on Link0 == |
08:42:23 | if_nametoindex(ifname:"dummy_ipv6")
|
08:42:23 | return 106
|
08:42:23 | inet_pton(af:AF_INET6, src:"fe80::1", dst:0x7ffe728b16a0)
|
08:42:23 | return 1, dst=fe80:0000:0000:0000:0000:0000:0000:0001
|
08:42:23 | setsockopt(sockfd:4, level:IPPROTO_IPV6, optname:IPV6_LEAVE_GROUP, optval:0x7ffe728b16a0, optlen:20)
|
08:42:23 | return error EINVAL
|
| OK |
08:42:23 | End |