1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-04 08:22:08 +03:00

Jim McDonough's parse patches for Win9x get SD calls.

Jeremy.
This commit is contained in:
Jeremy Allison
-
parent a600c96e59
commit bc366f3153
3 changed files with 113 additions and 0 deletions

View File

@ -2560,3 +2560,90 @@ BOOL srv_io_r_net_name_validate(char *desc, SRV_R_NET_NAME_VALIDATE *r_n, prs_st
return True;
}
/*******************************************************************
Reads or writes a structure.
********************************************************************/
BOOL srv_io_q_net_file_query_secdesc(char *desc, SRV_Q_NET_FILE_QUERY_SECDESC *q_n, prs_struct *ps, int depth)
{
if (q_n == NULL)
return False;
prs_debug(ps, depth, desc, "srv_io_q_net_file_query_secdesc");
depth++;
if(!prs_align(ps))
return False;
if(!prs_uint32("ptr_srv_name", ps, depth, &q_n->ptr_srv_name))
return False;
if(!smb_io_unistr2("", &q_n->uni_srv_name, True, ps, depth))
return False;
if(!prs_align(ps))
return False;
if(!prs_uint32("ptr_qual_name", ps, depth, &q_n->ptr_qual_name))
return False;
if(!smb_io_unistr2("", &q_n->uni_qual_name, True, ps, depth))
return False;
if(!prs_align(ps))
return False;
if(!smb_io_unistr2("", &q_n->uni_file_name, True, ps, depth))
return False;
if(!prs_uint32("unknown1", ps, depth, &q_n->unknown1))
return False;
if(!prs_uint32("unknown2", ps, depth, &q_n->unknown2))
return False;
if(!prs_uint32("unknown3", ps, depth, &q_n->unknown3))
return False;
return True;
}
/*******************************************************************
Reads or writes a structure.
********************************************************************/
BOOL srv_io_r_net_file_query_secdesc(char *desc, SRV_R_NET_FILE_QUERY_SECDESC *r_n, prs_struct *ps, int depth)
{
if (r_n == NULL)
return False;
prs_debug(ps, depth, desc, "srv_io_r_net_file_query_secdesc");
depth++;
if(!prs_align(ps))
return False;
if(!prs_uint32("ptr_response", ps, depth, &r_n->ptr_response))
return False;
if(!prs_uint32("size_response", ps, depth, &r_n->size_response))
return False;
if(!prs_uint32("ptr_secdesc", ps, depth, &r_n->ptr_secdesc))
return False;
if(!prs_uint32("size_secdesc", ps, depth, &r_n->size_secdesc))
return False;
if(!sec_io_desc("sec_desc", &r_n->sec_desc, ps, depth))
return False;
if(!prs_align(ps))
return False;
if(!prs_uint32("status", ps, depth, &r_n->status))
return False;
return True;
}