diff options
author | Luke Leighton <lkcl@samba.org> | 1998-12-04 21:48:06 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1998-12-04 21:48:06 +0000 |
commit | 89c56492a86fb02b2045182490b93f17a475f03d (patch) | |
tree | a05232c9a4e77b8ec2148abd0758f86503861429 /source3/include | |
parent | cf0ea874b1a7cb1dcaaea159d9a4a8a5deae1310 (diff) | |
download | samba-89c56492a86fb02b2045182490b93f17a475f03d.tar.gz samba-89c56492a86fb02b2045182490b93f17a475f03d.tar.bz2 samba-89c56492a86fb02b2045182490b93f17a475f03d.zip |
- oops, i got "add alias member" and "delete alias member" swapped.
- samr_enum_dom_users, the first 4 bytes is some sort of garbage,
nt5-beta2 clears them out to zeros whereas nt4 does not.
fixed bug where we were assuming that the first 4 bytes of a
response _had_ to be non-zero.
- cli_lsarpc.c: forgot to append the rid on the lsa_lookup_names()
client call.
- added in "addaliasmem" and "addgroupmem" commands. the addaliasmem
command actually turned out to be a "delaliasmem" :-) :-)
- parse_lsa.c: moved assert array check to after the size of useable
array space is set...
(This used to be commit 165b15a8cacc4bc7cf8cc0b9aaabb6b92cef7fdb)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/proto.h | 10 | ||||
-rw-r--r-- | source3/include/rpc_samr.h | 31 |
2 files changed, 20 insertions, 21 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index e2b33b3226..49fdda7075 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2086,7 +2086,7 @@ void make_samr_q_enum_dom_users(SAMR_Q_ENUM_DOM_USERS *q_e, POLICY_HND *pol, uint16 acb_mask, uint16 unk_1, uint32 size); void samr_io_q_enum_dom_users(char *desc, SAMR_Q_ENUM_DOM_USERS *q_e, prs_struct *ps, int depth); void make_samr_r_enum_dom_users(SAMR_R_ENUM_DOM_USERS *r_u, - uint16 total_num_entries, uint16 unk_0, + uint32 unk_0, uint32 num_sam_entries, SAM_USER_INFO_21 pass[MAX_SAM_ENTRIES], uint32 status); void samr_io_r_enum_dom_users(char *desc, SAMR_R_ENUM_DOM_USERS *r_u, prs_struct *ps, int depth); void make_samr_q_query_dispinfo(SAMR_Q_QUERY_DISPINFO *q_e, POLICY_HND *pol, @@ -2203,14 +2203,14 @@ void make_samr_q_create_dom_alias(SAMR_Q_CREATE_DOM_ALIAS *q_u, POLICY_HND *hnd, const char *acct_desc); void samr_io_q_create_dom_alias(char *desc, SAMR_Q_CREATE_DOM_ALIAS *q_u, prs_struct *ps, int depth); void samr_io_r_create_dom_alias(char *desc, SAMR_R_CREATE_DOM_ALIAS *r_u, prs_struct *ps, int depth); -void make_samr_q_unk_aliasmem(SAMR_Q_UNK_ALIASMEM *q_u, POLICY_HND *hnd, - DOM_SID *sid); -void samr_io_q_unk_aliasmem(char *desc, SAMR_Q_UNK_ALIASMEM *q_u, prs_struct *ps, int depth); -void samr_io_r_unk_aliasmem(char *desc, SAMR_R_UNK_ALIASMEM *r_u, prs_struct *ps, int depth); void make_samr_q_add_aliasmem(SAMR_Q_ADD_ALIASMEM *q_u, POLICY_HND *hnd, DOM_SID *sid); void samr_io_q_add_aliasmem(char *desc, SAMR_Q_ADD_ALIASMEM *q_u, prs_struct *ps, int depth); void samr_io_r_add_aliasmem(char *desc, SAMR_R_ADD_ALIASMEM *r_u, prs_struct *ps, int depth); +void make_samr_q_del_aliasmem(SAMR_Q_DEL_ALIASMEM *q_u, POLICY_HND *hnd, + DOM_SID *sid); +void samr_io_q_del_aliasmem(char *desc, SAMR_Q_DEL_ALIASMEM *q_u, prs_struct *ps, int depth); +void samr_io_r_del_aliasmem(char *desc, SAMR_R_DEL_ALIASMEM *r_u, prs_struct *ps, int depth); void make_samr_q_query_aliasmem(SAMR_Q_QUERY_ALIASMEM *q_c, POLICY_HND *hnd); void samr_io_q_query_aliasmem(char *desc, SAMR_Q_QUERY_ALIASMEM *q_u, prs_struct *ps, int depth); void make_samr_r_query_aliasmem(SAMR_R_QUERY_ALIASMEM *r_u, diff --git a/source3/include/rpc_samr.h b/source3/include/rpc_samr.h index 9c4cd4bd8c..620532a012 100644 --- a/source3/include/rpc_samr.h +++ b/source3/include/rpc_samr.h @@ -104,8 +104,8 @@ SamrTestPrivateFunctionsUser #define SAMR_QUERY_ALIASINFO 0x1c #define SAMR_SET_ALIASINFO 0x1d #define SAMR_DELETE_DOM_ALIAS 0x1e -#define SAMR_UNK_ALIAS 0x1f -#define SAMR_ADD_ALIASMEM 0x20 +#define SAMR_ADD_ALIASMEM 0x1f +#define SAMR_DEL_ALIASMEM 0x20 #define SAMR_QUERY_ALIASMEM 0x21 #define SAMR_OPEN_USER 0x22 @@ -480,8 +480,7 @@ typedef struct q_samr_enum_dom_users_info /* SAMR_R_ENUM_DOM_USERS - SAM rids and names */ typedef struct r_samr_enum_dom_users_info { - uint16 total_num_entries; /* number of entries that match without the acb mask */ - uint16 unknown_0; /* same as unknown_0 (enum context?) in request */ + uint32 unknown_0; /* unknown. */ uint32 ptr_entries1; /* actual number of entries to follow, having masked some out */ uint32 num_entries2; @@ -1191,40 +1190,40 @@ typedef struct r_samr_query_aliasmem_info } SAMR_R_QUERY_ALIASMEM; -/* SAMR_Q_UNK_ALIASMEM - don't know! */ -typedef struct q_samr_unk_alias_mem_info +/* SAMR_Q_ADD_ALIASMEM - don't know! */ +typedef struct q_samr_add_alias_mem_info { POLICY_HND alias_pol; /* policy handle */ DOM_SID sid; /* member sid to be "something"ed to do with the alias */ -} SAMR_Q_UNK_ALIASMEM; +} SAMR_Q_ADD_ALIASMEM; -/* SAMR_R_UNK_ALIASMEM - probably an open */ -typedef struct r_samr_unk_alias_mem_info +/* SAMR_R_ADD_ALIASMEM - probably an open */ +typedef struct r_samr_add_alias_mem_info { uint32 status; /* return status */ -} SAMR_R_UNK_ALIASMEM; +} SAMR_R_ADD_ALIASMEM; -/* SAMR_Q_ADD_ALIASMEM - probably an add member */ -typedef struct q_samr_add_alias_mem_info +/* SAMR_Q_DEL_ALIASMEM - add an add alias member */ +typedef struct q_samr_del_alias_mem_info { POLICY_HND alias_pol; /* policy handle */ DOM_SID2 sid; /* member sid to be added to alias */ -} SAMR_Q_ADD_ALIASMEM; +} SAMR_Q_DEL_ALIASMEM; -/* SAMR_R_ADD_ALIASMEM - probably an open */ -typedef struct r_samr_add_alias_mem_info +/* SAMR_R_DEL_ALIASMEM - delete alias member */ +typedef struct r_samr_del_alias_mem_info { uint32 status; /* return status */ -} SAMR_R_ADD_ALIASMEM; +} SAMR_R_DEL_ALIASMEM; |