code wiki / _hdl_build / nx_email_provision_gate.nx

nx_email_provision_gate.nx

buildroot/runtime/_hdl_build/nx_email_provision_gate.nx

6330 B101 linesdepth 11pulls 23 transitivereach 0 importersview sourcekind gate/prooftopic email
docsdependenciesstructsconstsfunctions

about

nx_email_provision_gate.nx -- MEASURED gate for per-domain email provisioning, run for andelinwest.com (the operator's "finish andelinwest email"). Provisions the domain via nx_email_provision_lib, then proves the WHOLE mail path is correct for it -- inbound accept policy AND outbound DKIM -- using the real email organs: T1 DKIM keypair round-trips -> the published pubkey validates this signer (ed25519 sign+verify) T2 DNS zone structure -> MX/SPF/DKIM/DMARC + selector all present for andelinwest.com T3 MTA own-domain accept policy -> info@andelinwest.com ACCEPTED, spammer@evil.com REFUSED (no open relay) T4 end-to-end DKIM outbound -> a message From: postmaster@andelinwest.com signs+verifies; a tampered body fails Verdict MEASURED from the real organs. GREEN iff 4/4. Appends knowledge/status/email_provision_gate.log and prints the publishable zone. license_tier: ORIGINAL

dependencies 4 imports · 0 importers

nx_email_provision_lib.nx nx_g_puts_lib.nx nx_email_mta.nx nx_email_send.nx nx_email_provision_gate.nx

imports: nx_email_provision_lib.nxnx_g_puts_lib.nxnx_email_mta.nxnx_email_send.nx

imported by: nobody (leaf or entry point)

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

main g_puts sys_write ep_provision ep_load_priv sys_mmap ep_path ep_cat sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close nx_csprng_fill sys_mmap ↻ nx_csprng_urandom_path sys_openat_rd ↻ sys_read ↻ sys_close ↻ ed25519_pub_from_priv sys_mmap ↻ ed25519_sha512 sys_mmap ↻ sha512_init sha512_update sha512_blk_set_byte blk_get_i64 blk_set_i64 sha512_compress sys_mmap ↻ blk_get_i64 ↻ sha512_gamma0 sha512_gamma1 sha512_sigma1 sha512_ch sha512_k sha512_sigma0 sha512_maj sha512_final

structs

none

consts

none

functions

15func g_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 2: g_containsmain
16func g_w(fd: i64, s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(fd, s, n); return 0 }
called by 1: main
17func g_wn(fd: i64, v: i64) -> i64
called by 1: main
23func g_contains(hay: *u8, hlen: i64, ndl: *u8) -> i64
called by 1: main calls 1: g_slen
30func main() -> i64