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}