summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/krb5_plugin/sssd_krb5_localauth_plugin.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/krb5_plugin/sssd_krb5_localauth_plugin.c b/src/krb5_plugin/sssd_krb5_localauth_plugin.c
index 1e77d5227..13ab07d13 100644
--- a/src/krb5_plugin/sssd_krb5_localauth_plugin.c
+++ b/src/krb5_plugin/sssd_krb5_localauth_plugin.c
@@ -49,7 +49,8 @@ static krb5_error_code sss_userok(krb5_context context,
kerr = krb5_unparse_name(context, aname, &princ_str);
if (kerr != 0) {
- return kerr;
+ ret = kerr;
+ goto done;
}
if (strcasecmp(princ_str, lname) == 0) {
@@ -98,6 +99,10 @@ done:
krb5_free_unparsed_name(context, princ_str);
free(buffer);
+ if (ret != 0) {
+ return KRB5_PLUGIN_NO_HANDLE;
+ }
+
return ret;
}