X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Ftest-daemon.py;h=386445d4434201aee064792a1aa271c036f1c972;hb=71d7c22f54ae32d15133571e09ddf7ab435e8afa;hp=3c757f30861330bd049cff7f044b5bcbb924cb6b;hpb=991559357f6a03c3a5b70c053c8c2554aa8d5ee4;p=openvswitch diff --git a/tests/test-daemon.py b/tests/test-daemon.py index 3c757f30..386445d4 100644 --- a/tests/test-daemon.py +++ b/tests/test-daemon.py @@ -1,11 +1,11 @@ # Copyright (c) 2010 Nicira Networks. -# +# # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -13,13 +13,20 @@ # limitations under the License. import getopt +import signal import sys import time import ovs.daemon import ovs.util +def handler(signum, frame): + raise Exception("Signal handler called with %d" % signum) + def main(argv): + + signal.signal(signal.SIGHUP, handler) + try: options, args = getopt.gnu_getopt( argv[1:], 'b', ["bail", "help"] + ovs.daemon.LONG_OPTIONS) @@ -63,4 +70,10 @@ Other options: sys.exit(0) if __name__ == '__main__': - main(sys.argv) + try: + main(sys.argv) + except SystemExit: + # Let system.exit() calls complete normally + raise + except: + sys.exit(ovs.daemon.RESTART_EXIT_CODE)