s4:dcesrv_samr_SetUserInfo - port the "SAMR_FIELD_LAST_PWD_CHANGE" check from s3...
authorMatthias Dieter Wallnöfer <mdw@samba.org>
Mon, 21 Jun 2010 12:54:19 +0000 (14:54 +0200)
committerMatthias Dieter Wallnöfer <mdw@samba.org>
Mon, 28 Jun 2010 12:51:04 +0000 (14:51 +0200)
source4/rpc_server/samr/dcesrv_samr.c

index 15615e8c757319d2f5a566ad2a0165ef4e3d5087..0b4e8e25ec6258cfcefb9fd0678b732cf66bc510 100644 (file)
@@ -3287,6 +3287,10 @@ static NTSTATUS dcesrv_samr_SetUserInfo(struct dcesrv_call_state *dce_call, TALL
                IFSET(SAMR_FIELD_CODE_PAGE)
                        SET_UINT  (msg, info23.info.code_page,      "codePage");
 
+               /* password change fields */
+               IFSET(SAMR_FIELD_LAST_PWD_CHANGE)
+                       return NT_STATUS_ACCESS_DENIED;
+
                IFSET(SAMR_FIELD_NT_PASSWORD_PRESENT) {
                        status = samr_set_password(dce_call,
                                                   a_state->sam_ctx,
@@ -3350,6 +3354,10 @@ static NTSTATUS dcesrv_samr_SetUserInfo(struct dcesrv_call_state *dce_call, TALL
                IFSET(SAMR_FIELD_CODE_PAGE)
                        SET_UINT  (msg, info25.info.code_page,      "codePage");
 
+               /* password change fields */
+               IFSET(SAMR_FIELD_LAST_PWD_CHANGE)
+                       return NT_STATUS_ACCESS_DENIED;
+
                IFSET(SAMR_FIELD_NT_PASSWORD_PRESENT) {
                        status = samr_set_password_ex(dce_call,
                                                      a_state->sam_ctx,