agent: handle invalid commands

nistp521
Roman Zeyde 9 years ago
parent 68331e10d6
commit b6279231da

@ -66,7 +66,10 @@ def run(command, environ):
log.debug('running %r with %r', command, environ) log.debug('running %r with %r', command, environ)
env = dict(os.environ) env = dict(os.environ)
env.update(environ) env.update(environ)
p = subprocess.Popen(args=command, env=env) try:
p = subprocess.Popen(args=command, env=env)
except OSError as e:
raise OSError('cannot run %r: %s' % (command, e))
log.debug('subprocess %d is running', p.pid) log.debug('subprocess %d is running', p.pid)
ret = p.wait() ret = p.wait()
log.debug('subprocess %d exited: %d', p.pid, ret) log.debug('subprocess %d exited: %d', p.pid, ret)
@ -121,6 +124,8 @@ def main():
serve(key_files=key_files, command=args.command, signer=signer) serve(key_files=key_files, command=args.command, signer=signer)
except KeyboardInterrupt: except KeyboardInterrupt:
log.info('server stopped') log.info('server stopped')
except Exception as e:
log.warning(e, exc_info=True)
if __name__ == '__main__': if __name__ == '__main__':
main() main()

Loading…
Cancel
Save