summaryrefslogtreecommitdiff
path: root/src/providers/krb5
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2012-05-04 16:24:50 +0200
committerStephen Gallagher <sgallagh@redhat.com>2012-05-07 14:35:49 -0400
commit4e3b55b5f6be51b03c8c51f764aa71677d184847 (patch)
tree03cd8289040ed0a8845531d18d14cd9b765cd3cf /src/providers/krb5
parent06ca37517d873ff240422c4c004d97e1d067af14 (diff)
downloadsssd-4e3b55b5f6be51b03c8c51f764aa71677d184847.tar.gz
sssd-4e3b55b5f6be51b03c8c51f764aa71677d184847.tar.bz2
sssd-4e3b55b5f6be51b03c8c51f764aa71677d184847.zip
Only reset kpasswd server status when performing a chpass operation
https://fedorahosted.org/sssd/ticket/1316
Diffstat (limited to 'src/providers/krb5')
-rw-r--r--src/providers/krb5/krb5_auth.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/providers/krb5/krb5_auth.c b/src/providers/krb5/krb5_auth.c
index 986e449f..50028e15 100644
--- a/src/providers/krb5/krb5_auth.c
+++ b/src/providers/krb5/krb5_auth.c
@@ -898,8 +898,9 @@ static void krb5_child_done(struct tevent_req *subreq)
goto done;
}
- /* if using a dedicated kpasswd server.. */
- if (kr->kpasswd_srv != NULL) {
+ /* if using a dedicated kpasswd server for a chpass operation... */
+ if (kr->kpasswd_srv != NULL &&
+ (pd->cmd == SSS_PAM_CHAUTHTOK || pd->cmd == SSS_PAM_CHAUTHTOK_PRELIM)) {
/* ..which is unreachable by now.. */
if (msg_status == PAM_AUTHTOK_LOCK_BUSY) {
be_fo_set_port_status(state->be_ctx,