svn commit: samba r13386 - in branches/SAMBA_3_0/source: include
rpc_parse
jra at samba.org
jra at samba.org
Wed Feb 8 04:46:44 GMT 2006
Author: jra
Date: 2006-02-08 04:46:43 +0000 (Wed, 08 Feb 2006)
New Revision: 13386
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=13386
Log:
Fix parsing of SAMR_Q_CONNECT_ANON.
Jeremy.
Modified:
branches/SAMBA_3_0/source/include/rpc_samr.h
branches/SAMBA_3_0/source/rpc_parse/parse_samr.c
Changeset:
Modified: branches/SAMBA_3_0/source/include/rpc_samr.h
===================================================================
--- branches/SAMBA_3_0/source/include/rpc_samr.h 2006-02-08 04:46:40 UTC (rev 13385)
+++ branches/SAMBA_3_0/source/include/rpc_samr.h 2006-02-08 04:46:43 UTC (rev 13386)
@@ -1677,13 +1677,10 @@
/* SAMR_Q_CONNECT_ANON - probably an open */
-typedef struct q_samr_connect_anon_info
-{
+typedef struct q_samr_connect_anon_info {
uint32 ptr; /* ptr? */
- uint16 unknown_0; /* 0x005c */
- uint16 unknown_1; /* 0x0001 */
+ uint16 unknown_0; /* Only pushed if ptr is non-zero. */
uint32 access_mask;
-
} SAMR_Q_CONNECT_ANON;
/* SAMR_R_CONNECT_ANON - probably an open */
Modified: branches/SAMBA_3_0/source/rpc_parse/parse_samr.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_parse/parse_samr.c 2006-02-08 04:46:40 UTC (rev 13385)
+++ branches/SAMBA_3_0/source/rpc_parse/parse_samr.c 2006-02-08 04:46:43 UTC (rev 13386)
@@ -6965,8 +6965,7 @@
q_u->ptr = 1;
q_u->unknown_0 = 0x5c; /* server name (?!!) */
- q_u->unknown_1 = 0x01;
- q_u->access_mask = 0x20;
+ q_u->access_mask = MAXIMUM_ALLOWED_ACCESS;
}
/*******************************************************************
@@ -6987,10 +6986,12 @@
if(!prs_uint32("ptr ", ps, depth, &q_u->ptr))
return False;
- if(!prs_uint16("unknown_0", ps, depth, &q_u->unknown_0))
+ if (q_u->ptr) {
+ if(!prs_uint16("unknown_0", ps, depth, &q_u->unknown_0))
+ return False;
+ }
+ if(!prs_align(ps))
return False;
- if(!prs_uint16("unknown_1", ps, depth, &q_u->unknown_1))
- return False;
if(!prs_uint32("access_mask", ps, depth, &q_u->access_mask))
return False;
More information about the samba-cvs
mailing list