summaryrefslogtreecommitdiff
path: root/src/providers/krb5
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2012-09-19 10:27:58 +0200
committerJakub Hrozek <jhrozek@redhat.com>2012-09-20 10:07:43 +0200
commit383fa7e69136ce27031d7d0b9b9b8e5b0392bfee (patch)
tree7721ed946dc1fa499869237b2ce4b862e811c2f3 /src/providers/krb5
parent3a8f68b9b7ae094a4186d2d9abeb2ec0209902fd (diff)
downloadsssd-383fa7e69136ce27031d7d0b9b9b8e5b0392bfee.tar.gz
sssd-383fa7e69136ce27031d7d0b9b9b8e5b0392bfee.tar.bz2
sssd-383fa7e69136ce27031d7d0b9b9b8e5b0392bfee.zip
KRB5 child: Don't return System Error on empty password
https://fedorahosted.org/sssd/ticket/1310
Diffstat (limited to 'src/providers/krb5')
-rw-r--r--src/providers/krb5/krb5_child.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/providers/krb5/krb5_child.c b/src/providers/krb5/krb5_child.c
index dc2e3117..9665f45b 100644
--- a/src/providers/krb5/krb5_child.c
+++ b/src/providers/krb5/krb5_child.c
@@ -933,6 +933,9 @@ static int kerr_to_status(krb5_error_code kerr)
KRB5_CHILD_DEBUG(SSSDBG_CRIT_FAILURE, kerr);
switch (kerr) {
+ case KRB5_LIBOS_CANTREADPWD:
+ pam_status = PAM_CRED_UNAVAIL;
+ break;
case KRB5_KDC_UNREACH:
pam_status = PAM_AUTHINFO_UNAVAIL;
break;
@@ -942,6 +945,7 @@ static int kerr_to_status(krb5_error_code kerr)
case KRB5KRB_AP_ERR_BAD_INTEGRITY:
pam_status = PAM_AUTH_ERR;
break;
+ case KRB5_PREAUTH_FAILED:
case KRB5KDC_ERR_PREAUTH_FAILED:
pam_status = PAM_CRED_ERR;
break;