aboutsummaryrefslogtreecommitdiffstats
path: root/utils.py
diff options
context:
space:
mode:
authorhploetz <hploetz@f711b948-2313-0410-aaa9-d29f33439f0b>2007-06-15 16:49:17 +0000
committerhploetz <hploetz@f711b948-2313-0410-aaa9-d29f33439f0b>2007-06-15 16:49:17 +0000
commit326fd9a7bea263c9c9603956b9b9e0aa3ff8b4ea (patch)
tree9ff5fc75c827f70652add2c88676f3fc923b2fc9 /utils.py
parentdfb480db3a9061822a59ca0ed4a972717929d733 (diff)
Consolidating connect to a single place
git-svn-id: svn+ssh://localhost/home/henryk/svn/cyberflex-shell/trunk@246 f711b948-2313-0410-aaa9-d29f33439f0b
Diffstat (limited to 'utils.py')
-rw-r--r--utils.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/utils.py b/utils.py
index 61006b8..430f219 100644
--- a/utils.py
+++ b/utils.py
@@ -27,11 +27,16 @@ class CommandLineArgumentHelper:
if self.reader is None:
self.reader = 0
- if isinstance(self.reader, int) or self.reader.isdigit():
- self.reader = int(self.reader)
- readerName = pycsc.listReader()[self.reader]
+ return self.connect_to(self.reader)
+
+ def connect_to(reader):
+ "Open the connection to a reader"
+
+ if isinstance(reader, int) or reader.isdigit():
+ reader = int(reader)
+ readerName = pycsc.listReader()[reader]
else:
- readerName = self.reader
+ readerName = reader
newState = pycsc.getStatusChange(ReaderStates=[
{'Reader': readerName, 'CurrentState':pycsc.SCARD_STATE_UNAWARE}
@@ -69,6 +74,7 @@ class CommandLineArgumentHelper:
print "ATR: %s" % hexdump(newState[0]['Atr'], short = True)
return pycsc.pycsc(reader = readerName, protocol = pycsc.SCARD_PROTOCOL_ANY)
+ connect_to = staticmethod(connect_to)
def getopt(self, argv, opts="", long_opts=[]):
"Wrapper around getopt.gnu_getopt. Handles common arguments, returns everything else."