On Fri, Nov 06, 2009 at 04:28:03AM +0100, Matthias Bolte wrote:
Also reset UUID to all 0 instead of all 48 (== '0') in
phypUUIDTable_RemLpar()
---
src/phyp/phyp_driver.c | 20 ++++----------------
1 files changed, 4 insertions(+), 16 deletions(-)
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
index 8d54ae7..ab5af17 100644
--- a/src/phyp/phyp_driver.c
+++ b/src/phyp/phyp_driver.c
@@ -237,7 +237,7 @@ openSSHSession(virConnectPtr conn, virConnectAuthPtr auth,
struct addrinfo hints;
int ret;
- memset(&hints, '\0', sizeof(hints));
+ memset(&hints, 0, sizeof(hints));
hints.ai_flags = AI_ADDRCONFIG | AI_NUMERICSERV;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = 0;
@@ -1214,10 +1214,6 @@ phypDomainDumpXML(virDomainPtr dom, int flags)
virDomainDefPtr def = NULL;
char *ret = NULL;
char *managed_system = phyp_driver->managed_system;
- unsigned char *lpar_uuid = NULL;
-
- if (VIR_ALLOC_N(lpar_uuid, VIR_UUID_BUFLEN) < 0)
- virReportOOMError(dom->conn);
if (VIR_ALLOC(def) < 0)
virReportOOMError(dom->conn);
@@ -1233,12 +1229,7 @@ phypDomainDumpXML(virDomainPtr dom, int flags)
goto err;
}
- if (phypGetLparUUID(lpar_uuid, dom->id, dom->conn) == -1) {
- VIR_ERROR("%s", "Unable to generate random uuid.");
- goto err;
- }
-
- if (!memcpy(def->uuid, lpar_uuid, VIR_UUID_BUFLEN)) {
+ if (phypGetLparUUID(def->uuid, dom->id, dom->conn) == -1) {
VIR_ERROR("%s", "Unable to generate random uuid.");
goto err;
}
@@ -1695,8 +1686,7 @@ phypUUIDTable_RemLpar(virConnectPtr conn, int id)
for (i = 0; i <= uuid_table->nlpars; i++) {
if (uuid_table->lpars[i]->id == id) {
uuid_table->lpars[i]->id = -1;
- if (!memset(uuid_table->lpars[i]->uuid, '0',
VIR_UUID_BUFLEN))
- goto exit;
+ memset(uuid_table->lpars[i]->uuid, 0, VIR_UUID_BUFLEN);
}
}
@@ -1706,7 +1696,6 @@ phypUUIDTable_RemLpar(virConnectPtr conn, int id)
if (phypUUIDTable_Push(conn) == -1)
goto err;
- exit:
return 0;
err:
@@ -1734,8 +1723,7 @@ phypUUIDTable_AddLpar(virConnectPtr conn, unsigned char *uuid, int
id)
}
uuid_table->lpars[i]->id = id;
- if (memmove(uuid_table->lpars[i]->uuid, uuid, VIR_UUID_BUFLEN) == NULL)
- goto err;
+ memmove(uuid_table->lpars[i]->uuid, uuid, VIR_UUID_BUFLEN);
if (phypUUIDTable_WriteFile(conn) == -1)
goto err;
Good cleanup, and good catch !!!
ACK,
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/