mirror of
https://github.com/samba-team/samba.git
synced 2025-02-23 09:57:40 +03:00
s3: fix various samr callers.
Guenther
This commit is contained in:
parent
911501bb8b
commit
65dc1eeceb
@ -1224,7 +1224,7 @@ WERROR NetGroupEnum_r(struct libnetapi_ctx *ctx,
|
||||
}
|
||||
|
||||
if (r->out.total_entries) {
|
||||
*r->out.total_entries = domain_info->info2.num_groups;
|
||||
*r->out.total_entries = domain_info->general.num_groups;
|
||||
}
|
||||
|
||||
status = rpccli_samr_QueryDisplayInfo2(pipe_cli,
|
||||
|
@ -822,7 +822,7 @@ WERROR NetLocalGroupEnum_r(struct libnetapi_ctx *ctx,
|
||||
}
|
||||
|
||||
if (r->out.total_entries) {
|
||||
*r->out.total_entries += builtin_info->info2.num_aliases;
|
||||
*r->out.total_entries += builtin_info->general.num_aliases;
|
||||
}
|
||||
|
||||
status = rpccli_samr_QueryDomainInfo(pipe_cli, ctx,
|
||||
@ -835,7 +835,7 @@ WERROR NetLocalGroupEnum_r(struct libnetapi_ctx *ctx,
|
||||
}
|
||||
|
||||
if (r->out.total_entries) {
|
||||
*r->out.total_entries += domain_info->info2.num_aliases;
|
||||
*r->out.total_entries += domain_info->general.num_aliases;
|
||||
}
|
||||
|
||||
status = rpccli_samr_EnumDomainAliases(pipe_cli, ctx,
|
||||
|
@ -41,21 +41,21 @@ void init_samr_DomInfo1(struct samr_DomInfo1 *r,
|
||||
inits a structure.
|
||||
********************************************************************/
|
||||
|
||||
void init_samr_DomInfo2(struct samr_DomInfo2 *r,
|
||||
NTTIME force_logoff_time,
|
||||
const char *comment,
|
||||
const char *domain_name,
|
||||
const char *primary,
|
||||
uint64_t sequence_num,
|
||||
uint32_t unknown2,
|
||||
enum samr_Role role,
|
||||
uint32_t unknown3,
|
||||
uint32_t num_users,
|
||||
uint32_t num_groups,
|
||||
uint32_t num_aliases)
|
||||
void init_samr_DomGeneralInformation(struct samr_DomGeneralInformation *r,
|
||||
NTTIME force_logoff_time,
|
||||
const char *oem_information,
|
||||
const char *domain_name,
|
||||
const char *primary,
|
||||
uint64_t sequence_num,
|
||||
uint32_t unknown2,
|
||||
enum samr_Role role,
|
||||
uint32_t unknown3,
|
||||
uint32_t num_users,
|
||||
uint32_t num_groups,
|
||||
uint32_t num_aliases)
|
||||
{
|
||||
r->force_logoff_time = force_logoff_time;
|
||||
init_lsa_String(&r->comment, comment);
|
||||
init_lsa_String(&r->oem_information, oem_information);
|
||||
init_lsa_String(&r->domain_name, domain_name);
|
||||
init_lsa_String(&r->primary, primary);
|
||||
r->sequence_num = sequence_num;
|
||||
@ -81,10 +81,10 @@ void init_samr_DomInfo3(struct samr_DomInfo3 *r,
|
||||
inits a structure.
|
||||
********************************************************************/
|
||||
|
||||
void init_samr_DomInfo4(struct samr_DomInfo4 *r,
|
||||
const char *comment)
|
||||
void init_samr_DomOEMInformation(struct samr_DomOEMInformation *r,
|
||||
const char *oem_information)
|
||||
{
|
||||
init_lsa_String(&r->comment, comment);
|
||||
init_lsa_String(&r->oem_information, oem_information);
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
|
@ -2942,18 +2942,18 @@ static NTSTATUS samr_QueryDomainInfo_internal(const char *fn_name,
|
||||
if (lp_server_role() == ROLE_DOMAIN_BDC)
|
||||
server_role = ROLE_DOMAIN_BDC;
|
||||
|
||||
init_samr_DomInfo2(&dom_info->info2,
|
||||
nt_logout,
|
||||
lp_serverstring(),
|
||||
lp_workgroup(),
|
||||
global_myname(),
|
||||
seq_num,
|
||||
1,
|
||||
server_role,
|
||||
1,
|
||||
num_users,
|
||||
num_groups,
|
||||
num_aliases);
|
||||
init_samr_DomGeneralInformation(&dom_info->general,
|
||||
nt_logout,
|
||||
lp_serverstring(),
|
||||
lp_workgroup(),
|
||||
global_myname(),
|
||||
seq_num,
|
||||
1,
|
||||
server_role,
|
||||
1,
|
||||
num_users,
|
||||
num_groups,
|
||||
num_aliases);
|
||||
break;
|
||||
case 0x03:
|
||||
|
||||
@ -2978,8 +2978,8 @@ static NTSTATUS samr_QueryDomainInfo_internal(const char *fn_name,
|
||||
|
||||
break;
|
||||
case 0x04:
|
||||
init_samr_DomInfo4(&dom_info->info4,
|
||||
lp_serverstring());
|
||||
init_samr_DomOEMInformation(&dom_info->oem,
|
||||
lp_serverstring());
|
||||
break;
|
||||
case 0x05:
|
||||
init_samr_DomInfo5(&dom_info->info5,
|
||||
|
@ -146,24 +146,24 @@ static void display_sam_dom_info_1(struct samr_DomInfo1 *info1)
|
||||
display_time(info1->min_password_age));
|
||||
}
|
||||
|
||||
static void display_sam_dom_info_2(struct samr_DomInfo2 *info2)
|
||||
static void display_sam_dom_info_2(struct samr_DomGeneralInformation *general)
|
||||
{
|
||||
printf("Domain:\t\t%s\n", info2->domain_name.string);
|
||||
printf("Server:\t\t%s\n", info2->primary.string);
|
||||
printf("Comment:\t%s\n", info2->comment.string);
|
||||
printf("Domain:\t\t%s\n", general->domain_name.string);
|
||||
printf("Server:\t\t%s\n", general->primary.string);
|
||||
printf("Comment:\t%s\n", general->oem_information.string);
|
||||
|
||||
printf("Total Users:\t%d\n", info2->num_users);
|
||||
printf("Total Groups:\t%d\n", info2->num_groups);
|
||||
printf("Total Aliases:\t%d\n", info2->num_aliases);
|
||||
printf("Total Users:\t%d\n", general->num_users);
|
||||
printf("Total Groups:\t%d\n", general->num_groups);
|
||||
printf("Total Aliases:\t%d\n", general->num_aliases);
|
||||
|
||||
printf("Sequence No:\t%llu\n", (unsigned long long)info2->sequence_num);
|
||||
printf("Sequence No:\t%llu\n", (unsigned long long)general->sequence_num);
|
||||
|
||||
printf("Force Logoff:\t%d\n",
|
||||
(int)nt_time_to_unix_abs(&info2->force_logoff_time));
|
||||
(int)nt_time_to_unix_abs(&general->force_logoff_time));
|
||||
|
||||
printf("Unknown 2:\t0x%x\n", info2->unknown2);
|
||||
printf("Server Role:\t%s\n", server_role_str(info2->role));
|
||||
printf("Unknown 3:\t0x%x\n", info2->unknown3);
|
||||
printf("Unknown 2:\t0x%x\n", general->unknown2);
|
||||
printf("Server Role:\t%s\n", server_role_str(general->role));
|
||||
printf("Unknown 3:\t0x%x\n", general->unknown3);
|
||||
}
|
||||
|
||||
static void display_sam_dom_info_3(struct samr_DomInfo3 *info3)
|
||||
@ -172,9 +172,9 @@ static void display_sam_dom_info_3(struct samr_DomInfo3 *info3)
|
||||
(int)nt_time_to_unix_abs(&info3->force_logoff_time));
|
||||
}
|
||||
|
||||
static void display_sam_dom_info_4(struct samr_DomInfo4 *info4)
|
||||
static void display_sam_dom_info_4(struct samr_DomOEMInformation *oem)
|
||||
{
|
||||
printf("Comment:\t%s\n", info4->comment.string);
|
||||
printf("Comment:\t%s\n", oem->oem_information.string);
|
||||
}
|
||||
|
||||
static void display_sam_dom_info_5(struct samr_DomInfo5 *info5)
|
||||
@ -1607,13 +1607,13 @@ static NTSTATUS cmd_samr_query_dominfo(struct rpc_pipe_client *cli,
|
||||
display_sam_dom_info_1(&info->info1);
|
||||
break;
|
||||
case 2:
|
||||
display_sam_dom_info_2(&info->info2);
|
||||
display_sam_dom_info_2(&info->general);
|
||||
break;
|
||||
case 3:
|
||||
display_sam_dom_info_3(&info->info3);
|
||||
break;
|
||||
case 4:
|
||||
display_sam_dom_info_4(&info->info4);
|
||||
display_sam_dom_info_4(&info->oem);
|
||||
break;
|
||||
case 5:
|
||||
display_sam_dom_info_5(&info->info5);
|
||||
|
@ -504,13 +504,13 @@ NTSTATUS rpc_info_internals(struct net_context *c,
|
||||
2,
|
||||
&info);
|
||||
if (NT_STATUS_IS_OK(result)) {
|
||||
d_printf("Domain Name: %s\n", info->info2.domain_name.string);
|
||||
d_printf("Domain Name: %s\n", info->general.domain_name.string);
|
||||
d_printf("Domain SID: %s\n", sid_str);
|
||||
d_printf("Sequence number: %llu\n",
|
||||
(unsigned long long)info->info2.sequence_num);
|
||||
d_printf("Num users: %u\n", info->info2.num_users);
|
||||
d_printf("Num domain groups: %u\n", info->info2.num_groups);
|
||||
d_printf("Num local groups: %u\n", info->info2.num_aliases);
|
||||
(unsigned long long)info->general.sequence_num);
|
||||
d_printf("Num users: %u\n", info->general.num_users);
|
||||
d_printf("Num domain groups: %u\n", info->general.num_groups);
|
||||
d_printf("Num local groups: %u\n", info->general.num_aliases);
|
||||
}
|
||||
|
||||
done:
|
||||
|
@ -1018,7 +1018,7 @@ static NTSTATUS sequence_number(struct winbindd_domain *domain, uint32 *seq)
|
||||
&info);
|
||||
|
||||
if (NT_STATUS_IS_OK(result)) {
|
||||
*seq = info->info2.sequence_num;
|
||||
*seq = info->general.sequence_num;
|
||||
got_seq_num = True;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user