nx_acme_issue.nx
buildroot/runtime/nx_acme_issue.nx
about
nx_acme_issue.nx -- live ACME issuance drive loop (ES256, DNS-01).
Composes the two ACME layers (both nx_syscalls graph):
nx_acme_es256.nx -- ES256 JWS builders + DNS-01 + pubkey_from_priv
nx_acme_http.nx -- TLS transport + JSON reader + header reader
Built + tested INCREMENTALLY against Let's Encrypt PRODUCTION. The
pre-challenge steps (directory / nonce / newAccount / newOrder / authz
fetch) are NOT failed-validation-rate-limited, so they are safe to
exercise repeatedly; only triggering a challenge that then fails counts
against the 5/hour/hostname budget, so that step is gated separately.
Stage selector: argv-free; this build does directory -> nonce ->
newAccount -> newOrder -> authz fetch, printing each result. The
account key is persisted (reused across renewals).
license_tier: ORIGINAL
dependencies 2 imports · 1 importers
imports: nx_acme_es256.nxnx_acme_http.nx
imported by: nx_acme_dns01_issue.nx
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 21 | const ACME_MAGIC_2048: i64 = 2048 |
| 22 | const ACME_MAGIC_8192: i64 = 8192 |
| 23 | const ACME_MAGIC_16384: i64 = 16384 |
| 24 | const ACME_MAGIC_3000: i64 = 3000 |
| 25 | const ACME_MAGIC_4194304: i64 = 4194304 |
| 26 | const ACME_MAGIC_1779284141: i64 = 1779284141 |
| 27 | const ACME_MAGIC_65536: i64 = 65536 |
| 28 | const ACME_MAGIC_4096: i64 = 4096 |
| 30 | const ACME_ACCT_KEY_PATH: *u8 = "/tmp/acme_acct_key.bin\x00" |
functions
| 33 | func acme_dup_cstr(src: *u8, off: i64, len: i64) -> *u8 |
| 43 | func acme_account_key(priv_limbs: *i64) -> i64 |
| 65 | func acme_print(label: *u8, label_n: i64, s: *u8, s_n: i64) -> i64 |
| 73 | func acme_nonce_from(resp: *u8, total: i64, r: *i64, out_n: *i64) -> *u8 |
| 85 | func acme_signed_post(priv: *i64, kid: *u8, kid_n: i64, called by 2: mainacme_do_http01 calls 2: nx_acme_es256_protected_kid_formnx_jose_sign_es256_flattened |
| 102 | func acme_find_http01(body: *u8, start: i64, len: i64, |
| 144 | func acme_json_array_nth(buf: *u8, start: i64, n: i64, called by 1: main |
| 184 | func acme_do_http01(au: *u8, aun: i64, |
| 261 | func main() -> i64 calls 1: nx_trust_store_load_from_certdata |