aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2012-08-15 15:25:51 +0200
committerHarald Welte <laforge@gnumonks.org>2012-08-15 15:25:51 +0200
commit69c2ce2525f1d5d8ad53d438a7a5bd433e496cce (patch)
treec2c986b4e0759e8a015847db97133bb3da956318
parent8b59a554887205271e7cb7d09788b8a040b8dcf2 (diff)
read_params_csv: Make sure we don't end up in endless loop
as a side effect, the first line is now specified with '-j 0' and not '-j 1'
-rwxr-xr-xpySim-prog.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/pySim-prog.py b/pySim-prog.py
index ce67dbd..d673dba 100755
--- a/pySim-prog.py
+++ b/pySim-prog.py
@@ -394,7 +394,7 @@ def write_params_csv(opts, params):
cw.writerow([params[x] for x in row])
f.close()
-def read_params_csv(opts, imsi):
+def _read_params_csv(opts, imsi):
import csv
row = ['name', 'iccid', 'mcc', 'mnc', 'imsi', 'smsp', 'ki', 'opc']
f = open(opts.read_csv, 'r')
@@ -402,19 +402,25 @@ def read_params_csv(opts, imsi):
i = 0
for row in cr:
if opts.num is not None:
- i += 1
if opts.num == i:
- break
+ f.close()
+ return row;
+ i += 1
if row['imsi'] == imsi:
- break
+ f.close()
+ return row;
+
+ f.close()
+ return None
- if row:
+def read_params_csv(opts, imsi):
+ row = _read_params_csv(opts, imsi)
+ if row is not None:
row['mcc'] = int(row['mcc'])
row['mnc'] = int(row['mnc'])
-
- f.close()
return row
+
def write_params_hlr(opts, params):
# SQLite3 OpenBSC HLR
if opts.write_hlr: