code wiki / _hdl_build / nx_file_install_session_20260910.nx

nx_file_install_session_20260910.nx

buildroot/runtime/_hdl_build/nx_file_install_session_20260910.nx

21537 B413 linesdepth 6pulls 6 transitivereach 3 importersview sourcekind librarytopic file
docsdependenciesstructsconstsfunctions

about

Recoverable file installation. An immutable, checksummed intent identifies every pathname and both artifact digests. No process-local pointer is persisted. Runtime/service health is a later acceptance step, not implied by file install.

dependencies 1 imports · 1 importers

nx_fio.nx nx_file_install_session_202609 nx_mgmt_data_toolchain_session_202

imports: nx_fio.nx

imported by: nx_mgmt_data_toolchain_session_20260910.nx

structs

16struct NxFileInstallPlan
27struct NxFileInstallResult
314struct NxFileInstallSession

consts

7const FI_MAGIC: *u8="NXFINST1"
8const FI_MAGIC_BYTES: i64=8
9const FI_DIGEST_BYTES: i64=32
10const FI_WORD_BYTES: i64=8
11const FI_PATH_FIELDS: i64=4
12const FI_HEADER_BYTES: i64=FI_MAGIC_BYTES + FI_DIGEST_BYTES*2 + FI_WORD_BYTES*(1+FI_PATH_FIELDS)
13const FI_ENOENT: i64=0-2
14const FI_EACCES: i64=0-13 // Linux errno: recorded target is outside the supplied authorization.

functions

34func fi_len(s: *u8) -> i64
38func fi_same(a: *u8,b: *u8,n: i64) -> i64
43func fi_copy(dst: *u8,src: *u8,n: i64) -> i64
48func fi_path_valid(path: *u8) -> i64
65func fi_paths_distinct(names: *i64) -> i64
80func fi_word_put(p: *u8,v: i64) -> i64
called by 1: fi_plan_create
83func fi_word_get(p: *u8) -> i64
called by 1: fi_plan_decode
87func fi_plan_init(p: *NxFileInstallPlan) -> i64
91func fi_plan_close(p: *NxFileInstallPlan) -> i64
98func fi_plan_decode(bytes: *u8,n: i64,p: *NxFileInstallPlan) -> i64
137func fi_plan_read(path: *u8,budget: i64,p: *NxFileInstallPlan) -> i64
158func fi_plan_create(path: *u8,source: *u8,live: *u8,candidate: *u8,backup: *u8,mode: i64,new_digest: *u8,old_digest: *u8,budget: i64,out: *NxFileWriteResult) -> i64
200func fi_sync_existing(path: *u8,out: *NxFileWriteResult) -> i64
208func fi_prepare_expected(source: *u8,path: *u8,digest: *u8,mode: i64,buffer: *u8,capacity: i64,out: *NxFilePrepareResult) -> i64
225func fi_install_owned(p: *NxFileInstallPlan,buffer: *u8,capacity: i64,out: *NxFileInstallResult) -> i64
258func fi_install_core(plan_path: *u8,record_budget: i64,buffer: *u8,capacity: i64,allowed_live: *u8,expected_intent: *u8,out: *NxFileInstallResult) -> i64
298func fi_install(plan_path: *u8,record_budget: i64,buffer: *u8,capacity: i64,out: *NxFileInstallResult) -> i64
calls 1: fi_install_core
301func fi_install_bound(plan_path: *u8,record_budget: i64,buffer: *u8,capacity: i64,allowed_live: *u8,expected_intent: *u8,out: *NxFileInstallResult) -> i64
321func fi_session_init(s:*NxFileInstallSession)->i64
325func fi_session_bind(p:*NxFileInstallPlan,allowed_live:*u8,expected_intent:*u8)->i64
336func fi_session_close(s:*NxFileInstallSession)->i64
345func fi_session_begin(path:*u8,budget:i64,allowed_live:*u8,expected_intent:*u8,s:*NxFileInstallSession)->i64
361func fi_session_result_init(out:*NxFileInstallResult)->i64
366func fi_session_publish(s:*NxFileInstallSession,buffer:*u8,capacity:i64,out:*NxFileInstallResult)->i64
373func fi_session_reverse(s:*NxFileInstallSession,path:*u8,budget:i64,expected_intent:*u8,buffer:*u8,capacity:i64,out:*NxFileInstallResult)->i64
392func fi_session_prepare_reverse(s:*NxFileInstallSession,path:*u8,budget:i64,expected_intent:*u8,buffer:*u8,capacity:i64,out:*NxFileInstallResult)->i64