v1.9.26: profiler (card file-structure & content verification)
New 'Profiler' sub-tab in card-reader view: - Named rulesets (profiles) persisted in localStorage; each has an ordered list of filesystem rules (type 'file', extensible to OTA/TAR checks later) - List page: New profile / Profile from card / Import profile + per-profile Edit / Check / Export / Delete - Editor page: inline rule fields (path, file type, size, record length, record count, contents with exact/mask/'?'-wildcard modes) - Results page: sequential rule checks with live progress and a pass/fail report (existence + FCI attributes + content match) - 'Profile from card' scans the equipped card; creates a rule only for files that exist (FCI present). A scan-options dialog lets the user skip contents of frequently-overwritten dynamic files (LOCI/PSLOCI/EPSLOCI/5GS3GPPLOCI/ Keys/KeysPS/SMS/Kc/KcGPRS/LOCIGPRS/CBMID/SMSS), checked by default - ADF-rooted paths use the AID; paths resolve via a new server _select_path Server: - _select_path() resolves MF/ADF-AID-rooted paths (pySim can't select ADF by AID) - /api/select and /api/read accept 'path'; /api/select returns file_size, record_len, num_of_rec Also fix: silent SELECT (P2=0x0C) no longer emits a trailing Le byte (chain builder) - matches ETSI TS 102 221 silent-select behavior. Tests: +profiler.test.js; frontend 117 pass, Python 61 pass. SW cache v37.
This commit is contained in:
+1
-1
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "pysim-otaman-server"
|
||||
version = "1.9.25"
|
||||
version = "1.9.26"
|
||||
description = "HTTP REST server wrapping pysim for the OTAMan PWA"
|
||||
requires-python = ">=3.8"
|
||||
# pysim is a git-only dependency installed explicitly by setup.bat/setup.sh.
|
||||
|
||||
Reference in New Issue
Block a user