From c3edcf7294eaeafe97b673b53c21cf70e7e715da Mon Sep 17 00:00:00 2001 From: Philipp Maier Date: Tue, 10 Mar 2026 12:33:53 +0100 Subject: [PATCH] pySim-prog/pySim-read: add pySimLogger and verbose cmdline argument pySim-prog and pySim-read do not integrate the pySimLogger yet. As we may add more debug output that should not be visible on normal use, we should ensure that the pySimLogger is correctly set up. Change-Id: Ia2fa535fd9ce4ffa301c3f5d6f98c1f7a4716c74 --- pySim-prog.py | 9 +++++++++ pySim-read.py | 11 ++++++++++- tests/pySim-prog_test/Fairwaves-SIM.ok | 2 +- tests/pySim-prog_test/Wavemobile-SIM.ok | 2 +- tests/pySim-prog_test/fakemagicsim.ok | 2 +- tests/pySim-prog_test/sysmoISIM-SJA2.ok | 2 +- tests/pySim-prog_test/sysmoISIM-SJA5.ok | 2 +- tests/pySim-prog_test/sysmoUSIM-SJS1.ok | 2 +- tests/pySim-prog_test/sysmosim-gr1.ok | 2 +- 9 files changed, 26 insertions(+), 8 deletions(-) diff --git a/pySim-prog.py b/pySim-prog.py index 760a6507..3f2bb949 100755 --- a/pySim-prog.py +++ b/pySim-prog.py @@ -44,6 +44,11 @@ from pySim.legacy.ts_51_011 import EF from pySim.card_handler import * from pySim.utils import * +from pathlib import Path +import logging +from pySim.log import PySimLogger + +log = PySimLogger.get(Path(__file__).stem) def parse_options(): @@ -185,6 +190,7 @@ def parse_options(): default=False, action="store_true") parser.add_argument("--card_handler", dest="card_handler_config", metavar="FILE", help="Use automatic card handling machine") + parser.add_argument("--verbose", help="Enable verbose logging", action='store_true', default=False) options = parser.parse_args() @@ -770,6 +776,9 @@ if __name__ == '__main__': # Parse options opts = parse_options() + # Setup logger + PySimLogger.setup(print, {logging.WARN: "\033[33m"}, opts.verbose) + # Init card reader driver sl = init_reader(opts) diff --git a/pySim-read.py b/pySim-read.py index 481e9da2..d02f02e4 100755 --- a/pySim-read.py +++ b/pySim-read.py @@ -46,11 +46,17 @@ from pySim.utils import dec_imsi, dec_iccid from pySim.legacy.utils import format_xplmn_w_act, dec_st, dec_msisdn from pySim.ts_51_011 import EF_SMSP +from pathlib import Path +import logging +from pySim.log import PySimLogger + +log = PySimLogger.get(Path(__file__).stem) + option_parser = argparse.ArgumentParser(description='Legacy tool for reading some parts of a SIM card', formatter_class=argparse.ArgumentDefaultsHelpFormatter) +option_parser.add_argument("--verbose", help="Enable verbose logging", action='store_true', default=False) argparse_add_reader_args(option_parser) - def select_app(adf: str, card: SimCard): """Select application by its AID""" sw = 0 @@ -75,6 +81,9 @@ if __name__ == '__main__': # Parse options opts = option_parser.parse_args() + # Setup logger + PySimLogger.setup(print, {logging.WARN: "\033[33m"}, opts.verbose) + # Init card reader driver sl = init_reader(opts) diff --git a/tests/pySim-prog_test/Fairwaves-SIM.ok b/tests/pySim-prog_test/Fairwaves-SIM.ok index 303e8aeb..42e92e8e 100644 --- a/tests/pySim-prog_test/Fairwaves-SIM.ok +++ b/tests/pySim-prog_test/Fairwaves-SIM.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: Fairwaves-SIM ICCID: 8988219000000117833 diff --git a/tests/pySim-prog_test/Wavemobile-SIM.ok b/tests/pySim-prog_test/Wavemobile-SIM.ok index 3c1e62de..86f4830e 100644 --- a/tests/pySim-prog_test/Wavemobile-SIM.ok +++ b/tests/pySim-prog_test/Wavemobile-SIM.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: Wavemobile-SIM ICCID: 89445310150011013678 diff --git a/tests/pySim-prog_test/fakemagicsim.ok b/tests/pySim-prog_test/fakemagicsim.ok index 306cef99..45ff0827 100644 --- a/tests/pySim-prog_test/fakemagicsim.ok +++ b/tests/pySim-prog_test/fakemagicsim.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: fakemagicsim ICCID: 1122334455667788990 diff --git a/tests/pySim-prog_test/sysmoISIM-SJA2.ok b/tests/pySim-prog_test/sysmoISIM-SJA2.ok index 5e2b45fa..b0d4a777 100644 --- a/tests/pySim-prog_test/sysmoISIM-SJA2.ok +++ b/tests/pySim-prog_test/sysmoISIM-SJA2.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: sysmoISIM-SJA2 ICCID: 8988211000000467343 diff --git a/tests/pySim-prog_test/sysmoISIM-SJA5.ok b/tests/pySim-prog_test/sysmoISIM-SJA5.ok index b6d78628..374ad0a9 100644 --- a/tests/pySim-prog_test/sysmoISIM-SJA5.ok +++ b/tests/pySim-prog_test/sysmoISIM-SJA5.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: sysmoISIM-SJA5 ICCID: 8949440000001155314 diff --git a/tests/pySim-prog_test/sysmoUSIM-SJS1.ok b/tests/pySim-prog_test/sysmoUSIM-SJS1.ok index c6693539..fe2aa031 100644 --- a/tests/pySim-prog_test/sysmoUSIM-SJS1.ok +++ b/tests/pySim-prog_test/sysmoUSIM-SJS1.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: sysmoUSIM-SJS1 ICCID: 8988211320300000028 diff --git a/tests/pySim-prog_test/sysmosim-gr1.ok b/tests/pySim-prog_test/sysmosim-gr1.ok index 3d926e2c..e77b8eeb 100644 --- a/tests/pySim-prog_test/sysmosim-gr1.ok +++ b/tests/pySim-prog_test/sysmosim-gr1.ok @@ -1,4 +1,4 @@ -Using PC/SC reader interface +INFO: Using PC/SC reader interface Reading ... Autodetected card type: sysmosim-gr1 ICCID: 2222334455667788990