|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] libxc: don't ignore fd read failures when restoring a domain
commit f46fa80ec47cae30f91d51ec34450b3577d529b9
Author: Matthew Daley <mattjd@xxxxxxxxx>
AuthorDate: Wed Oct 30 20:51:40 2013 +1300
Commit: Ian Campbell <ian.campbell@xxxxxxxxxx>
CommitDate: Thu Oct 31 21:23:46 2013 +0000
libxc: don't ignore fd read failures when restoring a domain
Coverity-ID: 1055042
Coverity-ID: 1055043
Signed-off-by: Matthew Daley <mattjd@xxxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
tools/libxc/xc_domain_restore.c | 18 +++++++++++++++---
1 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/tools/libxc/xc_domain_restore.c b/tools/libxc/xc_domain_restore.c
index ecaf25d..80769a7 100644
--- a/tools/libxc/xc_domain_restore.c
+++ b/tools/libxc/xc_domain_restore.c
@@ -327,7 +327,11 @@ static xen_pfn_t *load_p2m_frame_list(
else if ( !strncmp(chunk_sig, "xcnt", 4) )
{
*vcpuextstate = 1;
- RDEXACT(io_fd, vcpuextstate_size, sizeof(*vcpuextstate_size));
+ if ( RDEXACT(io_fd, vcpuextstate_size,
sizeof(*vcpuextstate_size)) )
+ {
+ PERROR("read extended vcpu state size failed");
+ return NULL;
+ }
tot_bytes -= chunk_bytes;
chunk_bytes = 0;
}
@@ -928,14 +932,22 @@ static int pagebuf_get_one(xc_interface *xch, struct
restore_ctx *ctx,
case XC_SAVE_ID_TOOLSTACK:
{
- RDEXACT(fd, &buf->tdata.len, sizeof(buf->tdata.len));
+ if ( RDEXACT(fd, &buf->tdata.len, sizeof(buf->tdata.len)) )
+ {
+ PERROR("error read toolstack id size");
+ return -1;
+ }
buf->tdata.data = (uint8_t*) realloc(buf->tdata.data,
buf->tdata.len);
if ( buf->tdata.data == NULL )
{
PERROR("error memory allocation");
return -1;
}
- RDEXACT(fd, buf->tdata.data, buf->tdata.len);
+ if ( RDEXACT(fd, buf->tdata.data, buf->tdata.len) )
+ {
+ PERROR("error read toolstack id");
+ return -1;
+ }
return pagebuf_get_one(xch, ctx, buf, fd, dom);
}
--
generated by git-patchbot for /home/xen/git/xen.git#master
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |