X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=python%2Fvserverimpl.c;h=b20725c3891326c695349e78cfd19999e3cca108;hb=34e601fe834fb35b1e9ddb9cdadda520bf8983ca;hp=71f082018a3e745ce0e50b061a77a392a46adaf4;hpb=73929cd988b29cc673ff12945fc921957bd3ce78;p=util-vserver-pl.git diff --git a/python/vserverimpl.c b/python/vserverimpl.c index 71f0820..b20725c 100644 --- a/python/vserverimpl.c +++ b/python/vserverimpl.c @@ -430,7 +430,7 @@ get_mask(struct vc_net_addr *addr) addr->vna_prefix = 64; break; default: - errno = -EINVAL; + errno = EINVAL; return -1; } @@ -499,18 +499,19 @@ vserver_net_remove(PyObject *self, PyObject *args) if (strcmp(ip, "all") == 0) addr.vna_type = VC_NXA_TYPE_ANY; else if (strcmp(ip, "all4") == 0) - addr.vna_type = VC_NXA_TYPE_IPV6 | VC_NXA_TYPE_ANY; + addr.vna_type = VC_NXA_TYPE_IPV4 | VC_NXA_TYPE_ANY; else if (strcmp(ip, "all6") == 0) addr.vna_type = VC_NXA_TYPE_IPV6 | VC_NXA_TYPE_ANY; else { if (convert_address(ip, &addr) == -1) return PyErr_Format(PyExc_ValueError, "%s is not a valid IP address", ip); - addr.vna_type |= VC_NXA_TYPE_ADDR; - } - switch (get_mask(&addr)) { - case -1: - return PyErr_SetFromErrno(PyExc_OSError); + switch (get_mask(&addr)) { + case -1: + return PyErr_SetFromErrno(PyExc_OSError); + } + + addr.vna_type |= VC_NXA_TYPE_ADDR; } if (vc_net_remove(nid, &addr) == -1 && errno != ESRCH)