summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>2000-03-08 20:49:08 +0000
committerLuke Leighton <lkcl@samba.org>2000-03-08 20:49:08 +0000
commit754748434cdf141732bd23723e4452e15e7ef7d2 (patch)
tree6cc5099a3ee7d400510dd50c97fb1722cf9daf5a
parentb2d3ac3d72f58bb03ab31f49b9c09b362dc91369 (diff)
downloadsamba-754748434cdf141732bd23723e4452e15e7ef7d2.tar.gz
samba-754748434cdf141732bd23723e4452e15e7ef7d2.tar.xz
samba-754748434cdf141732bd23723e4452e15e7ef7d2.zip
found two bugs in lsalookup* - sid_name_use type is uint16 - by bouncing
off sun's cascade box. HOORAY! good suggestion, elrond.
-rw-r--r--source/include/proto.h2
-rw-r--r--source/include/rpc_lsa.h2
-rw-r--r--source/include/rpc_misc.h2
-rw-r--r--source/include/rpc_parse_proto.h4
-rw-r--r--source/include/winbindd_proto.h2
-rw-r--r--source/rpc_parse/parse_lsa.c9
-rw-r--r--source/rpc_parse/parse_misc.c4
7 files changed, 13 insertions, 12 deletions
diff --git a/source/include/proto.h b/source/include/proto.h
index e2bfc7159a2..3b6c2dd4fd8 100644
--- a/source/include/proto.h
+++ b/source/include/proto.h
@@ -3233,7 +3233,7 @@ BOOL make_buf_string2(STRING2 *str, uint32 *ptr, const char *buf);
BOOL smb_io_string2(char *desc, STRING2 *str2, uint32 buffer, prs_struct *ps, int depth);
BOOL make_unistr2(UNISTR2 *str, const char *buf, int len);
BOOL smb_io_unistr2(char *desc, UNISTR2 *uni2, uint32 buffer, prs_struct *ps, int depth);
-BOOL make_dom_rid2(DOM_RID2 *rid2, uint32 rid, uint8 type, uint32 idx);
+BOOL make_dom_rid2(DOM_RID2 *rid2, uint32 rid, uint16 type, uint32 idx);
BOOL smb_io_dom_rid2(char *desc, DOM_RID2 *rid2, prs_struct *ps, int depth);
BOOL make_dom_rid3(DOM_RID3 *rid3, uint32 rid, uint8 type);
BOOL smb_io_dom_rid3(char *desc, DOM_RID3 *rid3, prs_struct *ps, int depth);
diff --git a/source/include/rpc_lsa.h b/source/include/rpc_lsa.h
index 090e2254017..3d6ae0289af 100644
--- a/source/include/rpc_lsa.h
+++ b/source/include/rpc_lsa.h
@@ -402,7 +402,7 @@ typedef struct dom_ref_info
/* LSA_TRANS_NAME - translated name */
typedef struct lsa_trans_name_info
{
- uint32 sid_name_use; /* value is 5 for a well-known group; 2 for a domain group; 1 for a user... */
+ uint16 sid_name_use; /* value is 5 for a well-known group; 2 for a domain group; 1 for a user... */
UNIHDR hdr_name;
uint32 domain_idx; /* index into DOM_R_REF array of SIDs */
diff --git a/source/include/rpc_misc.h b/source/include/rpc_misc.h
index 8077a0aadb8..93ce1ed4f63 100644
--- a/source/include/rpc_misc.h
+++ b/source/include/rpc_misc.h
@@ -333,7 +333,7 @@ typedef struct unistr3_info
/* DOM_RID2 - domain RID structure for ntlsa pipe */
typedef struct domrid2_info
{
- uint8 type; /* value is SID_NAME_USE enum */
+ uint16 type; /* value is SID_NAME_USE enum */
uint32 rid;
uint32 rid_idx; /* referenced domain index */
diff --git a/source/include/rpc_parse_proto.h b/source/include/rpc_parse_proto.h
index 5d00cd88140..1aac58e4023 100644
--- a/source/include/rpc_parse_proto.h
+++ b/source/include/rpc_parse_proto.h
@@ -67,7 +67,7 @@ BOOL eventlog_io_r_readeventlog(char *desc, EVENTLOG_R_READEVENTLOG *r_u, prs_st
/*The following definitions come from rpc_parse/parse_lsa.c */
BOOL make_lsa_trans_name(LSA_TRANS_NAME * trn, UNISTR2 * uni_name,
- uint32 sid_name_use, char *name, uint32 idx);
+ uint16 sid_name_use, char *name, uint32 idx);
int make_dom_ref_uni(DOM_R_REF * ref, const UNISTR2 * uni_domname,
const DOM_SID * dom_sid);
int make_dom_ref(DOM_R_REF * ref, const char *domname,
@@ -208,7 +208,7 @@ BOOL make_buf_string2(STRING2 *str, uint32 *ptr, const char *buf);
BOOL smb_io_string2(char *desc, STRING2 *str2, uint32 buffer, prs_struct *ps, int depth);
BOOL make_unistr2(UNISTR2 *str, const char *buf, int len);
BOOL smb_io_unistr2(char *desc, UNISTR2 *uni2, uint32 buffer, prs_struct *ps, int depth);
-BOOL make_dom_rid2(DOM_RID2 *rid2, uint32 rid, uint8 type, uint32 idx);
+BOOL make_dom_rid2(DOM_RID2 *rid2, uint32 rid, uint16 type, uint32 idx);
BOOL smb_io_dom_rid2(char *desc, DOM_RID2 *rid2, prs_struct *ps, int depth);
BOOL make_dom_rid3(DOM_RID3 *rid3, uint32 rid, uint8 type);
BOOL smb_io_dom_rid3(char *desc, DOM_RID3 *rid3, prs_struct *ps, int depth);
diff --git a/source/include/winbindd_proto.h b/source/include/winbindd_proto.h
index 9cf7665cabb..a79c8b2e598 100644
--- a/source/include/winbindd_proto.h
+++ b/source/include/winbindd_proto.h
@@ -1679,7 +1679,7 @@ BOOL create_user_creds( prs_struct *ps,
/*The following definitions come from rpc_parse/parse_lsa.c */
BOOL make_lsa_trans_name(LSA_TRANS_NAME * trn, UNISTR2 * uni_name,
- uint32 sid_name_use, char *name, uint32 idx);
+ uint16 sid_name_use, char *name, uint32 idx);
int make_dom_ref_uni(DOM_R_REF * ref, const UNISTR2 * uni_domname,
const DOM_SID * dom_sid);
int make_dom_ref(DOM_R_REF * ref, const char *domname,
diff --git a/source/rpc_parse/parse_lsa.c b/source/rpc_parse/parse_lsa.c
index f93b33fc1a7..d9cc608d0b4 100644
--- a/source/rpc_parse/parse_lsa.c
+++ b/source/rpc_parse/parse_lsa.c
@@ -31,7 +31,7 @@ extern int DEBUGLEVEL;
creates a LSA_TRANS_NAME structure.
********************************************************************/
BOOL make_lsa_trans_name(LSA_TRANS_NAME * trn, UNISTR2 * uni_name,
- uint32 sid_name_use, char *name, uint32 idx)
+ uint16 sid_name_use, char *name, uint32 idx)
{
int len_name = strlen(name);
@@ -57,9 +57,10 @@ static BOOL lsa_io_trans_name(char *desc, LSA_TRANS_NAME * trn,
prs_align(ps);
- prs_uint32("sid_name_use", ps, depth, &(trn->sid_name_use));
- smb_io_unihdr("hdr_name", &(trn->hdr_name), ps, depth);
- prs_uint32("domain_idx ", ps, depth, &(trn->domain_idx));
+ prs_uint16("sid_name_use", ps, depth, &trn->sid_name_use);
+ prs_align(ps);
+ smb_io_unihdr("hdr_name", &trn->hdr_name, ps, depth);
+ prs_uint32("domain_idx ", ps, depth, &trn->domain_idx);
return True;
}
diff --git a/source/rpc_parse/parse_misc.c b/source/rpc_parse/parse_misc.c
index 4007147a9a0..0966262120a 100644
--- a/source/rpc_parse/parse_misc.c
+++ b/source/rpc_parse/parse_misc.c
@@ -937,7 +937,7 @@ BOOL smb_io_unistr2(char *desc, UNISTR2 *uni2, uint32 buffer, prs_struct *ps, i
/*******************************************************************
creates a DOM_RID2 structure.
********************************************************************/
-BOOL make_dom_rid2(DOM_RID2 *rid2, uint32 rid, uint8 type, uint32 idx)
+BOOL make_dom_rid2(DOM_RID2 *rid2, uint32 rid, uint16 type, uint32 idx)
{
rid2->type = type;
rid2->rid = rid;
@@ -958,7 +958,7 @@ BOOL smb_io_dom_rid2(char *desc, DOM_RID2 *rid2, prs_struct *ps, int depth)
prs_align(ps);
- prs_uint8("type ", ps, depth, &(rid2->type));
+ prs_uint16("type ", ps, depth, &(rid2->type));
prs_align(ps);
prs_uint32("rid ", ps, depth, &(rid2->rid ));
prs_uint32("rid_idx", ps, depth, &(rid2->rid_idx ));