virNWFilterTechDriverPtr techdriver;
char *ifname;
int ifindex;
- const char *linkdev;
+ char *linkdev;
enum virDomainNetType nettype;
char ifkey[VIR_IFKEY_LEN];
virMacAddr macaddr;
- const char *filtername;
+ char *filtername;
virNWFilterHashTablePtr vars;
virNWFilterDriverStatePtr driver;
/* start and end of lease list, ordered by lease time */
* generate much more traffic than if we filtered by VM and
* braodcast MAC as well
*/
- if (!(ext_filter = strdup(filter))) {
- virReportOOMError();
+ if (VIR_STRDUP(ext_filter, filter) < 0)
return NULL;
- }
}
handle = pcap_create(ifname, pcap_errbuf);
fds[i].fd = pcap_fileno(pcapConf[i].handle);
}
tmp = virNetDevGetIndex(req->ifname, &ifindex);
- threadkey = strdup(req->threadkey);
+ ignore_value(VIR_STRDUP(threadkey, req->threadkey));
worker = virThreadPoolNew(1, 1, 0,
virNWFilterDHCPDecodeWorker,
req);
req->driver = driver;
req->techdriver = techdriver;
tmp = virNetDevGetIndex(ifname, &req->ifindex);
- req->linkdev = linkdev ? strdup(linkdev) : NULL;
req->nettype = nettype;
- req->ifname = strdup(ifname);
virMacAddrSet(&req->macaddr, macaddr);
- req->filtername = strdup(filtername);
req->vars = virNWFilterHashTableCreate(0);
+ req->linkdev = NULL;
+
+ if (VIR_STRDUP(req->ifname, ifname) < 0 ||
+ VIR_STRDUP(req->filtername, filtername) < 0 ||
+ VIR_STRDUP(req->linkdev, linkdev) < 0)
+ goto exit_snoopreqput;
- if (!req->ifname || !req->filtername || !req->vars || tmp < 0 ||
- (linkdev != NULL && req->linkdev == NULL)) {
+ if (!req->vars || tmp < 0) {
virReportOOMError();
goto exit_snoopreqput;
}
goto error;
}
- if ((base = strdup(SYSCONFDIR "/libvirt")) == NULL)
- goto out_of_memory;
+ if (VIR_STRDUP(base, SYSCONFDIR "/libvirt") < 0)
+ goto error;
if (virAsprintf(&driverState->configDir,
"%s/nwfilter", base) == -1)
nwfilterDriverLock(driver);
for (i = 0 ; i < driver->nwfilters.count && got < nnames ; i++) {
virNWFilterObjLock(driver->nwfilters.objs[i]);
- if (!(names[got] = strdup(driver->nwfilters.objs[i]->def->name))) {
+ if (VIR_STRDUP(names[got], driver->nwfilters.objs[i]->def->name) < 0) {
virNWFilterObjUnlock(driver->nwfilters.objs[i]);
- virReportOOMError();
goto cleanup;
}
got++;
if (virNWFilterHashTablePutAll(filterparams, ht) < 0)
goto err_free_ht;
- req->filtername = strdup(filtername);
- if (req->filtername == NULL) {
- virReportOOMError();
+ if (VIR_STRDUP(req->filtername, filtername) < 0)
goto err_free_ht;
- }
if (virStrcpyStatic(req->ifname, ifname) == NULL) {
virReportError(VIR_ERR_INTERNAL_ERROR,