File names: the DF-scoped spec dictionary + refreshed EF/SFI tables (v2.5.0)
- the file/DF/SFI dictionaries move to simtrace_analyser/ef_tables.py and are extracted from the pinned specs: TS 102 221 (MF, Annex H.1), TS 31.102 (ADF USIM 4.2 and the child DFs 4.3/4.4/4.6, the H.1-H.12 SFI annexes, the Annex L.6 Relay Node/certificate files; Annex A/E as the ADF/DF file completeness cross-check), TS 31.103 and TS 51.011 - 20 DF tables (~370 entries) and 14 SFI tables, up from ~180 flat names and 3 SFI tables - names are DF-scoped: a FID reused across DFs resolves to the file its DF context names - 4F09 is EF_SUPI_NAI under DF_5GS but EF_PROSE_GC under DF_ProSe, 6F07 is EF_IMSI in the USIM/SIM but EF_IST in the ISIM, 6F4E is EF_EXT4 in DF_TELECOM but EF_EXT5 in the USIM ADF; the flat table keeps only names that are identical everywhere and is the fallback when no DF is known (the two names the old table had wrong there are fixed: 6F0A is EF_AC_GBAUAPI, 6F53 EF_LOCIGPRS) - the SELECT-path decoder resolves the 7FFF children against the USIM ADF table, and the Files view names files DF-first - including files first seen only via their FCP (a select-only file used to keep the bare FID, e.g. ADF/6F3C is now ADF/EF_SMS (6F3C)) - tests/data/spec_files.json pins the extracted tables; tests/test_decode.py asserts the DF/ADF tables cover them, the SFI tables match them exactly and every flat name is a spec name for that FID; tests/extract_spec_tables.py regenerates the fixture from the PDFs and --check re-verifies the tables - README/README_RUS document the dictionary and its sources; PWA_VERSION and pyproject/version.py 2.5.0, SW cache simtrace-analyser-v71
This commit is contained in:
1 parent
bd0c9a2c4a
commit
cbeeed3608
14 files changed
+1820
-350
No files matched your search
+12
-1
@@ -224,7 +224,8 @@ Files — это таймлайн файловых операций по все
|
||||
известных образу (никогда не виденные байты просто заполняют образ — это
|
||||
наблюдение, а не изменение). Файлы, доступные по SFI, попадают в ту же
|
||||
запись, что и доступ по пути/FID: соответствия SFI ↔ FID берутся из
|
||||
нормативных таблиц (TS 102 221 Annex H, TS 31.102 Annex H) и из каждого
|
||||
нормативных таблиц (анекс H.1 TS 102 221 и анексы H.1–H.12 TS 31.102;
|
||||
строки SFI ISIM — из TS 31.103) и из каждого
|
||||
показанного FCP с DO `88`, включая правило спецификации «SFI = 5 младших бит
|
||||
FID» при отсутствии DO; SFI, использованный до того, как связь выучена,
|
||||
остаётся предварительным и сливается с разрешённой записью. Контекст DF
|
||||
@@ -236,6 +237,16 @@ DF, включая выбор по пути); приложения, выбран
|
||||
последние 1000 событий на файл (`changes_total` продолжает считать).
|
||||
Счётчики API отдаёт, но в этом виде пока не показываются.
|
||||
|
||||
Имена файлов **привязаны к DF**: `simtrace_analyser/ef_tables.py` содержит
|
||||
полные таблицы файлов и SFI по каждому DF, извлечённые из закреплённых
|
||||
спецификаций (TS 102 221, TS 31.102 включая анексы SFI H.1–H.12, TS 31.103,
|
||||
TS 51.011), поэтому FID, повторно используемый в разных DF, разрешается в имя
|
||||
своего контекста — `4F09` это EF_SUPI_NAI в DF_5GS, но EF_PROSE_GC в DF_ProSe;
|
||||
`6F07` — EF_IMSI в USIM/SIM, но EF_IST в ISIM; `6F4E` — EF_EXT4 в DF_TELECOM,
|
||||
но EF_EXT5 в ADF USIM, — а плоская таблица служит запасным вариантом, когда DF
|
||||
неизвестен. `tests/extract_spec_tables.py` пересобирает закреплённый фикстур
|
||||
(`tests/data/spec_files.json`), `--check` повторно сверяет таблицы с PDF.
|
||||
|
||||
Параметры сервера:
|
||||
|
||||
```
|
||||
|
||||
Reference in new issue
Block a user