From: Daniel P. Berrange Date: Thu, 24 Sep 2009 13:24:57 +0000 (+0100) Subject: Remove hand-crafted UUID parsers X-Git-Tag: v0.7.2~91 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d9b285d7e80c5007615aebc6cf61ae5f202f4cc7;p=thirdparty%2Flibvirt.git Remove hand-crafted UUID parsers * src/libvirt.c: Remove hand-crafted UUID parsers in favour of calling virParseUUID --- diff --git a/src/libvirt.c b/src/libvirt.c index 48e7b5bcb2..bcb89e191e 100644 --- a/src/libvirt.c +++ b/src/libvirt.c @@ -1827,10 +1827,7 @@ error: virDomainPtr virDomainLookupByUUIDString(virConnectPtr conn, const char *uuidstr) { - int raw[VIR_UUID_BUFLEN], i; unsigned char uuid[VIR_UUID_BUFLEN]; - int ret; - DEBUG("conn=%p, uuidstr=%s", conn, uuidstr); virResetLastError(); @@ -1843,26 +1840,11 @@ virDomainLookupByUUIDString(virConnectPtr conn, const char *uuidstr) virLibConnError(conn, VIR_ERR_INVALID_ARG, __FUNCTION__); goto error; } - /* XXX: sexpr_uuid() also supports 'xxxx-xxxx-xxxx-xxxx' format. - * We needn't it here. Right? - */ - ret = sscanf(uuidstr, - "%02x%02x%02x%02x-" - "%02x%02x-" - "%02x%02x-" - "%02x%02x-" - "%02x%02x%02x%02x%02x%02x", - raw + 0, raw + 1, raw + 2, raw + 3, - raw + 4, raw + 5, raw + 6, raw + 7, - raw + 8, raw + 9, raw + 10, raw + 11, - raw + 12, raw + 13, raw + 14, raw + 15); - - if (ret!=VIR_UUID_BUFLEN) { + + if (virUUIDParse(uuidstr, uuid) < 0) { virLibConnError(conn, VIR_ERR_INVALID_ARG, __FUNCTION__); goto error; } - for (i = 0; i < VIR_UUID_BUFLEN; i++) - uuid[i] = raw[i] & 0xFF; return virDomainLookupByUUID(conn, &uuid[0]); @@ -5026,9 +5008,7 @@ error: virNetworkPtr virNetworkLookupByUUIDString(virConnectPtr conn, const char *uuidstr) { - int raw[VIR_UUID_BUFLEN], i; unsigned char uuid[VIR_UUID_BUFLEN]; - int ret; DEBUG("conn=%p, uuidstr=%s", conn, uuidstr); virResetLastError(); @@ -5042,26 +5022,10 @@ virNetworkLookupByUUIDString(virConnectPtr conn, const char *uuidstr) goto error; } - /* XXX: sexpr_uuid() also supports 'xxxx-xxxx-xxxx-xxxx' format. - * We needn't it here. Right? - */ - ret = sscanf(uuidstr, - "%02x%02x%02x%02x-" - "%02x%02x-" - "%02x%02x-" - "%02x%02x-" - "%02x%02x%02x%02x%02x%02x", - raw + 0, raw + 1, raw + 2, raw + 3, - raw + 4, raw + 5, raw + 6, raw + 7, - raw + 8, raw + 9, raw + 10, raw + 11, - raw + 12, raw + 13, raw + 14, raw + 15); - - if (ret!=VIR_UUID_BUFLEN) { + if (virUUIDParse(uuidstr, uuid) < 0) { virLibConnError(conn, VIR_ERR_INVALID_ARG, __FUNCTION__); goto error; } - for (i = 0; i < VIR_UUID_BUFLEN; i++) - uuid[i] = raw[i] & 0xFF; return virNetworkLookupByUUID(conn, &uuid[0]); @@ -8875,10 +8839,7 @@ error: virSecretPtr virSecretLookupByUUIDString(virConnectPtr conn, const char *uuidstr) { - int raw[VIR_UUID_BUFLEN], i; unsigned char uuid[VIR_UUID_BUFLEN]; - int ret; - DEBUG("conn=%p, uuidstr=%s", conn, uuidstr); virResetLastError(); @@ -8891,26 +8852,11 @@ virSecretLookupByUUIDString(virConnectPtr conn, const char *uuidstr) virLibConnError(conn, VIR_ERR_INVALID_ARG, __FUNCTION__); goto error; } - /* XXX: sexpr_uuid() also supports 'xxxx-xxxx-xxxx-xxxx' format. - * We needn't it here. Right? - */ - ret = sscanf(uuidstr, - "%02x%02x%02x%02x-" - "%02x%02x-" - "%02x%02x-" - "%02x%02x-" - "%02x%02x%02x%02x%02x%02x", - raw + 0, raw + 1, raw + 2, raw + 3, - raw + 4, raw + 5, raw + 6, raw + 7, - raw + 8, raw + 9, raw + 10, raw + 11, - raw + 12, raw + 13, raw + 14, raw + 15); - - if (ret!=VIR_UUID_BUFLEN) { + + if (virUUIDParse(uuidstr, uuid) < 0) { virLibConnError(conn, VIR_ERR_INVALID_ARG, __FUNCTION__); goto error; } - for (i = 0; i < VIR_UUID_BUFLEN; i++) - uuid[i] = raw[i] & 0xFF; return virSecretLookupByUUID(conn, &uuid[0]);