transport: print reader device/number on init

When we initialize the reader, we currently tell only which type of
interface we are using, but we do not print the reader number or the
device path.

Let's extend the messages so that the path is printed. To prevent
problems with integration-tests, let's also add an environment variable
that we can use to detect when pySim runs inside a integration-test.

Related: OS#6210
Change-Id: Ibe296d51885b1ef5f9c9ecaf1d28da52014dcc4b
This commit is contained in:
Philipp Maier
2023-10-26 12:17:32 +02:00
committed by laforge
parent cbc0bdfaa9
commit 4af63dc760
6 changed files with 22 additions and 6 deletions

View File

@@ -79,8 +79,10 @@ class CalypsoSimLink(LinkBase):
def __init__(self, sock_path: str = "/tmp/osmocom_l2", **kwargs): def __init__(self, sock_path: str = "/tmp/osmocom_l2", **kwargs):
super().__init__(**kwargs) super().__init__(**kwargs)
print("Using Calypso-based (OsmocomBB) reader interface") if os.environ.get('PYSIM_INTEGRATION_TEST') == "1":
print("Using Calypso-based (OsmocomBB) reader interface")
else:
print("Using Calypso-based (OsmocomBB) reader at socket %s" % sock_path)
# Make sure that a given socket path exists # Make sure that a given socket path exists
if not os.path.exists(sock_path): if not os.path.exists(sock_path):
raise ReaderError( raise ReaderError(

View File

@@ -21,6 +21,7 @@ import serial
import time import time
import re import re
import argparse import argparse
import os
from typing import Optional from typing import Optional
from pySim.utils import Hexstr, ResTuple from pySim.utils import Hexstr, ResTuple
@@ -36,7 +37,10 @@ class ModemATCommandLink(LinkBase):
def __init__(self, device: str = '/dev/ttyUSB0', baudrate: int = 115200, **kwargs): def __init__(self, device: str = '/dev/ttyUSB0', baudrate: int = 115200, **kwargs):
super().__init__(**kwargs) super().__init__(**kwargs)
print("Using modem for Generic SIM Access (3GPP TS 27.007)") if os.environ.get('PYSIM_INTEGRATION_TEST') == "1":
print("Using modem for Generic SIM Access (3GPP TS 27.007)")
else:
print("Using modem for Generic SIM Access (3GPP TS 27.007) at port %s" % device)
self._sl = serial.Serial(device, baudrate, timeout=5) self._sl = serial.Serial(device, baudrate, timeout=5)
self._echo = False # this will be auto-detected by _check_echo() self._echo = False # this will be auto-detected by _check_echo()
self._device = device self._device = device

View File

@@ -18,6 +18,7 @@
# #
import argparse import argparse
import os
from typing import Optional from typing import Optional
from smartcard.CardConnection import CardConnection from smartcard.CardConnection import CardConnection
@@ -35,7 +36,10 @@ class PcscSimLink(LinkBase):
def __init__(self, reader_number: int = 0, **kwargs): def __init__(self, reader_number: int = 0, **kwargs):
super().__init__(**kwargs) super().__init__(**kwargs)
print("Using PC/SC reader interface") if os.environ.get('PYSIM_INTEGRATION_TEST') == "1":
print("Using PC/SC reader interface")
else:
print("Using PC/SC reader number %u" % reader_number)
r = readers() r = readers()
if reader_number >= len(r): if reader_number >= len(r):
raise ReaderError('No reader found for number %d' % reader_number) raise ReaderError('No reader found for number %d' % reader_number)

View File

@@ -18,7 +18,7 @@
import serial import serial
import time import time
import os.path import os
import argparse import argparse
from typing import Optional from typing import Optional
@@ -33,7 +33,10 @@ class SerialSimLink(LinkBase):
def __init__(self, device: str = '/dev/ttyUSB0', baudrate: int = 9600, rst: str = '-rts', def __init__(self, device: str = '/dev/ttyUSB0', baudrate: int = 9600, rst: str = '-rts',
debug: bool = False, **kwargs): debug: bool = False, **kwargs):
super().__init__(**kwargs) super().__init__(**kwargs)
print("Using serial reader interface") if os.environ.get('PYSIM_INTEGRATION_TEST') == "1":
print("Using serial reader interface")
else:
print("Using serial reader interface at port %s" % device)
if not os.path.exists(device): if not os.path.exists(device):
raise ValueError("device file %s does not exist -- abort" % device) raise ValueError("device file %s does not exist -- abort" % device)
self._sl = serial.Serial( self._sl = serial.Serial(

View File

@@ -25,6 +25,7 @@ PYSIM_READ=../pySim-read.py
TEMPFILE=temp.tmp TEMPFILE=temp.tmp
PYTHON=python3 PYTHON=python3
export PYSIM_INTEGRATION_TEST=1
set -e set -e
echo "pySim-prog_test - a test program to test pySim-prog.py" echo "pySim-prog_test - a test program to test pySim-prog.py"

View File

@@ -24,6 +24,8 @@ PYSIM_TRACE=../pySim-trace.py
GSMTAP_TRACE=pySim-trace_test_gsmtap.pcapng GSMTAP_TRACE=pySim-trace_test_gsmtap.pcapng
TEMPFILE=temp.tmp TEMPFILE=temp.tmp
export PYSIM_INTEGRATION_TEST=1
echo "pySim-trace_test - a test program to test pySim-trace.py" echo "pySim-trace_test - a test program to test pySim-trace.py"
echo "========================================================" echo "========================================================"