summaryrefslogtreecommitdiff
path: root/auth/credentials
diff options
context:
space:
mode:
authorAurelien Aptel <aaptel@suse.com>2017-01-17 14:39:02 +0100
committerJeremy Allison <jra@samba.org>2017-02-01 01:26:12 +0100
commit669d2152cb9c1111d36127daee64b4bbfc141b7a (patch)
tree6d377c1f2adcde7e5fa030f04a561452fa19b87a /auth/credentials
parent39ac4ae65eb3b8d4d3574987eab47eb7a290f2e4 (diff)
downloadsamba-669d2152cb9c1111d36127daee64b4bbfc141b7a.tar.gz
auth: fix mem leak & use appropriate free function
coverity fix. cli_credentials_set_principal does a strdup, we want to free 'name' regardless of the result in 'ok'. Signed-off-by: Aurelien Aptel <aaptel@suse.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'auth/credentials')
-rw-r--r--auth/credentials/credentials_krb5.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/auth/credentials/credentials_krb5.c b/auth/credentials/credentials_krb5.c
index 3663e1dba0a..d2a655e9b6d 100644
--- a/auth/credentials/credentials_krb5.c
+++ b/auth/credentials/credentials_krb5.c
@@ -260,11 +260,11 @@ static int cli_credentials_set_from_ccache(struct cli_credentials *cred,
}
ok = cli_credentials_set_principal(cred, name, obtained);
+ krb5_free_unparsed_name(ccache->smb_krb5_context->krb5_context, name);
if (!ok) {
krb5_free_principal(ccache->smb_krb5_context->krb5_context, princ);
return ENOMEM;
}
- free(name);
realm = smb_krb5_principal_get_realm(ccache->smb_krb5_context->krb5_context,
princ);