diff options
author | Rob Austein <sra@hactrn.net> | 2011-10-10 13:24:45 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2011-10-10 13:24:45 +0000 |
commit | 000e3654220eafc6e8933b4740797e7cb2eb17d4 (patch) | |
tree | d0bc15ad21ca28a9aca8ad1ac17f29d8fefaeece | |
parent | b524b56f1e320bc5ee0533c71d965219587c5f1e (diff) |
Don't allow inversion of syslog facility and priority settings.
svn path=/rtr-origin/rtr-origin.py; revision=4032
-rwxr-xr-x | rtr-origin/rtr-origin.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/rtr-origin/rtr-origin.py b/rtr-origin/rtr-origin.py index b6841f6c..d2e9994d 100755 --- a/rtr-origin/rtr-origin.py +++ b/rtr-origin/rtr-origin.py @@ -1739,7 +1739,8 @@ main_dispatch = { "bgpdump_select" : bgpdump_select_main, "bgpdump_server" : bgpdump_server_main } -def usage(f): +def usage(msg = None): + f = sys.stderr if msg else sys.stdout f.write("Usage: %s [options] --mode [arguments]\n" % sys.argv[0]) f.write("\n") f.write("where options are zero or more of:\n") @@ -1754,6 +1755,7 @@ def usage(f): f.write("--%s:\n" % name) f.write(func.__doc__) f.write("\n") + sys.exit(msg) if __name__ == "__main__": @@ -1767,8 +1769,7 @@ if __name__ == "__main__": opts, argv = getopt.getopt(sys.argv[1:], "hs:z?", ["help", "syslog=", "zero-nonce"] + main_dispatch.keys()) for o, a in opts: if o in ("-h", "--help", "-?"): - usage(sys.stdout) - sys.exit(0) + usage() elif o in ("-z", "--zero-nonce"): force_zero_nonce = True elif o in ("-s", "--syslog"): @@ -1777,17 +1778,17 @@ if __name__ == "__main__": if len(a) == 2: a.append(a[1]) syslog_facility, syslog_warning, syslog_info = a + if syslog_facility < 8 or syslog_warning >= 8 or syslog_info >= 8: + raise ValueError except: - usage(sys.stderr) - sys.exit("Bad value specified for --syslog option") + usage("Bad value specified for --syslog option") elif len(o) > 2 and o[2:] in main_dispatch: if mode is not None: sys.exit("Conflicting modes specified") mode = o[2:] if mode is None: - usage(sys.stderr) - sys.exit("No mode specified") + usage("No mode specified") log_tag = "rtr-origin/" + mode |