mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 14:15:28 +00:00
vz: make output arguments in prlsdkGetDomainIds as optional
prlsdkGetDomainIds() returns name and uuid for specified instance. Now output arguments can be NULL. It allows to get only necessary info(name or uuid).
This commit is contained in:
parent
39e2267436
commit
2286986a9c
@ -346,31 +346,37 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom,
|
||||
PRL_UINT32 len;
|
||||
PRL_RESULT pret;
|
||||
|
||||
len = 0;
|
||||
/* get name length */
|
||||
pret = PrlVmCfg_GetName(sdkdom, NULL, &len);
|
||||
prlsdkCheckRetGoto(pret, error);
|
||||
if (name) {
|
||||
len = 0;
|
||||
*name = NULL;
|
||||
/* get name length */
|
||||
pret = PrlVmCfg_GetName(sdkdom, NULL, &len);
|
||||
prlsdkCheckRetGoto(pret, error);
|
||||
|
||||
if (VIR_ALLOC_N(*name, len) < 0)
|
||||
goto error;
|
||||
if (VIR_ALLOC_N(*name, len) < 0)
|
||||
goto error;
|
||||
|
||||
PrlVmCfg_GetName(sdkdom, *name, &len);
|
||||
prlsdkCheckRetGoto(pret, error);
|
||||
pret = PrlVmCfg_GetName(sdkdom, *name, &len);
|
||||
prlsdkCheckRetGoto(pret, error);
|
||||
}
|
||||
|
||||
len = sizeof(uuidstr);
|
||||
PrlVmCfg_GetUuid(sdkdom, uuidstr, &len);
|
||||
prlsdkCheckRetGoto(pret, error);
|
||||
if (uuid) {
|
||||
len = sizeof(uuidstr);
|
||||
pret = PrlVmCfg_GetUuid(sdkdom, uuidstr, &len);
|
||||
prlsdkCheckRetGoto(pret, error);
|
||||
|
||||
if (prlsdkUUIDParse(uuidstr, uuid) < 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
_("Domain UUID is malformed or empty"));
|
||||
goto error;
|
||||
if (prlsdkUUIDParse(uuidstr, uuid) < 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
_("Domain UUID is malformed or empty"));
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
error:
|
||||
VIR_FREE(*name);
|
||||
if (name)
|
||||
VIR_FREE(*name);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user