aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxl/libxl_xshelp.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-13 09:35:05 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-13 09:35:05 +0100
commiteac0f64d8003db0008b8bace4f6c94289a16b3c1 (patch)
tree4967e188fd97bcdbb63e1f0f611d273b6e07ad94 /tools/libxl/libxl_xshelp.c
parentd09e6e47f0a3fce0c88f8e8334d989c341326ed3 (diff)
downloadxen-eac0f64d8003db0008b8bace4f6c94289a16b3c1.tar.gz
xen-eac0f64d8003db0008b8bace4f6c94289a16b3c1.tar.bz2
xen-eac0f64d8003db0008b8bace4f6c94289a16b3c1.zip
libxl: Check return codes of write/asprintf/daemon consistently.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'tools/libxl/libxl_xshelp.c')
-rw-r--r--tools/libxl/libxl_xshelp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/libxl/libxl_xshelp.c b/tools/libxl/libxl_xshelp.c
index 66de589c36..16e8c842ee 100644
--- a/tools/libxl/libxl_xshelp.c
+++ b/tools/libxl/libxl_xshelp.c
@@ -32,7 +32,8 @@ int xs_writev(struct xs_handle *xsh, xs_transaction_t t, char *dir, char *kvs[])
return 0;
for (i = 0; kvs[i] != NULL; i += 2) {
- asprintf(&path, "%s/%s", dir, kvs[i]);
+ if (asprintf(&path, "%s/%s", dir, kvs[i]) < 0)
+ return -1;
if (path && kvs[i + 1]) {
int length = strlen(kvs[i + 1]);
xs_write(xsh, t, path, kvs[i + 1], length);