diff options
author | Harald Welte <laforge@gnumonks.org> | 2012-08-15 15:25:51 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2015-08-20 13:23:15 +0200 |
commit | c26b82939fc7c699d1a65459603255ad93a56556 (patch) | |
tree | c7d807d68900dd78f460bfcb23e41b93cea63d7d | |
parent | 7f62cecb61b821233af148cdc6f709d4bb0df4dd (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-x | pySim-prog.py | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/pySim-prog.py b/pySim-prog.py index ab18b12..d397e17 100755 --- a/pySim-prog.py +++ b/pySim-prog.py @@ -410,7 +410,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') @@ -418,19 +418,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: |