diff options
-rw-r--r-- | source3/include/rpc_samr.h | 3 | ||||
-rw-r--r-- | source3/rpc_parse/parse_samr.c | 6 |
2 files changed, 6 insertions, 3 deletions
diff --git a/source3/include/rpc_samr.h b/source3/include/rpc_samr.h index 657058d940..1fd48f8020 100644 --- a/source3/include/rpc_samr.h +++ b/source3/include/rpc_samr.h @@ -732,11 +732,12 @@ typedef struct q_samr_query_group_info typedef struct samr_group_info1 { UNIHDR hdr_acct_name; - UNIHDR hdr_acct_desc; uint32 unknown_1; /* 0x0000 0003 - number of group members? */ uint32 unknown_2; /* 0x0000 0001 - number of group members? */ + UNIHDR hdr_acct_desc; + UNISTR2 uni_acct_name; UNISTR2 uni_acct_desc; diff --git a/source3/rpc_parse/parse_samr.c b/source3/rpc_parse/parse_samr.c index 5a9b7660ab..e1f4d01d9b 100644 --- a/source3/rpc_parse/parse_samr.c +++ b/source3/rpc_parse/parse_samr.c @@ -1384,11 +1384,12 @@ void make_samr_group_info1(GROUP_INFO1 *gr1, DEBUG(5,("make_samr_group_info1\n")); make_uni_hdr(&(gr1->hdr_acct_name), acct_len , acct_len, acct_name ? 1 : 0); - make_uni_hdr(&(gr1->hdr_acct_desc), desc_len , desc_len, acct_desc ? 1 : 0); gr1->unknown_1 = 0x3; gr1->unknown_2 = 0x3; + make_uni_hdr(&(gr1->hdr_acct_desc), desc_len , desc_len, acct_desc ? 1 : 0); + make_unistr2(&(gr1->uni_acct_name), acct_name, acct_len); make_unistr2(&(gr1->uni_acct_desc), acct_desc, desc_len); } @@ -1407,11 +1408,12 @@ void samr_io_group_info1(char *desc, GROUP_INFO1 *gr1, prs_struct *ps, int dept prs_align(ps); smb_io_unihdr ("hdr_acct_name", &(gr1->hdr_acct_name) , ps, depth); - smb_io_unihdr ("hdr_acct_desc", &(gr1->hdr_acct_desc) , ps, depth); prs_uint32("unknown_1", ps, depth, &(gr1->unknown_1)); prs_uint32("unknown_2", ps, depth, &(gr1->unknown_2)); + smb_io_unihdr ("hdr_acct_desc", &(gr1->hdr_acct_desc) , ps, depth); + smb_io_unistr2("uni_acct_name", &(gr1->uni_acct_name), gr1->hdr_acct_name.buffer, ps, depth); prs_align(ps); |