g_autofree char *id = NULL;
virMacAddr addr;
virSocketAddr inaddr;
- xmlNodePtr cur = node->children;
+ xmlNodePtr lease;
mac = virXMLPropString(node, "mac");
if (mac != NULL) {
}
}
- while (cur != NULL) {
- if (cur->type == XML_ELEMENT_NODE &&
- virXMLNodeNameEqual(cur, "lease")) {
-
- if (virNetworkDHCPLeaseTimeDefParseXML(&host->lease, cur) < 0)
- return -1;
- }
- cur = cur->next;
- }
+ if ((lease = virXMLNodeGetSubelement(node, "lease")) &&
+ virNetworkDHCPLeaseTimeDefParseXML(&host->lease, lease) < 0)
+ return -1;
host->mac = g_steal_pointer(&mac);
host->id = g_steal_pointer(&id);