From: Jeremy Allison Date: Tue, 24 Jun 2008 23:37:15 +0000 (-0700) Subject: Fix bug #5555. Don't return NT_STATUS_PASSWORD_MUST_CHANGE error on machine account... X-Git-Tag: samba-3.3.0pre1~777 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=10da498a2349bf5944183adf5a9284eafa2b8b74;p=thirdparty%2Fsamba.git Fix bug #5555. Don't return NT_STATUS_PASSWORD_MUST_CHANGE error on machine account logon. Jeremy. --- diff --git a/source/auth/auth_sam.c b/source/auth/auth_sam.c index 5e393f72207..50bf15318be 100644 --- a/source/auth/auth_sam.c +++ b/source/auth/auth_sam.c @@ -166,8 +166,9 @@ static NTSTATUS sam_account_ok(TALLOC_CTX *mem_ctx, time_t must_change_time = pdb_get_pass_must_change_time(sampass); time_t last_set_time = pdb_get_pass_last_set_time(sampass); - /* check for immediate expiry "must change at next logon" */ - if (last_set_time == 0) { + /* check for immediate expiry "must change at next logon" + * for a user account. */ + if (((acct_ctrl & (ACB_WSTRUST|ACB_SVRTRUST)) == 0) && (last_set_time == 0)) { DEBUG(1,("sam_account_ok: Account for user '%s' password must change!.\n", pdb_get_username(sampass))); return NT_STATUS_PASSWORD_MUST_CHANGE; }