Adapt to VIR_ALLOC and virAsprintf in src/conf/*

This commit is contained in:
Michal Privoznik 2013-07-04 12:02:00 +02:00
parent abe6855b9e
commit f2d5e864a2
19 changed files with 246 additions and 610 deletions

View File

@ -103,7 +103,7 @@ virCPUDefCopyModel(virCPUDefPtr dst,
VIR_STRDUP(dst->vendor, src->vendor) < 0 ||
VIR_STRDUP(dst->vendor_id, src->vendor_id) < 0 ||
VIR_ALLOC_N(dst->features, src->nfeatures) < 0)
goto no_memory;
return -1;
dst->nfeatures_max = dst->nfeatures = src->nfeatures;
for (i = 0; i < dst->nfeatures; i++) {
@ -123,10 +123,6 @@ virCPUDefCopyModel(virCPUDefPtr dst,
}
return 0;
no_memory:
virReportOOMError();
return -1;
}
virCPUDefPtr
@ -135,12 +131,9 @@ virCPUDefCopy(const virCPUDefPtr cpu)
virCPUDefPtr copy;
unsigned int i;
if (!cpu)
if (!cpu || VIR_ALLOC(copy) < 0)
return NULL;
if (VIR_ALLOC(copy) < 0)
goto no_memory;
copy->type = cpu->type;
copy->mode = cpu->mode;
copy->match = cpu->match;
@ -155,7 +148,7 @@ virCPUDefCopy(const virCPUDefPtr cpu)
if (cpu->ncells) {
if (VIR_ALLOC_N(copy->cells, cpu->ncells) < 0)
goto no_memory;
goto error;
copy->ncells_max = copy->ncells = cpu->ncells;
for (i = 0; i < cpu->ncells; i++) {
@ -165,7 +158,7 @@ virCPUDefCopy(const virCPUDefPtr cpu)
copy->cells[i].cpumask = virBitmapNewCopy(cpu->cells[i].cpumask);
if (!copy->cells[i].cpumask)
goto no_memory;
goto error;
if (VIR_STRDUP(copy->cells[i].cpustr, cpu->cells[i].cpustr) < 0)
goto error;
@ -175,8 +168,6 @@ virCPUDefCopy(const virCPUDefPtr cpu)
return copy;
no_memory:
virReportOOMError();
error:
virCPUDefFree(copy);
return NULL;
@ -202,10 +193,8 @@ virCPUDefParseXML(const xmlNodePtr node,
return NULL;
}
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
return NULL;
}
if (mode == VIR_CPU_TYPE_AUTO) {
if (virXPathBoolean("boolean(./arch)", ctxt)) {
@ -383,7 +372,7 @@ virCPUDefParseXML(const xmlNodePtr node,
if (VIR_RESIZE_N(def->features, def->nfeatures_max,
def->nfeatures, n) < 0)
goto no_memory;
goto error;
def->nfeatures = n;
}
@ -443,7 +432,7 @@ virCPUDefParseXML(const xmlNodePtr node,
if (VIR_RESIZE_N(def->cells, def->ncells_max,
def->ncells, n) < 0)
goto no_memory;
goto error;
def->ncells = n;
@ -490,9 +479,6 @@ cleanup:
VIR_FREE(nodes);
return def;
no_memory:
virReportOOMError();
error:
virCPUDefFree(def);
def = NULL;
@ -689,7 +675,7 @@ virCPUDefAddFeature(virCPUDefPtr def,
if (VIR_RESIZE_N(def->features, def->nfeatures_max,
def->nfeatures, 1) < 0)
goto no_memory;
return -1;
if (def->type == VIR_CPU_TYPE_HOST)
policy = -1;
@ -701,10 +687,6 @@ virCPUDefAddFeature(virCPUDefPtr def,
def->nfeatures++;
return 0;
no_memory:
virReportOOMError();
return -1;
}
bool

File diff suppressed because it is too large Load Diff

View File

@ -376,7 +376,7 @@ virDomainEventCallbackListAddID(virConnectPtr conn,
}
/* Allocate new event */
if (VIR_ALLOC(event) < 0)
goto no_memory;
goto error;
event->conn = conn;
event->cb = callback;
event->eventID = eventID;
@ -385,7 +385,7 @@ virDomainEventCallbackListAddID(virConnectPtr conn,
if (dom) {
if (VIR_ALLOC(event->dom) < 0)
goto no_memory;
goto error;
if (VIR_STRDUP(event->dom->name, dom->name) < 0)
goto error;
memcpy(event->dom->uuid, dom->uuid, VIR_UUID_BUFLEN);
@ -394,7 +394,7 @@ virDomainEventCallbackListAddID(virConnectPtr conn,
/* Make space on list */
if (VIR_REALLOC_N(cbList->callbacks, cbList->count + 1) < 0)
goto no_memory;
goto error;
virObjectRef(event->conn);
@ -415,8 +415,6 @@ virDomainEventCallbackListAddID(virConnectPtr conn,
return ret;
no_memory:
virReportOOMError();
error:
if (event) {
if (event->dom)
@ -566,11 +564,7 @@ virDomainEventQueueNew(void)
{
virDomainEventQueuePtr ret;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
return NULL;
}
ignore_value(VIR_ALLOC(ret));
return ret;
}
@ -627,10 +621,8 @@ virDomainEventStateNew(void)
{
virDomainEventStatePtr state = NULL;
if (VIR_ALLOC(state) < 0) {
virReportOOMError();
if (VIR_ALLOC(state) < 0)
goto error;
}
if (virMutexInit(&state->lock) < 0) {
virReportSystemError(errno, "%s",
@ -639,10 +631,8 @@ virDomainEventStateNew(void)
goto error;
}
if (VIR_ALLOC(state->callbacks) < 0) {
virReportOOMError();
if (VIR_ALLOC(state->callbacks) < 0)
goto error;
}
if (!(state->queue = virDomainEventQueueNew()))
goto error;
@ -663,10 +653,8 @@ static virDomainEventPtr virDomainEventNewInternal(int eventID,
{
virDomainEventPtr event;
if (VIR_ALLOC(event) < 0) {
virReportOOMError();
if (VIR_ALLOC(event) < 0)
return NULL;
}
event->eventID = eventID;
if (VIR_STRDUP(event->dom.name, name) < 0) {
@ -1188,10 +1176,8 @@ virDomainEventQueuePush(virDomainEventQueuePtr evtQueue,
/* Make space on queue */
if (VIR_REALLOC_N(evtQueue->events,
evtQueue->count + 1) < 0) {
virReportOOMError();
evtQueue->count + 1) < 0)
return -1;
}
evtQueue->events[evtQueue->count] = event;
evtQueue->count++;

View File

@ -318,20 +318,16 @@ virInterfaceDefParseProtoIPv4(virInterfaceProtocolDefPtr def,
if (ipNodes == NULL)
return 0;
if (VIR_ALLOC_N(def->ips, nIpNodes) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->ips, nIpNodes) < 0)
goto error;
}
def->nips = 0;
for (ii = 0; ii < nIpNodes; ii++) {
virInterfaceIpDefPtr ip;
if (VIR_ALLOC(ip) < 0) {
virReportOOMError();
if (VIR_ALLOC(ip) < 0)
goto error;
}
ctxt->node = ipNodes[ii];
ret = virInterfaceDefParseIp(ip, ctxt);
@ -377,20 +373,16 @@ virInterfaceDefParseProtoIPv6(virInterfaceProtocolDefPtr def,
if (ipNodes == NULL)
return 0;
if (VIR_ALLOC_N(def->ips, nIpNodes) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->ips, nIpNodes) < 0)
goto error;
}
def->nips = 0;
for (ii = 0; ii < nIpNodes; ii++) {
virInterfaceIpDefPtr ip;
if (VIR_ALLOC(ip) < 0) {
virReportOOMError();
if (VIR_ALLOC(ip) < 0)
goto error;
}
ctxt->node = ipNodes[ii];
ret = virInterfaceDefParseIp(ip, ctxt);
@ -427,20 +419,16 @@ virInterfaceDefParseIfAdressing(virInterfaceDefPtr def,
return 0;
}
if (VIR_ALLOC_N(def->protos, nProtoNodes) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->protos, nProtoNodes) < 0)
goto error;
}
def->nprotos = 0;
for (pp = 0; pp < nProtoNodes; pp++) {
virInterfaceProtocolDefPtr proto;
if (VIR_ALLOC(proto) < 0) {
virReportOOMError();
if (VIR_ALLOC(proto) < 0)
goto error;
}
ctxt->node = protoNodes[pp];
tmp = virXPathString("string(./@family)", ctxt);
@ -498,7 +486,6 @@ virInterfaceDefParseBridge(virInterfaceDefPtr def,
}
if (nbItf > 0) {
if (VIR_ALLOC_N(def->data.bridge.itf, nbItf) < 0) {
virReportOOMError();
ret = -1;
goto error;
}
@ -545,7 +532,6 @@ virInterfaceDefParseBondItfs(virInterfaceDefPtr def,
}
if (VIR_ALLOC_N(def->data.bond.itf, nbItf) < 0) {
virReportOOMError();
ret = -1;
goto error;
}
@ -682,10 +668,8 @@ virInterfaceDefParseXML(xmlXPathContextPtr ctxt, int parentIfType) {
}
VIR_FREE(tmp);
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
return NULL;
}
if (((parentIfType == VIR_INTERFACE_TYPE_BOND)
&& (type != VIR_INTERFACE_TYPE_ETHERNET))
@ -1266,10 +1250,8 @@ virInterfaceObjPtr virInterfaceAssignDef(virInterfaceObjListPtr interfaces,
return iface;
}
if (VIR_ALLOC(iface) < 0) {
virReportOOMError();
if (VIR_ALLOC(iface) < 0)
return NULL;
}
if (virMutexInit(&iface->lock) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
"%s", _("cannot initialize mutex"));
@ -1280,7 +1262,6 @@ virInterfaceObjPtr virInterfaceAssignDef(virInterfaceObjListPtr interfaces,
iface->def = def;
if (VIR_REALLOC_N(interfaces->objs, interfaces->count + 1) < 0) {
virReportOOMError();
VIR_FREE(iface);
return NULL;
}

View File

@ -120,10 +120,8 @@ virNetDevBandwidthParse(xmlNodePtr node,
xmlNodePtr cur;
xmlNodePtr in = NULL, out = NULL;
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
return NULL;
}
if (!node || !xmlStrEqual(node->name, BAD_CAST "bandwidth")) {
virReportError(VIR_ERR_INVALID_ARG, "%s",
@ -158,10 +156,8 @@ virNetDevBandwidthParse(xmlNodePtr node,
}
if (in) {
if (VIR_ALLOC(def->in) < 0) {
virReportOOMError();
if (VIR_ALLOC(def->in) < 0)
goto error;
}
if (virNetDevBandwidthParseRate(in, def->in) < 0) {
/* helper reported error for us */
@ -184,10 +180,8 @@ virNetDevBandwidthParse(xmlNodePtr node,
}
if (out) {
if (VIR_ALLOC(def->out) < 0) {
virReportOOMError();
if (VIR_ALLOC(def->out) < 0)
goto error;
}
if (virNetDevBandwidthParseRate(out, def->out) < 0) {
/* helper reported error for us */

View File

@ -54,10 +54,8 @@ virNetDevVlanParse(xmlNodePtr node, xmlXPathContextPtr ctxt, virNetDevVlanPtr de
goto cleanup;
}
if (VIR_ALLOC_N(def->tag, nTags) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->tag, nTags) < 0)
goto cleanup;
}
def->nativeMode = 0;
def->nativeTag = 0;

View File

@ -50,10 +50,8 @@ virNetDevVPortProfileParse(xmlNodePtr node, unsigned int flags)
virNetDevVPortProfilePtr virtPort = NULL;
xmlNodePtr cur = node->children;
if (VIR_ALLOC(virtPort) < 0) {
virReportOOMError();
if (VIR_ALLOC(virtPort) < 0)
return NULL;
}
if ((virtPortType = virXMLPropString(node, "type")) &&
(virtPort->virtPortType = virNetDevVPortTypeFromString(virtPortType)) <= 0) {

View File

@ -344,15 +344,11 @@ virNetworkAssignDef(virNetworkObjListPtr nets,
return network;
}
if (VIR_REALLOC_N(nets->objs, nets->count + 1) < 0) {
virReportOOMError();
if (VIR_REALLOC_N(nets->objs, nets->count + 1) < 0)
return NULL;
}
if (VIR_ALLOC(network) < 0) {
virReportOOMError();
if (VIR_ALLOC(network) < 0)
return NULL;
}
if (virMutexInit(&network->lock) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
"%s", _("cannot initialize mutex"));
@ -362,10 +358,8 @@ virNetworkAssignDef(virNetworkObjListPtr nets,
virNetworkObjLock(network);
network->def = def;
if (!(network->class_id = virBitmapNew(CLASS_ID_BITMAP_SIZE))) {
virReportOOMError();
if (!(network->class_id = virBitmapNew(CLASS_ID_BITMAP_SIZE)))
goto error;
}
/* The first three class IDs are already taken */
ignore_value(virBitmapSetBit(network->class_id, 0));
@ -796,10 +790,8 @@ virNetworkDHCPDefParseXML(const char *networkName,
if (cur->type == XML_ELEMENT_NODE &&
xmlStrEqual(cur->name, BAD_CAST "range")) {
if (VIR_REALLOC_N(def->ranges, def->nranges + 1) < 0) {
virReportOOMError();
if (VIR_REALLOC_N(def->ranges, def->nranges + 1) < 0)
return -1;
}
if (virSocketAddrRangeParseXML(networkName, cur,
&def->ranges[def->nranges]) < 0) {
return -1;
@ -809,10 +801,8 @@ virNetworkDHCPDefParseXML(const char *networkName,
} else if (cur->type == XML_ELEMENT_NODE &&
xmlStrEqual(cur->name, BAD_CAST "host")) {
if (VIR_REALLOC_N(def->hosts, def->nhosts + 1) < 0) {
virReportOOMError();
if (VIR_REALLOC_N(def->hosts, def->nhosts + 1) < 0)
return -1;
}
if (virNetworkDHCPHostDefParseXML(networkName, def, cur,
&def->hosts[def->nhosts],
false) < 0) {
@ -883,10 +873,8 @@ virNetworkDNSHostDefParseXML(const char *networkName,
if (cur->type == XML_ELEMENT_NODE &&
xmlStrEqual(cur->name, BAD_CAST "hostname")) {
if (cur->children != NULL) {
if (VIR_REALLOC_N(def->names, def->nnames + 1) < 0) {
virReportOOMError();
if (VIR_REALLOC_N(def->names, def->nnames + 1) < 0)
goto error;
}
def->names[def->nnames++] = (char *)xmlNodeGetContent(cur);
if (!def->names[def->nnames - 1]) {
virReportError(VIR_ERR_XML_DETAIL,
@ -1062,10 +1050,8 @@ virNetworkDNSDefParseXML(const char *networkName,
goto cleanup;
}
if (nhosts > 0) {
if (VIR_ALLOC_N(def->hosts, nhosts) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->hosts, nhosts) < 0)
goto cleanup;
}
for (ii = 0; ii < nhosts; ii++) {
if (virNetworkDNSHostDefParseXML(networkName, hostNodes[ii],
@ -1084,10 +1070,8 @@ virNetworkDNSDefParseXML(const char *networkName,
goto cleanup;
}
if (nsrvs > 0) {
if (VIR_ALLOC_N(def->srvs, nsrvs) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->srvs, nsrvs) < 0)
goto cleanup;
}
for (ii = 0; ii < nsrvs; ii++) {
if (virNetworkDNSSrvDefParseXML(networkName, srvNodes[ii], ctxt,
@ -1106,10 +1090,8 @@ virNetworkDNSDefParseXML(const char *networkName,
goto cleanup;
}
if (ntxts > 0) {
if (VIR_ALLOC_N(def->txts, ntxts) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->txts, ntxts) < 0)
goto cleanup;
}
for (ii = 0; ii < ntxts; ii++) {
if (virNetworkDNSTxtDefParseXML(networkName, txtNodes[ii],
@ -1786,11 +1768,8 @@ virNetworkForwardDefParseXML(const char *networkName,
}
if (nForwardIfs > 0 || forwardDev) {
if (VIR_ALLOC_N(def->ifs, MAX(nForwardIfs, 1)) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->ifs, MAX(nForwardIfs, 1)) < 0)
goto cleanup;
}
if (forwardDev) {
def->ifs[0].device.dev = forwardDev;
@ -1833,11 +1812,8 @@ virNetworkForwardDefParseXML(const char *networkName,
}
} else if (nForwardAddrs > 0) {
if (VIR_ALLOC_N(def->ifs, nForwardAddrs) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->ifs, nForwardAddrs) < 0)
goto cleanup;
}
for (ii = 0; ii < nForwardAddrs; ii++) {
if (!(type = virXMLPropString(forwardAddrNodes[ii], "type"))) {
@ -1880,11 +1856,8 @@ virNetworkForwardDefParseXML(const char *networkName,
networkName);
goto cleanup;
} else if (nForwardPfs == 1) {
if (VIR_ALLOC_N(def->pfs, nForwardPfs) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->pfs, nForwardPfs) < 0)
goto cleanup;
}
forwardDev = virXMLPropString(*forwardPfNodes, "dev");
if (!forwardDev) {
@ -1898,7 +1871,6 @@ virNetworkForwardDefParseXML(const char *networkName,
def->pfs->dev = forwardDev;
forwardDev = NULL;
def->npfs++;
}
ret = 0;
@ -1933,10 +1905,8 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt)
xmlNodePtr bandwidthNode = NULL;
xmlNodePtr vlanNode;
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
return NULL;
}
/* Extract network name */
def->name = virXPathString("string(./name[1])", ctxt);
@ -2040,10 +2010,8 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt)
int ii;
/* allocate array to hold all the portgroups */
if (VIR_ALLOC_N(def->portGroups, nPortGroups) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->portGroups, nPortGroups) < 0)
goto error;
}
/* parse each portgroup */
for (ii = 0; ii < nPortGroups; ii++) {
int ret = virNetworkPortGroupParseXML(&def->portGroups[ii],
@ -2063,10 +2031,8 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt)
int ii;
/* allocate array to hold all the addrs */
if (VIR_ALLOC_N(def->ips, nIps) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->ips, nIps) < 0)
goto error;
}
/* parse each addr */
for (ii = 0; ii < nIps; ii++) {
int ret = virNetworkIPDefParseXML(def->name, ipNodes[ii],
@ -2086,10 +2052,8 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt)
int ii;
/* allocate array to hold all the route definitions */
if (VIR_ALLOC_N(def->routes, nRoutes) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(def->routes, nRoutes) < 0)
goto error;
}
/* parse each definition */
for (ii = 0; ii < nRoutes; ii++) {
int ret = virNetworkRouteDefParseXML(def->name, routeNodes[ii],
@ -3121,11 +3085,7 @@ char *virNetworkConfigFile(const char *dir,
{
char *ret = NULL;
if (virAsprintf(&ret, "%s/%s.xml", dir, name) < 0) {
virReportOOMError();
return NULL;
}
ignore_value(virAsprintf(&ret, "%s/%s.xml", dir, name));
return ret;
}
@ -3159,10 +3119,8 @@ char *virNetworkAllocateBridge(const virNetworkObjListPtr nets,
template = "virbr%d";
do {
if (virAsprintf(&newname, template, id) < 0) {
virReportOOMError();
if (virAsprintf(&newname, template, id) < 0)
return NULL;
}
if (!virNetworkBridgeInUse(nets, newname, NULL)) {
return newname;
}
@ -3411,13 +3369,11 @@ virNetworkDefUpdateIPDHCPHost(virNetworkDefPtr def,
}
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(ipdef->hosts,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : ipdef->nhosts,
ipdef->nhosts, host) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(ipdef->hosts,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : ipdef->nhosts,
ipdef->nhosts, host) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
if (virNetworkDHCPHostDefParseXML(def->name, ipdef,
@ -3517,14 +3473,11 @@ virNetworkDefUpdateIPDHCPRange(virNetworkDefPtr def,
}
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(ipdef->ranges,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : ipdef->nranges,
ipdef->nranges, range) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(ipdef->ranges,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : ipdef->nranges,
ipdef->nranges, range) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
if (ii == ipdef->nranges) {
@ -3612,14 +3565,11 @@ virNetworkDefUpdateForwardInterface(virNetworkDefPtr def,
}
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(def->forward.ifs,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : def->forward.nifs,
def->forward.nifs, iface) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(def->forward.ifs,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : def->forward.nifs,
def->forward.nifs, iface) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
if (ii == def->forward.nifs) {
@ -3739,14 +3689,11 @@ virNetworkDefUpdatePortGroup(virNetworkDefPtr def,
(command == VIR_NETWORK_UPDATE_COMMAND_ADD_LAST)) {
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(def->portGroups,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : def->nPortGroups,
def->nPortGroups, portgroup) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(def->portGroups,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : def->nPortGroups,
def->nPortGroups, portgroup) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
/* remove it */
@ -3823,13 +3770,10 @@ virNetworkDefUpdateDNSHost(virNetworkDefPtr def,
}
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(dns->hosts,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : dns->nhosts, dns->nhosts, host) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(dns->hosts,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : dns->nhosts, dns->nhosts, host) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
if (foundCt == 0) {
@ -3911,13 +3855,10 @@ virNetworkDefUpdateDNSSrv(virNetworkDefPtr def,
}
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(dns->srvs,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : dns->nsrvs, dns->nsrvs, srv) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(dns->srvs,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : dns->nsrvs, dns->nsrvs, srv) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
if (foundCt == 0) {
@ -3993,13 +3934,10 @@ virNetworkDefUpdateDNSTxt(virNetworkDefPtr def,
}
/* add to beginning/end of list */
if (VIR_INSERT_ELEMENT_QUIET(dns->txts,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : dns->ntxts, dns->ntxts, txt) < 0) {
virReportOOMError();
if (VIR_INSERT_ELEMENT(dns->txts,
command == VIR_NETWORK_UPDATE_COMMAND_ADD_FIRST
? 0 : dns->ntxts, dns->ntxts, txt) < 0)
goto cleanup;
}
} else if (command == VIR_NETWORK_UPDATE_COMMAND_DELETE) {
if (foundIdx == dns->ntxts) {
@ -4301,12 +4239,8 @@ virNetworkObjListExport(virConnectPtr conn,
int ret = -1;
int i;
if (nets) {
if (VIR_ALLOC_N(tmp_nets, netobjs.count + 1) < 0) {
virReportOOMError();
goto cleanup;
}
}
if (nets && VIR_ALLOC_N(tmp_nets, netobjs.count + 1) < 0)
goto cleanup;
for (i = 0; i < netobjs.count; i++) {
virNetworkObjPtr netobj = netobjs.objs[i];

View File

@ -176,10 +176,8 @@ virNodeDeviceObjPtr virNodeDeviceAssignDef(virNodeDeviceObjListPtr devs,
return device;
}
if (VIR_ALLOC(device) < 0) {
virReportOOMError();
if (VIR_ALLOC(device) < 0)
return NULL;
}
if (virMutexInit(&device->lock) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
@ -194,7 +192,6 @@ virNodeDeviceObjPtr virNodeDeviceAssignDef(virNodeDeviceObjListPtr devs,
device->def = NULL;
virNodeDeviceObjUnlock(device);
virNodeDeviceObjFree(device);
virReportOOMError();
return NULL;
}
devs->objs[devs->count++] = device;
@ -1015,20 +1012,16 @@ virNodeDevCapPciDevIommuGroupParseXML(xmlXPathContextPtr ctxt,
virDevicePCIAddress addr = { 0, 0, 0, 0, 0 };
if (virDevicePCIAddressParseXML(addrNodes[ii], &addr) < 0)
goto cleanup;
if (VIR_ALLOC(pciAddr) < 0) {
virReportOOMError();
if (VIR_ALLOC(pciAddr) < 0)
goto cleanup;
}
pciAddr->domain = addr.domain;
pciAddr->bus = addr.bus;
pciAddr->slot = addr.slot;
pciAddr->function = addr.function;
if (VIR_APPEND_ELEMENT(data->pci_dev.iommuGroupDevices,
data->pci_dev.nIommuGroupDevices,
pciAddr) < 0) {
virReportOOMError();
pciAddr) < 0)
goto cleanup;
}
}
ret = 0;
@ -1159,10 +1152,8 @@ virNodeDevCapsDefParseXML(xmlXPathContextPtr ctxt,
char *tmp;
int val, ret;
if (VIR_ALLOC(caps) < 0) {
virReportOOMError();
if (VIR_ALLOC(caps) < 0)
return NULL;
}
tmp = virXMLPropString(node, "type");
if (!tmp) {
@ -1238,10 +1229,8 @@ virNodeDeviceDefParseXML(xmlXPathContextPtr ctxt,
xmlNodePtr *nodes;
int n, i;
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
return NULL;
}
/* Extract device name */
if (create == EXISTING_DEVICE) {
@ -1606,12 +1595,8 @@ virNodeDeviceObjListExport(virConnectPtr conn,
int ret = -1;
int i;
if (devices) {
if (VIR_ALLOC_N(tmp_devices, devobjs.count + 1) < 0) {
virReportOOMError();
goto cleanup;
}
}
if (devices && VIR_ALLOC_N(tmp_devices, devobjs.count + 1) < 0)
goto cleanup;
for (i = 0; i < devobjs.count; i++) {
virNodeDeviceObjPtr devobj = devobjs.objs[i];

View File

@ -378,7 +378,6 @@ virNWFilterRuleDefAddVar(virNWFilterRuleDefPtr nwf,
}
if (VIR_EXPAND_N(nwf->varAccess, nwf->nVarAccess, 1) < 0) {
virReportOOMError();
virNWFilterVarAccessFree(varAccess);
return -1;
}
@ -395,10 +394,8 @@ virNWFilterRuleDefAddString(virNWFilterRuleDefPtr nwf,
const char *string,
size_t maxstrlen)
{
if (VIR_REALLOC_N(nwf->strings, nwf->nstrings+1) < 0) {
virReportOOMError();
if (VIR_REALLOC_N(nwf->strings, nwf->nstrings+1) < 0)
return NULL;
}
if (VIR_STRNDUP(nwf->strings[nwf->nstrings], string, maxstrlen) < 0)
return NULL;
@ -2039,10 +2036,8 @@ virNWFilterIncludeParse(xmlNodePtr cur)
{
virNWFilterIncludeDefPtr ret;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
ret->filterref = virXMLPropString(cur, "filter");
if (!ret->filterref) {
@ -2303,10 +2298,8 @@ virNWFilterRuleParse(xmlNodePtr node)
xmlNodePtr cur;
virNWFilterRuleDefPtr ret;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
action = virXMLPropString(node, "action");
direction = virXMLPropString(node, "direction");
@ -2499,10 +2492,8 @@ virNWFilterDefParseXML(xmlXPathContextPtr ctxt) {
int chain_priority;
const char *name_prefix;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
ret->name = virXPathString("string(./@name)", ctxt);
if (!ret->name) {
@ -2577,10 +2568,8 @@ virNWFilterDefParseXML(xmlXPathContextPtr ctxt) {
while (curr != NULL) {
if (curr->type == XML_ELEMENT_NODE) {
if (VIR_ALLOC(entry) < 0) {
virReportOOMError();
if (VIR_ALLOC(entry) < 0)
goto cleanup;
}
/* ignore malformed rule and include elements */
if (xmlStrEqual(curr->name, BAD_CAST "rule"))
@ -2591,7 +2580,6 @@ virNWFilterDefParseXML(xmlXPathContextPtr ctxt) {
if (entry->rule || entry->include) {
if (VIR_REALLOC_N(ret->filterEntries, ret->nentries+1) < 0) {
VIR_FREE(entry);
virReportOOMError();
goto cleanup;
}
ret->filterEntries[ret->nentries++] = entry;
@ -3032,10 +3020,8 @@ virNWFilterObjAssignDef(virConnectPtr conn,
virNWFilterUnlockFilterUpdates();
if (VIR_ALLOC(nwfilter) < 0) {
virReportOOMError();
if (VIR_ALLOC(nwfilter) < 0)
return NULL;
}
if (virMutexInitRecursive(&nwfilter->lock) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
@ -3051,7 +3037,6 @@ virNWFilterObjAssignDef(virConnectPtr conn,
nwfilter->def = NULL;
virNWFilterObjUnlock(nwfilter);
virNWFilterObjFree(nwfilter);
virReportOOMError();
return NULL;
}
nwfilters->objs[nwfilters->count++] = nwfilter;
@ -3485,11 +3470,7 @@ char *virNWFilterConfigFile(const char *dir,
{
char *ret = NULL;
if (virAsprintf(&ret, "%s/%s.xml", dir, name) < 0) {
virReportOOMError();
return NULL;
}
ignore_value(virAsprintf(&ret, "%s/%s.xml", dir, name));
return ret;
}

View File

@ -58,10 +58,8 @@ virNWFilterIPAddrMapAddIPAddr(const char *ifname, char *addr)
val = virHashLookup(ipAddressMap->hashTable, ifname);
if (!val) {
val = virNWFilterVarValueCreateSimple(addr);
if (!val) {
virReportOOMError();
if (!val)
goto cleanup;
}
ret = virNWFilterHashTablePut(ipAddressMap, ifname, val, 1);
goto cleanup;
} else {
@ -146,10 +144,8 @@ int
virNWFilterIPAddrMapInit(void)
{
ipAddressMap = virNWFilterHashTableCreate(0);
if (!ipAddressMap) {
virReportOOMError();
if (!ipAddressMap)
return -1;
}
if (virMutexInit(&ipAddressMapLock) < 0) {
virNWFilterIPAddrMapShutdown();

View File

@ -71,10 +71,8 @@ virNWFilterVarValueCopy(const virNWFilterVarValuePtr val)
unsigned i;
char *str;
if (VIR_ALLOC(res) < 0) {
virReportOOMError();
if (VIR_ALLOC(res) < 0)
return NULL;
}
res->valType = val->valType;
switch (res->valType) {
@ -99,7 +97,6 @@ virNWFilterVarValueCopy(const virNWFilterVarValuePtr val)
return res;
err_exit:
virReportOOMError();
virNWFilterVarValueFree(res);
return NULL;
}
@ -115,10 +112,8 @@ virNWFilterVarValueCreateSimple(char *value)
return NULL;
}
if (VIR_ALLOC(val) < 0) {
virReportOOMError();
if (VIR_ALLOC(val) < 0)
return NULL;
}
val->valType = NWFILTER_VALUE_TYPE_SIMPLE;
val->u.simple.value = value;
@ -227,7 +222,6 @@ virNWFilterVarValueAddValue(virNWFilterVarValuePtr val, char *value)
tmp = val->u.simple.value;
if (VIR_ALLOC_N(val->u.array.values, 2) < 0) {
val->u.simple.value = tmp;
virReportOOMError();
return -1;
}
val->valType = NWFILTER_VALUE_TYPE_ARRAY;
@ -239,10 +233,8 @@ virNWFilterVarValueAddValue(virNWFilterVarValuePtr val, char *value)
case NWFILTER_VALUE_TYPE_ARRAY:
if (VIR_EXPAND_N(val->u.array.values,
val->u.array.nValues, 1) < 0) {
virReportOOMError();
val->u.array.nValues, 1) < 0)
return -1;
}
val->u.array.values[val->u.array.nValues - 1] = value;
rc = 0;
break;
@ -383,10 +375,8 @@ virNWFilterVarCombIterAddVariable(virNWFilterVarCombIterEntryPtr cie,
}
}
if (VIR_EXPAND_N(cie->varNames, cie->nVarNames, 1) < 0) {
virReportOOMError();
if (VIR_EXPAND_N(cie->varNames, cie->nVarNames, 1) < 0)
return -1;
}
cie->varNames[cie->nVarNames - 1] = varName;
@ -477,10 +467,8 @@ virNWFilterVarCombIterCreate(virNWFilterHashTablePtr hash,
int iterIndex = -1;
unsigned int nextIntIterId = VIR_NWFILTER_MAX_ITERID + 1;
if (VIR_ALLOC_VAR(res, virNWFilterVarCombIterEntry, 1 + nVarAccess) < 0) {
virReportOOMError();
if (VIR_ALLOC_VAR(res, virNWFilterVarCombIterEntry, 1 + nVarAccess) < 0)
return NULL;
}
res->hashTable = hash;
@ -703,10 +691,8 @@ virNWFilterHashTablePtr
virNWFilterHashTableCreate(int n) {
virNWFilterHashTablePtr ret;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
ret->hashTable = virHashCreate(n, hashDataFree);
if (!ret->hashTable) {
VIR_FREE(ret);
@ -754,7 +740,6 @@ addToTable(void *payload, const void *name, void *data)
val = virNWFilterVarValueCopy((virNWFilterVarValuePtr)payload);
if (!val) {
virReportOOMError();
atts->errOccurred = 1;
return;
}
@ -836,10 +821,8 @@ virNWFilterParseParamAttributes(xmlNodePtr cur)
virNWFilterVarValuePtr value;
virNWFilterHashTablePtr table = virNWFilterHashTableCreate(0);
if (!table) {
virReportOOMError();
if (!table)
return NULL;
}
cur = cur->children;
@ -989,10 +972,8 @@ virNWFilterVarAccessParse(const char *varAccess)
virNWFilterVarAccessPtr dest;
const char *input = varAccess;
if (VIR_ALLOC(dest) < 0) {
virReportOOMError();
if (VIR_ALLOC(dest) < 0)
return NULL;
}
idx = strspn(input, VALID_VARNAME);

View File

@ -152,10 +152,8 @@ secretXMLParseNode(xmlDocPtr xml, xmlNodePtr root)
}
ctxt->node = root;
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
goto cleanup;
}
prop = virXPathString("string(./@ephemeral)", ctxt);
if (prop != NULL) {

View File

@ -195,10 +195,8 @@ virDomainSnapshotDefParseString(const char *xmlStr,
}
xmlKeepBlanksDefault(keepBlanksDefault);
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
goto cleanup;
}
if (!xmlStrEqual(ctxt->node->name, BAD_CAST "domainsnapshot")) {
virReportError(VIR_ERR_XML_ERROR, "%s", _("domainsnapshot"));
@ -214,10 +212,8 @@ virDomainSnapshotDefParseString(const char *xmlStr,
_("a redefined snapshot must have a name"));
goto cleanup;
}
if (virAsprintf(&def->name, "%lld", (long long)tv.tv_sec) < 0) {
virReportOOMError();
if (virAsprintf(&def->name, "%lld", (long long)tv.tv_sec) < 0)
goto cleanup;
}
}
def->description = virXPathString("string(./description)", ctxt);
@ -321,10 +317,8 @@ virDomainSnapshotDefParseString(const char *xmlStr,
goto cleanup;
if (flags & VIR_DOMAIN_SNAPSHOT_PARSE_DISKS) {
def->ndisks = i;
if (def->ndisks && VIR_ALLOC_N(def->disks, def->ndisks) < 0) {
virReportOOMError();
if (def->ndisks && VIR_ALLOC_N(def->disks, def->ndisks) < 0)
goto cleanup;
}
for (i = 0; i < def->ndisks; i++) {
if (virDomainSnapshotDiskDefParseXML(nodes[i], &def->disks[i]) < 0)
goto cleanup;
@ -407,10 +401,8 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr def,
goto cleanup;
}
if (!(map = virBitmapNew(def->dom->ndisks))) {
virReportOOMError();
if (!(map = virBitmapNew(def->dom->ndisks)))
goto cleanup;
}
/* Double check requested disks. */
for (i = 0; i < def->ndisks; i++) {
@ -471,10 +463,8 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr def,
/* Provide defaults for all remaining disks. */
ndisks = def->ndisks;
if (VIR_EXPAND_N(def->disks, def->ndisks,
def->dom->ndisks - def->ndisks) < 0) {
virReportOOMError();
def->dom->ndisks - def->ndisks) < 0)
goto cleanup;
}
for (i = 0; i < def->dom->ndisks; i++) {
virDomainSnapshotDiskDefPtr disk;
@ -522,21 +512,18 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr def,
tmp = strrchr(original, '.');
if (!tmp || strchr(tmp, '/')) {
ignore_value(virAsprintf(&disk->file, "%s.%s",
original, def->name));
if (virAsprintf(&disk->file, "%s.%s", original, def->name) < 0)
goto cleanup;
} else {
if ((tmp - original) > INT_MAX) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("integer overflow"));
goto cleanup;
}
ignore_value(virAsprintf(&disk->file, "%.*s.%s",
(int) (tmp - original), original,
def->name));
}
if (!disk->file) {
virReportOOMError();
goto cleanup;
if (virAsprintf(&disk->file, "%.*s.%s",
(int) (tmp - original), original,
def->name) < 0)
goto cleanup;
}
}
}
@ -644,10 +631,8 @@ static virDomainSnapshotObjPtr virDomainSnapshotObjNew(void)
{
virDomainSnapshotObjPtr snapshot;
if (VIR_ALLOC(snapshot) < 0) {
virReportOOMError();
if (VIR_ALLOC(snapshot) < 0)
return NULL;
}
VIR_DEBUG("obj=%p", snapshot);
@ -703,10 +688,8 @@ virDomainSnapshotObjListPtr
virDomainSnapshotObjListNew(void)
{
virDomainSnapshotObjListPtr snapshots;
if (VIR_ALLOC(snapshots) < 0) {
virReportOOMError();
if (VIR_ALLOC(snapshots) < 0)
return NULL;
}
snapshots->objs = virHashCreate(50, virDomainSnapshotObjListDataFree);
if (!snapshots->objs) {
VIR_FREE(snapshots);
@ -1031,10 +1014,8 @@ virDomainListSnapshots(virDomainSnapshotObjListPtr snapshots,
if (!snaps || count < 0)
return count;
if (VIR_ALLOC_N(names, count) < 0 ||
VIR_ALLOC_N(list, count + 1) < 0) {
virReportOOMError();
VIR_ALLOC_N(list, count + 1) < 0)
goto cleanup;
}
if (virDomainSnapshotObjListGetNames(snapshots, from, names, count,
flags) < 0)

View File

@ -569,10 +569,8 @@ virStoragePoolDefParseSource(xmlXPathContextPtr ctxt,
source->nhost = n;
if (source->nhost) {
if (VIR_ALLOC_N(source->hosts, source->nhost) < 0) {
virReportOOMError();
if (VIR_ALLOC_N(source->hosts, source->nhost) < 0)
goto cleanup;
}
for (i = 0; i < source->nhost; i++) {
name = virXMLPropString(nodeset[i], "name");
@ -605,7 +603,6 @@ virStoragePoolDefParseSource(xmlXPathContextPtr ctxt,
if (nsource > 0) {
if (VIR_ALLOC_N(source->devices, nsource) < 0) {
VIR_FREE(nodeset);
virReportOOMError();
goto cleanup;
}
@ -728,10 +725,8 @@ virStoragePoolDefParseSourceString(const char *srcSpec,
&xpath_ctxt)))
goto cleanup;
if (VIR_ALLOC(def) < 0) {
virReportOOMError();
if (VIR_ALLOC(def) < 0)
goto cleanup;
}
if (!(node = virXPathNode("/source", xpath_ctxt))) {
virReportError(VIR_ERR_XML_ERROR, "%s",
@ -840,10 +835,8 @@ virStoragePoolDefParseXML(xmlXPathContextPtr ctxt)
char *uuid = NULL;
char *target_path = NULL;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
type = virXPathString("string(./@type)", ctxt);
if (type == NULL) {
@ -1267,10 +1260,8 @@ virStorageVolDefParseXML(virStoragePoolDefPtr pool,
if (options == NULL)
return NULL;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
ret->name = virXPathString("string(./name)", ctxt);
if (ret->name == NULL) {
@ -1373,7 +1364,7 @@ virStorageVolDefParseXML(virStoragePoolDefPtr pool,
goto error;
if (!(ret->target.features = virBitmapNew(VIR_STORAGE_FILE_FEATURE_LAST)))
goto no_memory;
goto error;
for (i = 0; i < n; i++) {
int f = options->featureFromString((const char*)nodes[i]->name);
@ -1400,8 +1391,6 @@ cleanup:
VIR_FREE(unit);
return ret;
no_memory:
virReportOOMError();
error:
virStorageVolDefFree(ret);
ret = NULL;
@ -1743,10 +1732,8 @@ virStoragePoolObjAssignDef(virStoragePoolObjListPtr pools,
return pool;
}
if (VIR_ALLOC(pool) < 0) {
virReportOOMError();
if (VIR_ALLOC(pool) < 0)
return NULL;
}
if (virMutexInit(&pool->lock) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
@ -1762,7 +1749,6 @@ virStoragePoolObjAssignDef(virStoragePoolObjListPtr pools,
pool->def = NULL;
virStoragePoolObjUnlock(pool);
virStoragePoolObjFree(pool);
virReportOOMError();
return NULL;
}
pools->objs[pools->count++] = pool;
@ -1933,10 +1919,8 @@ virStoragePoolSourceListNewSource(virStoragePoolSourceListPtr list)
{
virStoragePoolSourcePtr source;
if (VIR_REALLOC_N(list->sources, list->nsources + 1) < 0) {
virReportOOMError();
if (VIR_REALLOC_N(list->sources, list->nsources + 1) < 0)
return NULL;
}
source = &list->sources[list->nsources++];
memset(source, 0, sizeof(*source));
@ -2215,12 +2199,8 @@ virStoragePoolObjListExport(virConnectPtr conn,
int ret = -1;
int i;
if (pools) {
if (VIR_ALLOC_N(tmp_pools, poolobjs.count + 1) < 0) {
virReportOOMError();
goto cleanup;
}
}
if (pools && VIR_ALLOC_N(tmp_pools, poolobjs.count + 1) < 0)
goto cleanup;
for (i = 0; i < poolobjs.count; i++) {
virStoragePoolObjPtr poolobj = poolobjs.objs[i];

View File

@ -77,10 +77,8 @@ virStorageEncryptionSecretParse(xmlXPathContextPtr ctxt,
int type;
char *uuidstr = NULL;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
old_node = ctxt->node;
ctxt->node = node;
@ -134,10 +132,8 @@ virStorageEncryptionParseXML(xmlXPathContextPtr ctxt)
char *format_str;
int format, i, n;
if (VIR_ALLOC(ret) < 0) {
virReportOOMError();
if (VIR_ALLOC(ret) < 0)
return NULL;
}
format_str = virXPathString("string(./@format)", ctxt);
if (format_str == NULL) {
@ -160,10 +156,8 @@ virStorageEncryptionParseXML(xmlXPathContextPtr ctxt)
if (n < 0){
goto cleanup;
}
if (n != 0 && VIR_ALLOC_N(ret->secrets, n) < 0) {
virReportOOMError();
if (n != 0 && VIR_ALLOC_N(ret->secrets, n) < 0)
goto cleanup;
}
ret->nsecrets = n;
for (i = 0; i < n; i++) {
ret->secrets[i] = virStorageEncryptionSecretParse(ctxt, nodes[i]);

View File

@ -89,10 +89,8 @@ static char *virChrdevLockFilePath(const char *dev)
++p;
}
if (virAsprintf(&path, "%s/LCK..%s", VIR_CHRDEV_LOCK_FILE_PATH, filename) < 0) {
virReportOOMError();
if (virAsprintf(&path, "%s/LCK..%s", VIR_CHRDEV_LOCK_FILE_PATH, filename) < 0)
goto cleanup;
}
sanitizedPath = virFileSanitizePath(path);
@ -138,10 +136,8 @@ static int virChrdevLockFileCreate(const char *dev)
/* ensure correct format according to filesystem hierarchy standard */
/* http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLOCKLOCKFILES */
if (virAsprintf(&pidStr, "%10lld\n", (long long) getpid()) < 0) {
virReportOOMError();
if (virAsprintf(&pidStr, "%10lld\n", (long long) getpid()) < 0)
goto cleanup;
}
/* create the lock file */
if ((lockfd = open(path, O_WRONLY | O_CREAT | O_EXCL, 00644)) < 0) {
@ -274,6 +270,8 @@ virChrdevsPtr virChrdevAlloc(void)
return NULL;
if (virMutexInit(&devs->lock) < 0) {
virReportSystemError(errno, "%s",
_("Unable to init device stream mutex"));
VIR_FREE(devs);
return NULL;
}
@ -396,10 +394,8 @@ int virChrdevOpen(virChrdevsPtr devs,
return -1;
}
if (VIR_ALLOC(cbdata) < 0) {
virReportOOMError();
if (VIR_ALLOC(cbdata) < 0)
goto error;
}
if (virHashAddEntry(devs->hash, path, st) < 0)
goto error;

View File

@ -206,16 +206,19 @@ qemuDomainTrackJob(enum qemuDomainJob job)
}
static void
*qemuDomainObjPrivateAlloc(void)
static void *
qemuDomainObjPrivateAlloc(void)
{
qemuDomainObjPrivatePtr priv;
if (VIR_ALLOC(priv) < 0)
return NULL;
if (qemuDomainObjInitJob(priv) < 0)
if (qemuDomainObjInitJob(priv) < 0) {
virReportSystemError(errno, "%s",
_("Unable to init qemu driver mutexes"));
goto error;
}
if (!(priv->devs = virChrdevAlloc()))
goto error;

View File

@ -36,6 +36,7 @@
#include "c-ctype.h"
#include "count-one-bits.h"
#include "virstring.h"
#include "virerror.h"
#define VIR_FROM_THIS VIR_FROM_NONE
@ -66,8 +67,10 @@ virBitmapPtr virBitmapNew(size_t size)
virBitmapPtr bitmap;
size_t sz;
if (SIZE_MAX - VIR_BITMAP_BITS_PER_UNIT < size || size == 0)
if (SIZE_MAX - VIR_BITMAP_BITS_PER_UNIT < size || size == 0) {
virReportOOMError();
return NULL;
}
sz = (size + VIR_BITMAP_BITS_PER_UNIT - 1) /
VIR_BITMAP_BITS_PER_UNIT;