aboutsummaryrefslogtreecommitdiffstats
path: root/tools/pygrub
diff options
context:
space:
mode:
authorTim Deegan <Tim.Deegan@xensource.com>2007-01-22 11:49:14 +0000
committerTim Deegan <Tim.Deegan@xensource.com>2007-01-22 11:49:14 +0000
commit7f39243d681d0c49be4c652bd30840954de96c50 (patch)
tree08fd4cce5dc652f87cb18c6aa0fc0849991a933b /tools/pygrub
parent637851afeeb49c1d6709ae49add67f7a8c0da787 (diff)
downloadxen-7f39243d681d0c49be4c652bd30840954de96c50.tar.gz
xen-7f39243d681d0c49be4c652bd30840954de96c50.tar.bz2
xen-7f39243d681d0c49be4c652bd30840954de96c50.zip
[PYGRUB] Plumb bootloader I/O through xenconsole.
- xend forwards console traffic between the running bootloader and a pty which it writes to the store so the xenconsole client can see it. - the xenconsole client handles the domain's console pty changing. - xm create no longer runs the bootloader. - pygrub gets '-i' option to explicitly request an interactive session. - xend unlocks the domain list during bootloading so that "xm console" can see the domain and attach to its console pty. Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Diffstat (limited to 'tools/pygrub')
-rw-r--r--tools/pygrub/src/pygrub13
1 files changed, 9 insertions, 4 deletions
diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub
index c0204da32e..cf0efcb185 100644
--- a/tools/pygrub/src/pygrub
+++ b/tools/pygrub/src/pygrub
@@ -201,7 +201,9 @@ class Grub:
enable_cursor(False)
self.entry_win = curses.newwin(10, 74, 2, 1)
self.text_win = curses.newwin(10, 70, 12, 5)
-
+ curses.def_prog_mode()
+
+ curses.reset_prog_mode()
self.screen.clear()
self.screen.refresh()
@@ -549,11 +551,12 @@ if __name__ == "__main__":
sel = None
def usage():
- print >> sys.stderr, "Usage: %s [-q|--quiet] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <image>" %(sys.argv[0],)
+ print >> sys.stderr, "Usage: %s [-q|--quiet] [-i|--interactive] [--output=] [--kernel=] [--ramdisk=] [--args=] [--entry=] <image>" %(sys.argv[0],)
try:
- opts, args = getopt.gnu_getopt(sys.argv[1:], 'qh::',
- ["quiet", "help", "output=", "entry=", "kernel=", "ramdisk=", "args=",
+ opts, args = getopt.gnu_getopt(sys.argv[1:], 'qih::',
+ ["quiet", "interactive", "help", "output=",
+ "entry=", "kernel=", "ramdisk=", "args=",
"isconfig"])
except getopt.GetoptError:
usage()
@@ -579,6 +582,8 @@ if __name__ == "__main__":
for o, a in opts:
if o in ("-q", "--quiet"):
interactive = False
+ elif o in ("-i", "--interactive"):
+ interactive = True
elif o in ("-h", "--help"):
usage()
sys.exit()