aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@citrix.com>2012-04-04 16:10:18 +0100
committerIan Campbell <ian.campbell@citrix.com>2012-04-04 16:10:18 +0100
commit023c5c2aaa17341e610624c48255bde538cb8c4a (patch)
treeff8ef6b29d7484ba97c82eea262cfe62bb0c574b
parentabda66fdb0eaa1b7ec33e97e3e0e375f948dc651 (diff)
downloadxen-023c5c2aaa17341e610624c48255bde538cb8c4a.tar.gz
xen-023c5c2aaa17341e610624c48255bde538cb8c4a.tar.bz2
xen-023c5c2aaa17341e610624c48255bde538cb8c4a.zip
libxl: fixup error handling in libxl_send_trigger
xc_domain_send_trigger returns -1 and sets errno on failure so use LIBXL__LOG_ERRNO not LIBXL__LOG_ERRNOVAL(rc). Change the default case of the switch to set rc=-1,errno=EINVAL too. Also we weren't actually returning the error code we'd decided on. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
-rw-r--r--tools/libxl/libxl.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
index 53443665d4..7a54524237 100644
--- a/tools/libxl/libxl.c
+++ b/tools/libxl/libxl.c
@@ -3309,18 +3309,19 @@ int libxl_send_trigger(libxl_ctx *ctx, uint32_t domid,
rc = 0;
break;
default:
- rc = EINVAL;
+ rc = -1;
+ errno = EINVAL;
break;
}
if (rc != 0) {
- LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc,
- "Send trigger '%s' failed",
- libxl_trigger_to_string(trigger));
+ LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR,
+ "Send trigger '%s' failed",
+ libxl_trigger_to_string(trigger));
rc = ERROR_FAIL;
}
- return 0;
+ return rc;
}
int libxl_send_sysrq(libxl_ctx *ctx, uint32_t domid, char sysrq)