mirror of https://gitee.com/openkylin/libvirt.git
Adapt to VIR_STRDUP and VIR_STRNDUP in src/openvz/*
This commit is contained in:
parent
bf1fe848c7
commit
1f5deed9b6
|
@ -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,
|
||||||
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,
|
||||||
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,
|
||||||
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,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
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) {
|
||||||
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)
|
||||||
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)
|
||||||
{
|
{
|
||||||
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,
|
||||||
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)
|
||||||
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:
|
||||||
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)
|
||||||
|
|
||||||
/* 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)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 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,
|
||||||
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 ++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue