serial: don't crash if the device does not exist
The most common reason for pySim to crash is when it is executed without commandline parameters. Then pySim will expect a serial reader on /dev/ttyUSB0 since this is the default. Lets check if /dev/ttyUSB0 even exists before trying to open it. Change-Id: I7545c728b531e9a796eee8f80f0b08d4097f8399
This commit is contained in:
@@ -25,6 +25,7 @@ from __future__ import absolute_import
|
||||
|
||||
import serial
|
||||
import time
|
||||
import os.path
|
||||
|
||||
from pySim.exceptions import NoCardError, ProtocolError
|
||||
from pySim.transport import LinkBase
|
||||
@@ -34,6 +35,8 @@ from pySim.utils import h2b, b2h
|
||||
class SerialSimLink(LinkBase):
|
||||
|
||||
def __init__(self, device='/dev/ttyUSB0', baudrate=9600, rst='-rts', debug=False):
|
||||
if not os.path.exists(device):
|
||||
raise ValueError("device file %s does not exist -- abort" % device)
|
||||
self._sl = serial.Serial(
|
||||
port = device,
|
||||
parity = serial.PARITY_EVEN,
|
||||
|
||||
Reference in New Issue
Block a user