]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: secret: Refactor cleanup in secretXMLParseNode
authorPeter Krempa <pkrempa@redhat.com>
Mon, 16 Sep 2019 11:44:39 +0000 (13:44 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 19 Sep 2019 12:31:15 +0000 (14:31 +0200)
Use VIR_AUTO* for temporary locals and get rid of the 'cleanup' label.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
src/conf/network_conf.c
src/conf/secret_conf.c

index 9990d5e79d8b6a61eb222493e4f0e6d8ad73743d..beeb760e2db489801892c4b7adac7f0e44ad537e 100644 (file)
@@ -3654,31 +3654,31 @@ virNetworkDefUpdateSection(virNetworkDefPtr def,
         break;
     case VIR_NETWORK_SECTION_IP_DHCP_HOST:
         return virNetworkDefUpdateIPDHCPHost(def, command,
-                                            parentIndex, ctxt, flags);
+                                             parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_IP_DHCP_RANGE:
         return virNetworkDefUpdateIPDHCPRange(def, command,
-                                             parentIndex, ctxt, flags);
+                                              parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_FORWARD:
         return virNetworkDefUpdateForward(def, command,
-                                         parentIndex, ctxt, flags);
+                                          parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_FORWARD_INTERFACE:
         return virNetworkDefUpdateForwardInterface(def, command,
-                                                  parentIndex, ctxt, flags);
+                                                   parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_FORWARD_PF:
         return virNetworkDefUpdateForwardPF(def, command,
-                                           parentIndex, ctxt, flags);
+                                            parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_PORTGROUP:
         return virNetworkDefUpdatePortGroup(def, command,
-                                           parentIndex, ctxt, flags);
+                                            parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_DNS_HOST:
         return virNetworkDefUpdateDNSHost(def, command,
-                                         parentIndex, ctxt, flags);
+                                          parentIndex, ctxt, flags);
         break;
     case VIR_NETWORK_SECTION_DNS_TXT:
         return virNetworkDefUpdateDNSTxt(def, command, parentIndex, ctxt, flags);
index a7691da7b5260a51f8d214faef6181163d1d36ab..da61c6917ea44ec35d1ee30993e79a21a416e8b0 100644 (file)
@@ -131,33 +131,33 @@ virSecretDefParseUsage(xmlXPathContextPtr ctxt,
 static virSecretDefPtr
 secretXMLParseNode(xmlDocPtr xml, xmlNodePtr root)
 {
-    xmlXPathContextPtr ctxt = NULL;
-    virSecretDefPtr def = NULL, ret = NULL;
-    char *prop = NULL;
-    char *uuidstr = NULL;
+    VIR_AUTOPTR(xmlXPathContext) ctxt = NULL;
+    VIR_AUTOPTR(virSecretDef) def = NULL;
+    VIR_AUTOFREE(char *) prop = NULL;
+    VIR_AUTOFREE(char *) uuidstr = NULL;
 
     if (!virXMLNodeNameEqual(root, "secret")) {
         virReportError(VIR_ERR_XML_ERROR,
                        _("unexpected root element <%s>, "
                          "expecting <secret>"),
                        root->name);
-        goto cleanup;
+        return NULL;
     }
 
     if (!(ctxt = virXMLXPathContextNew(xml)))
-        goto cleanup;
+        return NULL;
 
     ctxt->node = root;
 
     if (VIR_ALLOC(def) < 0)
-        goto cleanup;
+        return NULL;
 
     prop = virXPathString("string(./@ephemeral)", ctxt);
     if (prop != NULL) {
         if (virStringParseYesNo(prop, &def->isephemeral) < 0) {
             virReportError(VIR_ERR_XML_ERROR, "%s",
                            _("invalid value of 'ephemeral'"));
-            goto cleanup;
+            return NULL;
         }
         VIR_FREE(prop);
     }
@@ -167,7 +167,7 @@ secretXMLParseNode(xmlDocPtr xml, xmlNodePtr root)
         if (virStringParseYesNo(prop, &def->isprivate) < 0) {
             virReportError(VIR_ERR_XML_ERROR, "%s",
                            _("invalid value of 'private'"));
-            goto cleanup;
+            return NULL;
         }
         VIR_FREE(prop);
     }
@@ -177,13 +177,13 @@ secretXMLParseNode(xmlDocPtr xml, xmlNodePtr root)
         if (virUUIDGenerate(def->uuid) < 0) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
                            "%s", _("Failed to generate UUID"));
-            goto cleanup;
+            return NULL;
         }
     } else {
         if (virUUIDParse(uuidstr, def->uuid) < 0) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
                            "%s", _("malformed uuid element"));
-            goto cleanup;
+            return NULL;
         }
         VIR_FREE(uuidstr);
     }
@@ -191,15 +191,9 @@ secretXMLParseNode(xmlDocPtr xml, xmlNodePtr root)
     def->description = virXPathString("string(./description)", ctxt);
     if (virXPathNode("./usage", ctxt) != NULL
         && virSecretDefParseUsage(ctxt, def) < 0)
-        goto cleanup;
-    VIR_STEAL_PTR(ret, def);
-
- cleanup:
-    VIR_FREE(prop);
-    VIR_FREE(uuidstr);
-    virSecretDefFree(def);
-    xmlXPathFreeContext(ctxt);
-    return ret;
+        return NULL;
+
+    VIR_RETURN_PTR(def);
 }
 
 static virSecretDefPtr