summaryrefslogtreecommitdiffstats
path: root/sss_client
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2009-12-16 12:53:55 +0100
committerStephen Gallagher <sgallagh@redhat.com>2009-12-18 09:43:26 -0500
commit973bebfc2cb7e77b4fb3687da5c832516543b479 (patch)
tree24b9ff707d01b8ca68f6f5848548a2c232584962 /sss_client
parent5f0ed91b4d87c01a5e5f24569a457aa29a5e17a8 (diff)
downloadsssd-973bebfc2cb7e77b4fb3687da5c832516543b479.tar.gz
sssd-973bebfc2cb7e77b4fb3687da5c832516543b479.tar.xz
sssd-973bebfc2cb7e77b4fb3687da5c832516543b479.zip
Handle chauthtok with PAM_PRELIM_CHECK separately
If pam_sm_chauthtok is called with the flag PAM_PRELIM_CHECK set we generate a separate call to the sssd to validate the old password before asking for a new password and sending the change password request.
Diffstat (limited to 'sss_client')
-rw-r--r--sss_client/pam_sss.c2
-rw-r--r--sss_client/sss_cli.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/sss_client/pam_sss.c b/sss_client/pam_sss.c
index 1c4aed04e..951a1dcef 100644
--- a/sss_client/pam_sss.c
+++ b/sss_client/pam_sss.c
@@ -814,7 +814,7 @@ static int pam_sss(enum sss_cli_command task, pam_handle_t *pamh,
return ret;
}
if (pam_flags & PAM_PRELIM_CHECK) {
- return ret;
+ task = SSS_PAM_CHAUTHTOK_PRELIM;
}
break;
case SSS_PAM_ACCT_MGMT:
diff --git a/sss_client/sss_cli.h b/sss_client/sss_cli.h
index b036aec31..7c18e1cf8 100644
--- a/sss_client/sss_cli.h
+++ b/sss_client/sss_cli.h
@@ -128,7 +128,7 @@ enum sss_cli_command {
SSS_PAM_OPEN_SESSION = 0x00F4,
SSS_PAM_CLOSE_SESSION = 0x00F5,
SSS_PAM_CHAUTHTOK = 0x00F6,
- SSS_PAM_CHAUTHTOK_PRELIM = 0x00F6,
+ SSS_PAM_CHAUTHTOK_PRELIM = 0x00F7,
};