Test Information

TitleRestricts AF_INET6 sockets to IPv6 communications only
CommandLine./tst_v6only_set_client --log=18.html --title=Restricts AF_INET6 sockets to IPv6 communications only
TestVersionREL_1_1_18
Start2023/01/26 16:32:16
SystemName(null)
KernelVersion(null)

Test Sequence Execution Log

16:32:16Start
16:32:17tst_get_unused_port() get port 37429

== create an IPv4 socket ==
16:32:17socket(domain:AF_INET, type:SOCK_STREAM, protocol:0)
16:32:17return sockfd=4

== bind IPv4 socket to port 37429 ==
16:32:17bind(sockfd:4, my_addr:0x3ffe797925c, addrlen:16)
16:32:17return 0

== listen on IPv4 socket ==
16:32:17listen(sockfd:4, backlog:100)
16:32:17return 0

== create an IPv6 socket ==
16:32:17socket(domain:AF_INET6, type:SOCK_STREAM, protocol:0)
16:32:17return sockfd=5
16:32:17inet_pton(af:AF_INET6, src:"::FFFF:127.0.0.1", dst:0x3ffe7979274)
16:32:17return 1, dst=0000:0000:0000:0000:0000:ffff:7f00:0001

== enable the IPV6_V6ONLY option ==
16:32:17setsockopt(sockfd:5, level:IPPROTO_IPV6, optname:IPV6_V6ONLY, optval:0x3ffe7979258, optlen:4)
16:32:17return 0

== connect IPv6 socket to IPv4 socket ==
16:32:17connect(sockfd:5, serv_addr:0x3ffe797926c, addrlen:28)
16:32:17return error ENETUNREACH

== disable the IPV6_V6ONLY option ==
16:32:17setsockopt(sockfd:5, level:IPPROTO_IPV6, optname:IPV6_V6ONLY, optval:0x3ffe7979258, optlen:4)
16:32:17return 0

== connect IPv6 socket to IPv4 socket ==
16:32:17connect(sockfd:5, serv_addr:0x3ffe797926c, addrlen:28)
16:32:17return 0

== accept the connect on IPv4 socket ==
16:32:18accept(sockfd:4, addr:0x3ffe797925c, addrlen:0x3ffe7979254)
16:32:18return 6

== send message on IPv4 socket ==
16:32:18send(sockfd:6, buf:0x3ffe79791f0, len:100, flags:0)
16:32:18return 100
16:32:18recv(sockfd:5, buf:0x3ffe79791f0, len:100, flags:0)
16:32:18return 100
16:32:18close(6)
16:32:18close(5)
16:32:18close(4)

OK
16:32:18End