diff options
Diffstat (limited to 'tools/misc/xend')
-rw-r--r-- | tools/misc/xend | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/tools/misc/xend b/tools/misc/xend new file mode 100644 index 0000000000..06006490a4 --- /dev/null +++ b/tools/misc/xend @@ -0,0 +1,45 @@ +#!/usr/bin/env python +# -*- mode: python; -*- +#============================================================================ +# Copyright (C) 2004 Mike Wray <mike.wray@hp.com> +#============================================================================ + +"""Xen management daemon. Lives in /usr/sbin. + Provides console server and HTTP management api. + + Run: + + xend start + + The daemon is stopped with: + + xend stop + + The daemon should reconnect to device control interfaces + and recover its state when restarted. +""" +import os +import sys +from xen.xend.server import SrvDaemon + +def main(): + daemon = SrvDaemon.instance() + if not sys.argv[1:]: + print 'usage: %s {start|stop|restart}' % sys.argv[0] + elif os.fork(): + pid, status = os.wait() + return status >> 8 + elif sys.argv[1] == 'start': + return daemon.start() + elif sys.argv[1] == 'trace_start': + return daemon.start(trace=1) + elif sys.argv[1] == 'stop': + return daemon.stop() + elif sys.argv[1] == 'restart': + return daemon.stop() or daemon.start() + else: + print 'not an option:', sys.argv[1] + return 1 + +if __name__ == '__main__': + sys.exit(main()) |