code wiki / (root) / nx_tls13_handshake_tcp_test.nx

nx_tls13_handshake_tcp_test.nx

buildroot/runtime/nx_tls13_handshake_tcp_test.nx

14479 B366 linesdepth 10pulls 24 transitivereach 0 importersview sourcekind gate/prooftopic tls13
docsdependenciesstructsconstsfunctions

about

nx_tls13_handshake_tcp_test.nx -- full TLS 1.3 client+server handshake driven over real TCP sockets via fork loopback. Same state-machine sequence as nx_tls13_loopback_test (which runs in-process), but each message hop crosses a real kernel socket. Plaintext throughout (the AEAD record-protection layer is a SEPARATE wrap exercised by nx_https_class_loopback_x86_64_smoke). This is the substrate-level proof that the client+server state machines can drive a complete TLS 1.3 handshake to mutual CONNECTED with byte-exact transcripts -- the prerequisite for nx_https_get to make actual TLS calls. expect_exit: 0 license_tier: ORIGINAL

dependencies 12 imports · 0 importers

nx_syscalls.nx nx_connect.nx nx_x25519.nx nx_tls13.nx nx_tls13_ext.nx nx_tls13_hello.nx nx_tls13_finished.nx nx_tls13_transcript.nx nx_tls13_handshake.nx nx_tls13_schedule.nx nx_tls13_handshake_tcp_test.nx

diagram shows first 10 each side; +2 more imports, +0 more importers in the complete lists below.

imports: nx_syscalls.nxnx_connect.nxnx_x25519.nxnx_tls13.nxnx_tls13_ext.nxnx_tls13_hello.nxnx_tls13_finished.nxnx_tls13_transcript.nxnx_tls13_handshake.nxnx_tls13_schedule.nxnx_tls13_client.nxnx_tls13_server.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main sys_mmap build_addr sys_socket sys_bind sys_listen sys_fork nx_connect_bounded nx_fcntl sys_connect sys_mmap ↻ sys_poll x25519 nx_scratch_save nx_scratch_init sys_mmap ↻ nx_scratch nx_scratch_init ↻ nx_scratch_oom sys_write sys_exit sys_mmap ↻ fe_alloc nx_scratch ↻ fe_from_bytes fe_one fe_zero fe_zero ↻ fe_copy x25519_ladder_step fe_cswap nx_scratch_save ↻ fe_alloc ↻ fe_add fe_sq fe_mul fe_sub fe_mul ↻ fe_mul_a24 nx_scratch_save ↻

structs

none

consts

30const TEST_PORT: i64 = 19443

functions

33func send_msg(fd: i64, buf: *u8, n: i64) -> i64
called by 1: main calls 2: sys_mmapsys_write
44func recv_msg(fd: i64, buf: *u8, cap: i64) -> i64
called by 1: main calls 2: sys_mmapsys_read
65func build_addr(out: *u8, port: i64) -> i64
called by 1: main
75func main() -> i64