mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
1 parent
b242b20898
commit
f96418ce18
2 files changed
+12
-3
No files matched your search
@@ -40,11 +40,19 @@ def write_exact(fd, buf, errmsg):
|
||||
raise XendError(errmsg)
|
||||
|
||||
def read_exact(fd, size, errmsg):
|
||||
buf = os.read(fd, size)
|
||||
if len(buf) != size:
|
||||
raise XendError(errmsg)
|
||||
buf = ''
|
||||
while size != 0:
|
||||
str = os.read(fd, size)
|
||||
if not len(str):
|
||||
log.error("read_exact: EOF trying to read %d (buf='%s')" % \
|
||||
(size, buf))
|
||||
raise XendError(errmsg)
|
||||
size = size - len(str)
|
||||
buf = buf + str
|
||||
return buf
|
||||
|
||||
|
||||
|
||||
def save(fd, dominfo, live):
|
||||
write_exact(fd, SIGNATURE, "could not write guest state file: signature")
|
||||
|
||||
|
||||
@@ -397,6 +397,7 @@ class XendDomain:
|
||||
raise XendError("can't connect: %s" % err[1])
|
||||
|
||||
sock.send("receive\n")
|
||||
sock.recv(80)
|
||||
XendCheckpoint.save(sock.fileno(), dominfo, live)
|
||||
|
||||
|
||||
|
||||