code wiki / _hdl_build / nx_fetch_print.nx
nx_fetch_print.nx source
↩ module page · 21 lines · 1167 B
1// nx_fetch_print.nx -- minimal sovereign GET-and-print (nx_https_get). usage: nx_fetch_print <url>.
2// Used to READ a served artifact (e.g. /health.json) to verify the NAS-side M&E loop wrote a fresh pass.
3// license_tier: ORIGINAL
4import "nx_https_get.nx"
5import "nx_trust_store_load_from_certdata.nx"
6const K_MAGIC_4194304: i64 = 4194304
7const K_MAGIC_262144: i64 = 262144
8
9func main(argc: i64, argv: *i64) -> i64 {
10 if argc < 2 { sys_write(1, "usage: nx_fetch_print <url>\n" as *u8, 27); return 2 }
11 let r: i64 = nx_trust_store_load_from_certdata("data/mozilla_certdata.txt\x00" as *u8, 512, K_MAGIC_4194304)
12 if r <= 0 { sys_write(1, "trust store fail\n" as *u8, 17); return 1 }
13 let store: *TrustStore = r as *TrustStore
14 let cr: *u8 = sys_mmap(32); var i: i64=0; while i<32 { cr[i]=(0x41 + i) as u8; i=i+1 }
15 let pk: *u8 = sys_mmap(32); i=0; while i<32 { pk[i]=(0x81 + i) as u8; i=i+1 }
16 let out: *u8 = sys_mmap(K_MAGIC_262144)
17 let n: i64 = nx_https_get(argv[1] as *u8, cr, pk, store, sys_now_realtime_sec(), out, K_MAGIC_262144)
18 if n <= 0 { sys_write(1, "GET-FAIL\n" as *u8, 9); return 1 }
19 sys_write(1, out, n)
20 return 0
21}