diff -r 03813abef33e kvm/SETTINGS --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kvm/SETTINGS Mon Jan 15 15:50:09 2007 -0600 @@ -0,0 +1,3 @@ +# Sources from all scripts +ROOT_FILE="/mnt/FC-5-i386.img" +QEMU=qemu diff -r 03813abef33e kvm/serial.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kvm/serial.py Mon Jan 15 16:00:13 2007 -0600 @@ -0,0 +1,58 @@ +import sys, socket, binascii, commands + +if len(sys.argv) != 9: + print 'Usage: serial IP PORT LOGIN PASSWORD PATH ID IP PORT' + sys.exit(1) + +sys.stderr.write('foo\n') + +login='login: ' +password='Password: ' +prompt=']# ' + +s = socket.socket(socket.AF_INET) +s.connect((sys.argv[1], int(sys.argv[2]))) + +def wait_for(string): + buf = '' + while True: + f = s.recv(4096) + buf += f + if buf.endswith(string): + break + +s.sendall('\n') +wait_for(login) +s.sendall('%s\n' % sys.argv[3]) + +wait_for(password) +s.sendall('%s\n' % sys.argv[4]) + +wait_for(prompt) +status, output = commands.getstatusoutput('uuencode %s /tmp/virtclient' % + sys.argv[5]) + +f = open(sys.argv[5]) +d = binascii.b2a_base64(f.read()) +f.close() + +s.sendall("stty -echo\n") +wait_for(prompt) + +s.sendall("cat > /tmp/virtclient.b64 </dev/null ; then +# modules="kvm kvm-amd" +#else +# modules="kvm kvm-intel" +#fi + +#[ -c /dev/kvm ] || modprobe $modules diff -r 03813abef33e kvm/start_machine --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kvm/start_machine Sat Jan 27 11:09:40 2007 -0600 @@ -0,0 +1,10 @@ +#! /bin/sh + +. kvm/SETTINGS + +serial_port=$((1025 + $1)) + +$QEMU -m 128 -hda "${ROOT_FILE}" -snapshot -serial tcp:localhost:${serial_port},server,nowait -kernel-kqemu & +sleep 2 +python kvm/serial.py 127.0.0.1 ${serial_port} root ibm4xen virtclient $1 $2 $3 & +jobs -p %1 diff -r 03813abef33e kvm/stop --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kvm/stop Mon Jan 15 11:32:55 2007 -0600 @@ -0,0 +1,4 @@ +#! /bin/sh + +. kvm/SETTINGS +exit 0 diff -r 03813abef33e kvm/stop_machine --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kvm/stop_machine Mon Jan 15 11:43:29 2007 -0600 @@ -0,0 +1,5 @@ +#! /bin/sh + +. kvm/SETTINGS + +kill $1 diff -r 03813abef33e server.c --- a/server.c Thu Jan 11 13:56:30 2007 +1100 +++ b/server.c Mon Jan 15 16:02:11 2007 -0600 @@ -227,7 +227,7 @@ static struct sockaddr_in get_server_add socklen_t socklen = sizeof(saddr); /* This assumes we have an eth0. */ - strcpy(ifr.ifr_name, "eth0"); + strcpy(ifr.ifr_name, "ath0"); sin->sin_family = AF_INET; if (ioctl(sock, SIOCGIFADDR, &ifr) != 0) err(1, "Getting interface address for eth0");