Fix the card ETSI release lookup: the CE tag is raw hex

The expanded registry returns the package version as two bytes of hex (010C)
and the ELF rows format it with ramFmtVersion (010C -> 1.12) - the release
lookup used the raw value, so the live card showed
"ETSI release: unknown (uicc.toolkit 010C)".  cardEtsiRelease formats it the
same way (a non-4-hex value passes through unchanged) and the tests now use
the raw vectors the card actually returns.

- sw cache simple-v355.
This commit is contained in:
2026-10-02 00:53:00 +03:00
parent 00181ba3ad
commit 0f69c6d588
3 changed files with 16 additions and 9 deletions
+5 -2
View File
@@ -9458,8 +9458,11 @@ function ramElfVersionHint(elfForm) {
function cardEtsiRelease(elfs) {
const tk = (elfs || []).find(e => (e.aid || '').toUpperCase() === UICC_TOOLKIT_AID);
if (!tk) return null;
const v = String(tk.version || '').trim();
if (!v) return { release: '', basis: '' };
const raw = String(tk.version || '').trim();
if (!raw) return { release: '', basis: '' };
// the CE tag is raw hex (010C = 1.12): ramFmtVersion is the same
// formatter the ELF rows use; a non-4-hex value passes through unchanged
const v = ramFmtVersion(raw);
return { release: ETSI_TOOLKIT_RELEASE[v] || '', basis: 'uicc.toolkit ' + v };
}