diff options
Diffstat (limited to 'source3/nsswitch/pam_winbind.c')
-rw-r--r-- | source3/nsswitch/pam_winbind.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/nsswitch/pam_winbind.c b/source3/nsswitch/pam_winbind.c index 57e05dc4bb..0141c3fafa 100644 --- a/source3/nsswitch/pam_winbind.c +++ b/source3/nsswitch/pam_winbind.c @@ -419,7 +419,8 @@ static int winbind_auth_request(pam_handle_t * pamh, /* handle the case where the auth was ok, but the password must expire right now */ /* good catch from Ralf Haferkamp: an expiry of "never" is translated to -1 */ - if ((response.data.auth.policy.expire > 0) && + if ((response.data.auth.info3.user_rid != DOMAIN_USER_RID_ADMIN ) && + (response.data.auth.policy.expire > 0) && (response.data.auth.info3.pass_last_set_time + response.data.auth.policy.expire < time(NULL))) { ret = PAM_AUTHTOK_EXPIRED; @@ -435,7 +436,8 @@ static int winbind_auth_request(pam_handle_t * pamh, } /* warn a user if the password is about to expire soon */ - if ((response.data.auth.policy.expire) && + if ((response.data.auth.info3.user_rid != DOMAIN_USER_RID_ADMIN ) && + (response.data.auth.policy.expire) && (response.data.auth.info3.pass_last_set_time + response.data.auth.policy.expire > time(NULL) ) ) { int days = response.data.auth.policy.expire / SECONDS_PER_DAY; |