svn commit: samba r20400 - in branches/SAMBA_4_0/source/librpc/idl: .

metze at samba.org metze at samba.org
Fri Dec 29 07:31:05 GMT 2006


Author: metze
Date: 2006-12-29 07:31:04 +0000 (Fri, 29 Dec 2006)
New Revision: 20400

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20400

Log:
this let ndrdump display the content of a frsrpc_FrsSendCommPkt()
call between 2 w2k3 boxes nicely, but I'm not sure if the amount
of 9 chunks is fixed...

metze
Modified:
   branches/SAMBA_4_0/source/librpc/idl/frsrpc.idl


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/idl/frsrpc.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/frsrpc.idl	2006-12-29 04:15:45 UTC (rev 20399)
+++ branches/SAMBA_4_0/source/librpc/idl/frsrpc.idl	2006-12-29 07:31:04 UTC (rev 20400)
@@ -1,5 +1,7 @@
 #include "idl_types.h"
 
+import "misc.idl";
+
 [
   uuid("f5cc59b4-4264-101a-8c59-08002b2f8426"),
   version(1.1),
@@ -13,6 +15,55 @@
 	/* Function 0x00 */
 	typedef struct {
 		uint32 unknown1;
+	} frsrpc_FrsSendCommPktChunkDataA;
+
+	typedef struct {
+		uint32 unknown1;
+		GUID unknown2;
+		[subcontext(4)] nstring unknown3;
+	} frsrpc_FrsSendCommPktChunkDataB;
+
+	typedef struct {
+		uint32 unknown1;
+		GUID unknown2;
+	} frsrpc_FrsSendCommPktChunkDataC;
+
+	typedef struct {
+		NTTIME time;
+	} frsrpc_FrsSendCommPktChunkDataD;
+
+	typedef [nodiscriminant] union {
+		[default,flag(NDR_REMAINING)] DATA_BLOB blob;
+		[case(1)] frsrpc_FrsSendCommPktChunkDataA A;
+		[case(2)] frsrpc_FrsSendCommPktChunkDataA A;
+		[case(3)] frsrpc_FrsSendCommPktChunkDataB B;
+		[case(4)] frsrpc_FrsSendCommPktChunkDataB B;
+		[case(5)] frsrpc_FrsSendCommPktChunkDataB B;
+		[case(8)] frsrpc_FrsSendCommPktChunkDataB B;
+		[case(6)] frsrpc_FrsSendCommPktChunkDataC C;
+		[case(18)] frsrpc_FrsSendCommPktChunkDataD D;
+		[case(19)] frsrpc_FrsSendCommPktChunkDataA A;
+	} frsrpc_FrsSendCommPktChunkData;
+
+	typedef struct {
+		uint16 type;
+		[subcontext(4),switch_is(type)] frsrpc_FrsSendCommPktChunkData data;
+	} frsrpc_FrsSendCommPktChunk;
+
+	typedef [flag(NDR_NOALIGN)] struct {
+		frsrpc_FrsSendCommPktChunk chunk1;
+		frsrpc_FrsSendCommPktChunk chunk2;
+		frsrpc_FrsSendCommPktChunk chunk3;
+		frsrpc_FrsSendCommPktChunk chunk4;
+		frsrpc_FrsSendCommPktChunk chunk5;
+		frsrpc_FrsSendCommPktChunk chunk6;
+		frsrpc_FrsSendCommPktChunk chunk7;
+		frsrpc_FrsSendCommPktChunk chunk8;
+		frsrpc_FrsSendCommPktChunk chunk9;
+	} frsrpc_FrsSendCommPktChunkCtr;
+
+	typedef struct {
+		uint32 unknown1;
 		uint32 unknown2;
 		uint32 unknown3;
 		uint32 unknown4;
@@ -36,7 +87,7 @@
 		 *	lstring string;
 		 * } ...;
 		 */
-		[subcontext(4),flag(NDR_REMAINING)/*,size_is(unknown5)*/] DATA_BLOB *unknown7;
+		[subcontext(4)/*,size_is(unknown5)*/] frsrpc_FrsSendCommPktChunkCtr *chunks;
 		uint32 unknown8;
 		uint32 unknown9;
 	} frsrpc_FrsSendCommPktReq;



More information about the samba-cvs mailing list