diff options
author | Günther Deschner <gd@samba.org> | 2008-11-29 00:23:16 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2008-12-02 00:52:11 +0100 |
commit | b07d3794d25eddf53fa1d313eff3dfd8781469d9 (patch) | |
tree | 8bf5ffb07772d70113071659b2f59ac1d527a986 /source3/rpc_server | |
parent | 798c4b3e6a27a09a9156f7476cf5bb4151741652 (diff) | |
download | samba-b07d3794d25eddf53fa1d313eff3dfd8781469d9.tar.gz samba-b07d3794d25eddf53fa1d313eff3dfd8781469d9.tar.bz2 samba-b07d3794d25eddf53fa1d313eff3dfd8781469d9.zip |
s3-samr: refuse do process UserSetInfo with 0 fields_present.
Guenther
Diffstat (limited to 'source3/rpc_server')
-rw-r--r-- | source3/rpc_server/srv_samr_nt.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source3/rpc_server/srv_samr_nt.c b/source3/rpc_server/srv_samr_nt.c index 7cc4b2c192..7baab1c86f 100644 --- a/source3/rpc_server/srv_samr_nt.c +++ b/source3/rpc_server/srv_samr_nt.c @@ -3891,6 +3891,10 @@ static NTSTATUS set_user_info_21(TALLOC_CTX *mem_ctx, return NT_STATUS_INVALID_PARAMETER; } + if (id21->fields_present == 0) { + return NT_STATUS_INVALID_PARAMETER; + } + if (id21->fields_present & SAMR_FIELD_LAST_PWD_CHANGE) { return NT_STATUS_ACCESS_DENIED; } @@ -3974,6 +3978,10 @@ static NTSTATUS set_user_info_23(TALLOC_CTX *mem_ctx, return NT_STATUS_INVALID_PARAMETER; } + if (id23->info.fields_present == 0) { + return NT_STATUS_INVALID_PARAMETER; + } + if (id23->info.fields_present & SAMR_FIELD_LAST_PWD_CHANGE) { return NT_STATUS_ACCESS_DENIED; } @@ -4142,6 +4150,10 @@ static NTSTATUS set_user_info_25(TALLOC_CTX *mem_ctx, return NT_STATUS_INVALID_PARAMETER; } + if (id25->info.fields_present == 0) { + return NT_STATUS_INVALID_PARAMETER; + } + if (id25->info.fields_present & SAMR_FIELD_LAST_PWD_CHANGE) { return NT_STATUS_ACCESS_DENIED; } |