mirror of
https://github.com/samba-team/samba.git
synced 2025-08-03 04:22:09 +03:00
@ -5,8 +5,10 @@
|
||||
* Copyright (C) Luke Kenneth Casson Leighton 1996-2000,
|
||||
* Copyright (C) Paul Ashton 1997-2000,
|
||||
* Copyright (C) Elrond 2000,
|
||||
* Copyright (C) Jeremy Allison 2001
|
||||
* Copyright (C) Jean Fran<61>ois Micouleau 1998-2001.
|
||||
* Copyright (C) Jeremy Allison 2001,
|
||||
* Copyright (C) Jean Fran<61>ois Micouleau 1998-2001,
|
||||
* Copyright (C) Anthony Liguori 2002,
|
||||
* Copyright (C) Jim McDonough 2002.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
@ -5067,7 +5069,7 @@ BOOL samr_io_r_create_user(char *desc, SAMR_R_CREATE_USER * r_u,
|
||||
if(!smb_io_pol_hnd("user_pol", &r_u->user_pol, ps, depth))
|
||||
return False;
|
||||
|
||||
if(!prs_uint32("unknown_0", ps, depth, &r_u->unknown_0))
|
||||
if(!prs_uint32("access_granted", ps, depth, &r_u->access_granted))
|
||||
return False;
|
||||
if(!prs_uint32("user_rid ", ps, depth, &r_u->user_rid))
|
||||
return False;
|
||||
@ -5945,7 +5947,7 @@ NTSTATUS init_sam_user_info21A(SAM_USER_INFO_21 *usr, SAM_ACCOUNT *pw, DOM_SID *
|
||||
const char* user_name = pdb_get_username(pw);
|
||||
const char* full_name = pdb_get_fullname(pw);
|
||||
const char* home_dir = pdb_get_homedir(pw);
|
||||
const char* dir_drive = pdb_get_dirdrive(pw);
|
||||
const char* dir_drive = pdb_get_dir_drive(pw);
|
||||
const char* logon_script = pdb_get_logon_script(pw);
|
||||
const char* profile_path = pdb_get_profile_path(pw);
|
||||
const char* description = pdb_get_acct_desc(pw);
|
||||
@ -6716,6 +6718,84 @@ BOOL samr_io_r_connect(char *desc, SAMR_R_CONNECT * r_u,
|
||||
return True;
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
inits a SAMR_Q_CONNECT4 structure.
|
||||
********************************************************************/
|
||||
|
||||
void init_samr_q_connect4(SAMR_Q_CONNECT4 * q_u,
|
||||
char *srv_name, uint32 access_mask)
|
||||
{
|
||||
int len_srv_name = strlen(srv_name);
|
||||
|
||||
DEBUG(5, ("init_samr_q_connect\n"));
|
||||
|
||||
/* make PDC server name \\server */
|
||||
q_u->ptr_srv_name = len_srv_name > 0 ? 1 : 0;
|
||||
init_unistr2(&q_u->uni_srv_name, srv_name, len_srv_name + 1);
|
||||
|
||||
/* Only value we've seen, possibly an address type ? */
|
||||
q_u->unk_0 = 2;
|
||||
|
||||
/* example values: 0x0000 0002 */
|
||||
q_u->access_mask = access_mask;
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
reads or writes a structure.
|
||||
********************************************************************/
|
||||
|
||||
BOOL samr_io_q_connect4(char *desc, SAMR_Q_CONNECT4 * q_u,
|
||||
prs_struct *ps, int depth)
|
||||
{
|
||||
if (q_u == NULL)
|
||||
return False;
|
||||
|
||||
prs_debug(ps, depth, desc, "samr_io_q_connect4");
|
||||
depth++;
|
||||
|
||||
if(!prs_align(ps))
|
||||
return False;
|
||||
|
||||
if(!prs_uint32("ptr_srv_name", ps, depth, &q_u->ptr_srv_name))
|
||||
return False;
|
||||
if(!smb_io_unistr2("", &q_u->uni_srv_name, q_u->ptr_srv_name, ps, depth))
|
||||
return False;
|
||||
|
||||
if(!prs_align(ps))
|
||||
return False;
|
||||
if(!prs_uint32("unk_0", ps, depth, &q_u->unk_0))
|
||||
return False;
|
||||
if(!prs_uint32("access_mask", ps, depth, &q_u->access_mask))
|
||||
return False;
|
||||
|
||||
return True;
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
reads or writes a structure.
|
||||
********************************************************************/
|
||||
|
||||
BOOL samr_io_r_connect4(char *desc, SAMR_R_CONNECT4 * r_u,
|
||||
prs_struct *ps, int depth)
|
||||
{
|
||||
if (r_u == NULL)
|
||||
return False;
|
||||
|
||||
prs_debug(ps, depth, desc, "samr_io_r_connect4");
|
||||
depth++;
|
||||
|
||||
if(!prs_align(ps))
|
||||
return False;
|
||||
|
||||
if(!smb_io_pol_hnd("connect_pol", &r_u->connect_pol, ps, depth))
|
||||
return False;
|
||||
|
||||
if(!prs_ntstatus("status", ps, depth, &r_u->status))
|
||||
return False;
|
||||
|
||||
return True;
|
||||
}
|
||||
|
||||
/*******************************************************************
|
||||
inits a SAMR_Q_CONNECT_ANON structure.
|
||||
********************************************************************/
|
||||
|
Reference in New Issue
Block a user