提交 1f5deed9 编写于 作者: M Michal Privoznik

Adapt to VIR_STRDUP and VIR_STRNDUP in src/openvz/*

上级 bf1fe848
...@@ -135,12 +135,10 @@ openvzParseBarrierLimit(const char* value, ...@@ -135,12 +135,10 @@ openvzParseBarrierLimit(const char* value,
{ {
char *token; char *token;
char *saveptr = NULL; char *saveptr = NULL;
char *str = strdup(value); char *str;
if (str == NULL) { if (VIR_STRDUP(str, value) < 0)
virReportOOMError();
goto error; goto error;
}
token = strtok_r(str, ":", &saveptr); token = strtok_r(str, ":", &saveptr);
if (token == NULL) { if (token == NULL) {
...@@ -230,10 +228,8 @@ openvzReadNetworkConf(virDomainDefPtr def, ...@@ -230,10 +228,8 @@ openvzReadNetworkConf(virDomainDefPtr def,
goto no_memory; goto no_memory;
net->type = VIR_DOMAIN_NET_TYPE_ETHERNET; net->type = VIR_DOMAIN_NET_TYPE_ETHERNET;
net->data.ethernet.ipaddr = strdup(token); if (VIR_STRDUP(net->data.ethernet.ipaddr, token) < 0)
goto error;
if (net->data.ethernet.ipaddr == NULL)
goto no_memory;
if (VIR_REALLOC_N(def->nets, def->nnets + 1) < 0) if (VIR_REALLOC_N(def->nets, def->nnets + 1) < 0)
goto no_memory; goto no_memory;
...@@ -405,7 +401,8 @@ openvzReadFSConf(virDomainDefPtr def, ...@@ -405,7 +401,8 @@ openvzReadFSConf(virDomainDefPtr def,
goto no_memory; goto no_memory;
fs->type = VIR_DOMAIN_FS_TYPE_TEMPLATE; fs->type = VIR_DOMAIN_FS_TYPE_TEMPLATE;
fs->src = strdup(temp); if (VIR_STRDUP(fs->src, temp) < 0)
goto error;
} else { } else {
/* OSTEMPLATE was not found, VE was booted from a private dir directly */ /* OSTEMPLATE was not found, VE was booted from a private dir directly */
ret = openvzReadVPSConfigParam(veid, "VE_PRIVATE", &temp); ret = openvzReadVPSConfigParam(veid, "VE_PRIVATE", &temp);
...@@ -423,12 +420,14 @@ openvzReadFSConf(virDomainDefPtr def, ...@@ -423,12 +420,14 @@ openvzReadFSConf(virDomainDefPtr def,
goto no_memory; goto no_memory;
fs->type = VIR_DOMAIN_FS_TYPE_MOUNT; fs->type = VIR_DOMAIN_FS_TYPE_MOUNT;
fs->src = openvz_replace(temp, "$VEID", veid_str); if (!(fs->src = openvz_replace(temp, "$VEID", veid_str)))
goto no_memory;
VIR_FREE(veid_str); VIR_FREE(veid_str);
} }
fs->dst = strdup("/"); if (VIR_STRDUP(fs->dst, "/") < 0)
goto error;
param = "DISKSPACE"; param = "DISKSPACE";
ret = openvzReadVPSConfigParam(veid, param, &temp); ret = openvzReadVPSConfigParam(veid, param, &temp);
...@@ -451,9 +450,6 @@ openvzReadFSConf(virDomainDefPtr def, ...@@ -451,9 +450,6 @@ openvzReadFSConf(virDomainDefPtr def,
} }
} }
if (fs->src == NULL || fs->dst == NULL)
goto no_memory;
if (VIR_REALLOC_N(def->fss, def->nfss + 1) < 0) if (VIR_REALLOC_N(def->fss, def->nfss + 1) < 0)
goto no_memory; goto no_memory;
def->fss[def->nfss++] = fs; def->fss[def->nfss++] = fs;
...@@ -607,10 +603,10 @@ int openvzLoadDomains(struct openvz_driver *driver) { ...@@ -607,10 +603,10 @@ int openvzLoadDomains(struct openvz_driver *driver) {
goto cleanup; goto cleanup;
} }
if (!(def->os.type = strdup("exe"))) if (VIR_STRDUP(def->os.type, "exe") < 0)
goto no_memory; goto cleanup;
if (!(def->os.init = strdup("/sbin/init"))) if (VIR_STRDUP(def->os.init, "/sbin/init") < 0)
goto no_memory; goto cleanup;
ret = openvzReadVPSConfigParam(veid, "CPUS", &temp); ret = openvzReadVPSConfigParam(veid, "CPUS", &temp);
if (ret < 0) { if (ret < 0) {
...@@ -800,8 +796,7 @@ openvzReadConfigParam(const char *conf_file, const char *param, char **value) ...@@ -800,8 +796,7 @@ openvzReadConfigParam(const char *conf_file, const char *param, char **value)
saveptr = NULL; saveptr = NULL;
if ((token = strtok_r(sf, "\"\t\n", &saveptr)) != NULL) { if ((token = strtok_r(sf, "\"\t\n", &saveptr)) != NULL) {
VIR_FREE(*value); VIR_FREE(*value);
*value = strdup(token); if (VIR_STRDUP(*value, token) < 0) {
if (*value == NULL) {
err = 1; err = 1;
break; break;
} }
...@@ -952,14 +947,18 @@ openvzLocateConfDir(void) ...@@ -952,14 +947,18 @@ openvzLocateConfDir(void)
{ {
const char *conf_dir_list[] = {"/etc/vz/conf", "/usr/local/etc/conf", NULL}; const char *conf_dir_list[] = {"/etc/vz/conf", "/usr/local/etc/conf", NULL};
int i=0; int i=0;
char *ret = NULL;
while (conf_dir_list[i]) { while (conf_dir_list[i]) {
if (!access(conf_dir_list[i], F_OK)) if (!access(conf_dir_list[i], F_OK)) {
return strdup(conf_dir_list[i]); ignore_value(VIR_STRDUP(ret, conf_dir_list[i]));
goto cleanup;
}
i++; i++;
} }
return NULL; cleanup:
return ret;
} }
/* Richard Steven's classic readline() function */ /* Richard Steven's classic readline() function */
......
...@@ -94,13 +94,8 @@ openvzDomainDefPostParse(virDomainDefPtr def, ...@@ -94,13 +94,8 @@ openvzDomainDefPostParse(virDomainDefPtr def,
void *opaque ATTRIBUTE_UNUSED) void *opaque ATTRIBUTE_UNUSED)
{ {
/* fill the init path */ /* fill the init path */
if (STREQ(def->os.type, "exe") && !def->os.init) { if (STREQ(def->os.type, "exe") && !def->os.init)
if (!(def->os.init = strdup("/sbin/init"))) { return VIR_STRDUP(def->os.init, "/sbin/init") < 0 ? -1 : 0;
virReportOOMError();
return -1;
}
}
return 0; return 0;
} }
...@@ -356,8 +351,7 @@ static char *openvzDomainGetOSType(virDomainPtr dom) ...@@ -356,8 +351,7 @@ static char *openvzDomainGetOSType(virDomainPtr dom)
goto cleanup; goto cleanup;
} }
if (!(ret = strdup(vm->def->os.type))) ignore_value(VIR_STRDUP(ret, vm->def->os.type));
virReportOOMError();
cleanup: cleanup:
if (vm) if (vm)
...@@ -768,14 +762,14 @@ cleanup: ...@@ -768,14 +762,14 @@ cleanup:
static char * static char *
openvzGenerateVethName(int veid, char *dev_name_ve) openvzGenerateVethName(int veid, char *dev_name_ve)
{ {
char dev_name[32];
int ifNo = 0; int ifNo = 0;
char *ret;
if (sscanf(dev_name_ve, "%*[^0-9]%d", &ifNo) != 1) if (sscanf(dev_name_ve, "%*[^0-9]%d", &ifNo) != 1)
return NULL; return NULL;
if (snprintf(dev_name, sizeof(dev_name), "veth%d.%d", veid, ifNo) < 7) if (virAsprintf(&ret, "veth%d.%d.", veid, ifNo) < 0)
return NULL; virReportOOMError();
return strdup(dev_name); return ret;
} }
static char * static char *
...@@ -786,7 +780,7 @@ openvzGenerateContainerVethName(int veid) ...@@ -786,7 +780,7 @@ openvzGenerateContainerVethName(int veid)
/* try to get line "^NETIF=..." from config */ /* try to get line "^NETIF=..." from config */
if (openvzReadVPSConfigParam(veid, "NETIF", &temp) <= 0) { if (openvzReadVPSConfigParam(veid, "NETIF", &temp) <= 0) {
name = strdup("eth0"); ignore_value(VIR_STRDUP(name, "eth0"));
} else { } else {
char *saveptr = NULL; char *saveptr = NULL;
char *s; char *s;
...@@ -801,15 +795,12 @@ openvzGenerateContainerVethName(int veid) ...@@ -801,15 +795,12 @@ openvzGenerateContainerVethName(int veid)
} }
/* set new name */ /* set new name */
ignore_value(virAsprintf(&name, "eth%d", max + 1)); if (virAsprintf(&name, "eth%d", max + 1) < 0)
virReportOOMError();
} }
VIR_FREE(temp); VIR_FREE(temp);
if (name == NULL) {
virReportOOMError();
}
return name; return name;
} }
...@@ -1601,10 +1592,8 @@ static int openvzConnectListDefinedDomains(virConnectPtr conn ATTRIBUTE_UNUSED, ...@@ -1601,10 +1592,8 @@ static int openvzConnectListDefinedDomains(virConnectPtr conn ATTRIBUTE_UNUSED,
continue; continue;
} }
snprintf(vpsname, sizeof(vpsname), "%d", veid); snprintf(vpsname, sizeof(vpsname), "%d", veid);
if (!(names[got] = strdup(vpsname))) { if (VIR_STRDUP(names[got], vpsname) < 0)
virReportOOMError();
goto out; goto out;
}
got ++; got ++;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册