From b31f967a0fb39b86e04e3dc03748709cdf4c2df3 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 760a65074..3f2bb9492 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 481e9da27..d02f02e4b 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 303e8aeb7..42e92e8ef 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 3c1e62de5..86f4830eb 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 306cef995..45ff08273 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 5e2b45fa2..b0d4a7774 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 b6d786288..374ad0a9e 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 c6693539c..fe2aa0311 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 3d926e2c4..e77b8eebe 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