Drop fabricated SET UP IDLE MODE TEXT qualifier decode; bump to 1.15.1

Spec verification against UICC_SPECS.md / TS 102 223 V18.3.0 §8.6
showed the Command Qualifier for SET UP IDLE MODE TEXT is RFU
("this byte is RFU") — no icon self-explanatory bit exists in any
generation (GSM 11.14 predates the command; TS 31.111 does not
override it). The v1.11.0 _idle_text_qualifier decoded bit 1 as
"icon self-explanatory" from an unverified source.

Remove the decoder; the command now uses generic RFU handling
(hidden at '00', raw hex otherwise). Tests updated accordingly.
Version 1.15.1, SW cache v21.
This commit is contained in:
catarrh committed 2026-08-23 15:16:40 +03:00
1 parent f61ca9685c
commit bf83074de8
7 files changed
+12 -21

No files matched your search

+1 -1
View File
@@ -6,7 +6,7 @@ from .gsmtap import GsmtapSender, GsmtapReceiver
from .pcap import PcapWriter
from .dump import FileDumper, format_message
__version__ = '1.15.0'
__version__ = '1.15.1'
__all__ = [
'SniffSession',
'DeviceDisconnected',
+3 -14
View File
@@ -1069,20 +1069,9 @@ COMMAND_QUALIFIERS = {
0x01: REFRESH_MODES, # REFRESH
0x26: PLI_QUALIFIERS, # PROVIDE LOCAL INFORMATION
}
def _idle_text_qualifier(qualifier):
"""SET UP IDLE MODE TEXT (TS 102 223 §6.6.13): bit 1 = icon
self-explanatory flag, all other bits RFU."""
if qualifier & ~0x01:
return f'0x{qualifier:02X}'
if qualifier & 0x01:
return 'icon self-explanatory'
return None
# TS 102 223 §6.6.13 — SET UP IDLE MODE TEXT
COMMAND_QUALIFIERS[0x28] = _idle_text_qualifier
# NOTE: SET UP IDLE MODE TEXT ('28') has no entry — its Command Qualifier
# is RFU per TS 102 223 V18.3.0 §8.6 ("this byte is RFU"); the generic
# fallback (hidden at '00', raw hex otherwise) applies.
# ──────────────────── §8.6 bitmask qualifier decoders ────────────────────