X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=contrib%2Fgnunet_janitor.py.in;h=c11ff4f122c9924d27b6516e2807fa159ed7c60f;hb=6c88f7b55d10ed741cfcf1696dedda1322872a5d;hp=c23cc28588fcaf39733ded062be3b38c747ea353;hpb=cf5f71ba15c897cd5768ea0dd644d1c9a6a4d4e2;p=oweals%2Fgnunet.git diff --git a/contrib/gnunet_janitor.py.in b/contrib/gnunet_janitor.py.in index c23cc2858..c11ff4f12 100644 --- a/contrib/gnunet_janitor.py.in +++ b/contrib/gnunet_janitor.py.in @@ -18,6 +18,10 @@ # Boston, MA 02111-1307, USA. # # Finds any gnunet processes still running in the system and kills them +# +# gnunet janitor can be used by invoking `make' like this: +# TESTS_ENVIRONMENT='${top_srcdir}/contrib/gnunet_janitor.py &&' make check + from __future__ import print_function import os import re @@ -40,7 +44,7 @@ def get_process_list (): else: pids = [pid for pid in os.listdir('/proc') if pid.isdigit ()] for pid in pids: - result.append ((pid, open (os.path.join ('/proc', pid, 'comm'), 'rb').read () + result.append ((pid, open (os.path.join ('/proc', pid, 'comm'), 'rb').read ())) return result def main (): @@ -51,12 +55,20 @@ def main (): gnunet_procs.append (p) for p in gnunet_procs: if re.match (r'gnunet-service-arm', p[1]): - print ("killing arm {0:5} {1}".format (p[0], p[1])) - os.kill (p[0], signal.SIGTERM) + print ("killing arm process {0:5} {1}".format (p[0], p[1])) + try: + os.kill (p[0], signal.SIGTERM) + except OSError as e: + print ("failed: {0}".format (e)) + pass for p in gnunet_procs: if not re.match (r'gnunet-service-arm', p[1]): - print ("killing arm {0:5} {1}".format (p[0], p[1])) - os.kill (p[0], signal.SIGTERM) + print ("killing non-arm process {0:5} {1}".format (p[0], p[1])) + try: + os.kill (p[0], signal.SIGTERM) + except OSError as e: + print ("failed: {0}".format (e)) + pass if __name__ == '__main__': - sys.exit (main ()) \ No newline at end of file + sys.exit (main ())