aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xc_minios.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-08-01 09:38:25 +0100
committerKeir Fraser <keir.fraser@citrix.com>2008-08-01 09:38:25 +0100
commit0ae64c2ff81fb618af29ca56b5fdc4fbcdaf9dcb (patch)
tree10bdad2ee8392df0da757f84acf94c06839ef6db /tools/libxc/xc_minios.c
parente5ba23a1d98db4e433a5edc85eb3242298cd3275 (diff)
downloadxen-0ae64c2ff81fb618af29ca56b5fdc4fbcdaf9dcb.tar.gz
xen-0ae64c2ff81fb618af29ca56b5fdc4fbcdaf9dcb.tar.bz2
xen-0ae64c2ff81fb618af29ca56b5fdc4fbcdaf9dcb.zip
minios: Error case when unbinding unknown port in xc_evtchn_unbind is
missing a return statement. Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
Diffstat (limited to 'tools/libxc/xc_minios.c')
-rw-r--r--tools/libxc/xc_minios.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/libxc/xc_minios.c b/tools/libxc/xc_minios.c
index f353b9840c..b1b3c09a48 100644
--- a/tools/libxc/xc_minios.c
+++ b/tools/libxc/xc_minios.c
@@ -259,8 +259,11 @@ int xc_evtchn_unbind(int xce_handle, evtchn_port_t port)
files[xce_handle].evtchn.ports[i].port = -1;
break;
}
- if (i == MAX_EVTCHN_PORTS)
+ if (i == MAX_EVTCHN_PORTS) {
printf("Warning: couldn't find port %"PRId32" for xc handle %x\n", port, xce_handle);
+ errno = -EINVAL;
+ return -1;
+ }
files[xce_handle].evtchn.ports[i].bound = 0;
unbind_evtchn(port);
return 0;