pySim-shell: prevent opening/closing logical channel 0

The basic logical channel 0 is always present. It cannot be created or
closed. Let's restrict the value range of chan_nr, so that only valid
lchan numbers can be passed.

Related: OS#6531
Change-Id: I4eebd9f15fadd18e1caeb033fda36c59446fcab8
This commit is contained in:
Philipp Maier
2024-08-16 13:29:10 +02:00
parent d5943934a5
commit 8c1a1c5cc5

View File

@@ -965,7 +965,7 @@ class Iso7816Commands(CommandSet):
open_chan_parser = argparse.ArgumentParser() open_chan_parser = argparse.ArgumentParser()
open_chan_parser.add_argument( open_chan_parser.add_argument(
'chan_nr', type=int, default=0, help='Channel Number') 'chan_nr', type=int, default=1, choices=range(1,16), help='Channel Number')
@cmd2.with_argparser(open_chan_parser) @cmd2.with_argparser(open_chan_parser)
def do_open_channel(self, opts): def do_open_channel(self, opts):
@@ -977,7 +977,7 @@ class Iso7816Commands(CommandSet):
close_chan_parser = argparse.ArgumentParser() close_chan_parser = argparse.ArgumentParser()
close_chan_parser.add_argument( close_chan_parser.add_argument(
'chan_nr', type=int, default=0, help='Channel Number') 'chan_nr', type=int, default=1, choices=range(1,16), help='Channel Number')
@cmd2.with_argparser(close_chan_parser) @cmd2.with_argparser(close_chan_parser)
def do_close_channel(self, opts): def do_close_channel(self, opts):
@@ -989,7 +989,7 @@ class Iso7816Commands(CommandSet):
switch_chan_parser = argparse.ArgumentParser() switch_chan_parser = argparse.ArgumentParser()
switch_chan_parser.add_argument( switch_chan_parser.add_argument(
'chan_nr', type=int, default=0, help='Channel Number') 'chan_nr', type=int, default=0, choices=range(0,16), help='Channel Number')
@cmd2.with_argparser(switch_chan_parser) @cmd2.with_argparser(switch_chan_parser)
def do_switch_channel(self, opts): def do_switch_channel(self, opts):