On Mon, Oct 07, 2019 at 06:14:12PM +0100, Daniel P. Berrangé wrote:
To simplify the later conversion from virObject to GObject, introduce the use of g_autoptr to the virIdentity implementnation and test suite.Signed-off-by: Daniel P. Berrangé <[email protected]> --- src/util/viridentity.c | 40 +++++++++++++++---------------------- tests/viridentitytest.c | 44 +++++++++++++++++------------------------ 2 files changed, 34 insertions(+), 50 deletions(-) diff --git a/src/util/viridentity.c b/src/util/viridentity.c index 22e2644c19..a24704b690 100644 --- a/src/util/viridentity.c +++ b/src/util/viridentity.c @@ -105,7 +105,7 @@ virIdentityPtr virIdentityGetCurrent(void) */ int virIdentitySetCurrent(virIdentityPtr ident) { - virIdentityPtr old; + g_autoptr(virIdentity) old = NULL; if (virIdentityInitialize() < 0) return -1; @@ -120,8 +120,6 @@ int virIdentitySetCurrent(virIdentityPtr ident) return -1; } - virObjectUnref(old); - return 0; } @@ -136,60 +134,54 @@ int virIdentitySetCurrent(virIdentityPtr ident) */ virIdentityPtr virIdentityGetSystem(void) { - VIR_AUTOFREE(char *) username = NULL; - VIR_AUTOFREE(char *) groupname = NULL; + g_autofree char *username = NULL; + g_autofree char *groupname = NULL; unsigned long long startTime; - virIdentityPtr ret = NULL;
-#if WITH_SELINUX - security_context_t con; -#endif
Unrelated change.
+ g_autoptr(virIdentity) ret = NULL;
if (!(ret = virIdentityNew()))
- goto error;
+ return NULL;
if (virIdentitySetProcessID(ret, getpid()) < 0)
- goto error;
+ return NULL;
if (virProcessGetStartTime(getpid(), &startTime) < 0)
- goto error;
+ return NULL;
if (startTime != 0 &&
virIdentitySetProcessTime(ret, startTime) < 0)
- goto error;
+ return NULL;
if (!(username = virGetUserName(geteuid())))
return ret;
if (virIdentitySetUserName(ret, username) < 0)
- goto error;
+ return NULL;
if (virIdentitySetUNIXUserID(ret, getuid()) < 0)
- goto error;
+ return NULL;
if (!(groupname = virGetGroupName(getegid())))
return ret;
if (virIdentitySetGroupName(ret, groupname) < 0)
- goto error;
+ return NULL;
if (virIdentitySetUNIXGroupID(ret, getgid()) < 0)
- goto error;
+ return NULL;
#if WITH_SELINUX
if (is_selinux_enabled() > 0) {
+ security_context_t con;
if (getcon(&con) < 0) {
virReportSystemError(errno, "%s",
_("Unable to lookup SELinux process context"));
- return ret;
Reviewed-by: Ján Tomko <[email protected]> Jano
signature.asc
Description: PGP signature
-- libvir-list mailing list [email protected] https://www.redhat.com/mailman/listinfo/libvir-list
