|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] libxl: check return values of read/write
# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1307031970 -3600
# Node ID 9cdc500fd358189e7923cc7b0502d86e9563d073
# Parent c09a6c9a99e820968a9b697bff1ba62ac102532d
libxl: check return values of read/write
Some distros enable -D_FORTIFY_SOURCE=2 by default
(https://wiki.ubuntu.com/CompilerFlags) which adds the warn_unused_result
attribute to several functions including read(2) and write(2)
Although we don't really care about error reading or writing the libxl spawn fd
catch them anyway to keep this warning happy.
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Tested-by: Olaf Hering <olaf@xxxxxxxxx>
Committed-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
diff -r c09a6c9a99e8 -r 9cdc500fd358 tools/libxl/libxl_device.c
--- a/tools/libxl/libxl_device.c Thu Jun 02 17:25:27 2011 +0100
+++ b/tools/libxl/libxl_device.c Thu Jun 02 17:26:10 2011 +0100
@@ -485,7 +485,9 @@
}
if (starting && FD_ISSET(starting->for_spawn->fd, &rfds)) {
unsigned char dummy;
- read(starting->for_spawn->fd, &dummy, sizeof(dummy));
+ if (read(starting->for_spawn->fd, &dummy, sizeof(dummy)) != 1)
+ LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_DEBUG,
+ "failed to read spawn status pipe");
}
}
}
diff -r c09a6c9a99e8 -r 9cdc500fd358 tools/libxl/libxl_exec.c
--- a/tools/libxl/libxl_exec.c Thu Jun 02 17:25:27 2011 +0100
+++ b/tools/libxl/libxl_exec.c Thu Jun 02 17:26:10 2011 +0100
@@ -220,8 +220,10 @@
rc = (WIFEXITED(status) ? WEXITSTATUS(status) :
WIFSIGNALED(status) && WTERMSIG(status) < 127
? WTERMSIG(status)+128 : -1);
- if (for_spawn)
- write(pipes[1], &dummy, sizeof(dummy));
+ if (for_spawn) {
+ if (write(pipes[1], &dummy, sizeof(dummy)) != 1)
+ perror("libxl__spawn_spawn: unable to signal child exit to
parent");
+ }
_exit(rc);
err_parent_pipes:
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] libxl: check return values of read/write,
Xen patchbot-unstable <=
|
|
|
|
|