v / vlib / net / openssl / openssl_import_tcp_accept_test.c.v
24 lines · 20 sloc · 568 bytes · ae05c4efb6d4474a2ef30ccf69af1343afd1b9dd
Raw
1// vtest build: present_openssl?
2import net
3import net.openssl as _
4
5fn test_importing_openssl_does_not_break_tcp_listener_accept() {
6 mut listener := net.listen_tcp(.ip, '127.0.0.1:0', net.ListenOptions{}) or { panic(err) }
7 defer {
8 listener.close() or {}
9 }
10
11 address := listener.addr() or { panic(err) }
12 mut client := net.dial_tcp(address.str()) or { panic(err) }
13 defer {
14 client.close() or {}
15 }
16
17 mut server := listener.accept() or { panic(err) }
18 defer {
19 server.close() or {}
20 }
21
22 peer := server.peer_addr() or { panic(err) }
23 assert peer.str().len > 0
24}
25