diff options
author | Jean-François Micouleau <jfm@samba.org> | 2000-09-28 17:35:03 +0000 |
---|---|---|
committer | Jean-François Micouleau <jfm@samba.org> | 2000-09-28 17:35:03 +0000 |
commit | b06d83c909e0587accf93e090c62395ff8b1bb87 (patch) | |
tree | 673a6627b0bbf870ff1377a4da0b58081387e9c5 /source3/rpc_parse | |
parent | 1ef79dbcabbe58c1338040eaea9fbcfe3b7ea105 (diff) | |
download | samba-b06d83c909e0587accf93e090c62395ff8b1bb87.tar.gz samba-b06d83c909e0587accf93e090c62395ff8b1bb87.tar.bz2 samba-b06d83c909e0587accf93e090c62395ff8b1bb87.zip |
fixed samr_create_user(). we now correctly parse the query and the reply.
And we create the disabled account. That means we can create user and
trust accounts remotely !
ifdef out a return in passdb/smbpass.c. I think I didn't break any
security. Jeremy could you check if I didn't make any mistakes ???
J.F.
(This used to be commit 416be1b64f366c8b859f25856fce2467ec0446d9)
Diffstat (limited to 'source3/rpc_parse')
-rw-r--r-- | source3/rpc_parse/parse_samr.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/source3/rpc_parse/parse_samr.c b/source3/rpc_parse/parse_samr.c index 72e803d22b..ce26ad454f 100644 --- a/source3/rpc_parse/parse_samr.c +++ b/source3/rpc_parse/parse_samr.c @@ -3082,11 +3082,9 @@ BOOL samr_io_q_create_user(char *desc, SAMR_Q_CREATE_USER *q_u, prs_struct *ps, if(!prs_align(ps)) return False; - if(!prs_uint32("acct_ctrl", ps, depth, &q_u->acct_ctrl)) + if(!prs_uint32("acb_info", ps, depth, &q_u->acb_info)) return False; - if(!prs_uint16("unknown_1", ps, depth, &q_u->unknown_1)) - return False; - if(!prs_uint16("unknown_2", ps, depth, &q_u->unknown_2)) + if(!prs_uint32("access_mask", ps, depth, &q_u->access_mask)) return False; return True; @@ -3109,7 +3107,10 @@ BOOL samr_io_r_create_user(char *desc, SAMR_R_CREATE_USER *r_u, prs_struct *ps, if(!smb_io_pol_hnd("pol", &r_u->pol, ps, depth)) return False; - if(!prs_align(ps)) + + if(!prs_uint32("unknown_0", ps, depth, &r_u->unknown_0)) + return False; + if(!prs_uint32("user_rid", ps, depth, &r_u->user_rid)) return False; if(!prs_uint32("status", ps, depth, &r_u->status)) |