[libvirt] [PATCH 1/4] 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). --- src/vz/vz_sdk.c | 38 ++ 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c index 30ea545..a47c5d6 100644 --- a/src/vz/vz_sdk.c +++ b/src/vz/vz_sdk.c @@ -346,31 +346,37 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom, PRL_UINT32 len; PRL_RESULT pret; -len = 0; -/* get name length */ -pret = PrlVmCfg_GetName(sdkdom, NULL, ); -prlsdkCheckRetGoto(pret, error); +if (name) { +len = 0; +*name = NULL; +/* get name length */ +pret = PrlVmCfg_GetName(sdkdom, NULL, ); +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, ); -prlsdkCheckRetGoto(pret, error); +pret = PrlVmCfg_GetName(sdkdom, *name, ); +prlsdkCheckRetGoto(pret, error); +} -len = sizeof(uuidstr); -PrlVmCfg_GetUuid(sdkdom, uuidstr, ); -prlsdkCheckRetGoto(pret, error); +if (uuid) { +len = sizeof(uuidstr); +pret = PrlVmCfg_GetUuid(sdkdom, uuidstr, ); +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; } -- 1.8.3.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 1/4] 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). --- src/vz/vz_sdk.c | 34 +++--- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c index 7973d6a..8181149 100644 --- a/src/vz/vz_sdk.c +++ b/src/vz/vz_sdk.c @@ -346,25 +346,29 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom, PRL_UINT32 len; PRL_RESULT pret; -len = 0; -/* get name length */ -pret = PrlVmCfg_GetName(sdkdom, NULL, ); -prlsdkCheckRetGoto(pret, error); +if (name) { +len = 0; +/* get name length */ +pret = PrlVmCfg_GetName(sdkdom, NULL, ); +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, ); -prlsdkCheckRetGoto(pret, error); +PrlVmCfg_GetName(sdkdom, *name, ); +prlsdkCheckRetGoto(pret, error); +} -len = sizeof(uuidstr); -PrlVmCfg_GetUuid(sdkdom, uuidstr, ); -prlsdkCheckRetGoto(pret, error); +if (uuid) { +len = sizeof(uuidstr); +PrlVmCfg_GetUuid(sdkdom, uuidstr, ); +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; ACK, but I would add *name = NULL as another patch or we depend on caller setting it for us if we follow error path. Done. Thanks! -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 1/4] vz: make output arguments in prlsdkGetDomainIds as optional
29.01.2016 11:25, Maxim Nestratov пишет: 28.01.2016 18:38, Mikhail Feoktistov пишет: prlsdkGetDomainIds() returns name and uuid for specified instance. Now output arguments can be NULL. It allows to get only necessary info(name or uuid). --- src/vz/vz_sdk.c | 34 +++--- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c index 7973d6a..8181149 100644 --- a/src/vz/vz_sdk.c +++ b/src/vz/vz_sdk.c @@ -346,25 +346,29 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom, PRL_UINT32 len; PRL_RESULT pret; -len = 0; -/* get name length */ -pret = PrlVmCfg_GetName(sdkdom, NULL, ); -prlsdkCheckRetGoto(pret, error); +if (name) { +len = 0; +/* get name length */ +pret = PrlVmCfg_GetName(sdkdom, NULL, ); +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, ); -prlsdkCheckRetGoto(pret, error); +PrlVmCfg_GetName(sdkdom, *name, ); I know it's not your mistake, but it would be better not to ignore what PrlVmCfg_GetName returns. Otherwise next statement has no sence. Yes, of cource. Thanks! +prlsdkCheckRetGoto(pret, error); +} -len = sizeof(uuidstr); -PrlVmCfg_GetUuid(sdkdom, uuidstr, ); -prlsdkCheckRetGoto(pret, error); +if (uuid) { +len = sizeof(uuidstr); +PrlVmCfg_GetUuid(sdkdom, uuidstr, ); The same is here. +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; -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 1/4] vz: make output arguments in prlsdkGetDomainIds as optional
28.01.2016 18:38, Mikhail Feoktistov пишет: prlsdkGetDomainIds() returns name and uuid for specified instance. Now output arguments can be NULL. It allows to get only necessary info(name or uuid). --- src/vz/vz_sdk.c | 34 +++--- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c index 7973d6a..8181149 100644 --- a/src/vz/vz_sdk.c +++ b/src/vz/vz_sdk.c @@ -346,25 +346,29 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom, PRL_UINT32 len; PRL_RESULT pret; -len = 0; -/* get name length */ -pret = PrlVmCfg_GetName(sdkdom, NULL, ); -prlsdkCheckRetGoto(pret, error); +if (name) { +len = 0; +/* get name length */ +pret = PrlVmCfg_GetName(sdkdom, NULL, ); +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, ); -prlsdkCheckRetGoto(pret, error); +PrlVmCfg_GetName(sdkdom, *name, ); I know it's not your mistake, but it would be better not to ignore what PrlVmCfg_GetName returns. Otherwise next statement has no sence. +prlsdkCheckRetGoto(pret, error); +} -len = sizeof(uuidstr); -PrlVmCfg_GetUuid(sdkdom, uuidstr, ); -prlsdkCheckRetGoto(pret, error); +if (uuid) { +len = sizeof(uuidstr); +PrlVmCfg_GetUuid(sdkdom, uuidstr, ); The same is here. +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; -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
[libvirt] [PATCH 1/4] 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). --- src/vz/vz_sdk.c | 34 +++--- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c index 7973d6a..8181149 100644 --- a/src/vz/vz_sdk.c +++ b/src/vz/vz_sdk.c @@ -346,25 +346,29 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom, PRL_UINT32 len; PRL_RESULT pret; -len = 0; -/* get name length */ -pret = PrlVmCfg_GetName(sdkdom, NULL, ); -prlsdkCheckRetGoto(pret, error); +if (name) { +len = 0; +/* get name length */ +pret = PrlVmCfg_GetName(sdkdom, NULL, ); +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, ); -prlsdkCheckRetGoto(pret, error); +PrlVmCfg_GetName(sdkdom, *name, ); +prlsdkCheckRetGoto(pret, error); +} -len = sizeof(uuidstr); -PrlVmCfg_GetUuid(sdkdom, uuidstr, ); -prlsdkCheckRetGoto(pret, error); +if (uuid) { +len = sizeof(uuidstr); +PrlVmCfg_GetUuid(sdkdom, uuidstr, ); +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; -- 1.8.3.1 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 1/4] vz: make output arguments in prlsdkGetDomainIds as optional
On 28.01.2016 18:38, Mikhail Feoktistov wrote: > prlsdkGetDomainIds() returns name and uuid for specified instance. > Now output arguments can be NULL. > It allows to get only necessary info(name or uuid). > --- > src/vz/vz_sdk.c | 34 +++--- > 1 file changed, 19 insertions(+), 15 deletions(-) > > diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c > index 7973d6a..8181149 100644 > --- a/src/vz/vz_sdk.c > +++ b/src/vz/vz_sdk.c > @@ -346,25 +346,29 @@ prlsdkGetDomainIds(PRL_HANDLE sdkdom, > PRL_UINT32 len; > PRL_RESULT pret; > > -len = 0; > -/* get name length */ > -pret = PrlVmCfg_GetName(sdkdom, NULL, ); > -prlsdkCheckRetGoto(pret, error); > +if (name) { > +len = 0; > +/* get name length */ > +pret = PrlVmCfg_GetName(sdkdom, NULL, ); > +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, ); > -prlsdkCheckRetGoto(pret, error); > +PrlVmCfg_GetName(sdkdom, *name, ); > +prlsdkCheckRetGoto(pret, error); > +} > > -len = sizeof(uuidstr); > -PrlVmCfg_GetUuid(sdkdom, uuidstr, ); > -prlsdkCheckRetGoto(pret, error); > +if (uuid) { > +len = sizeof(uuidstr); > +PrlVmCfg_GetUuid(sdkdom, uuidstr, ); > +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; > ACK, but I would add *name = NULL as another patch or we depend on caller setting it for us if we follow error path. -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list