svn commit: samba r6545 - in branches/SAMBA_4_0/source/build/pidl: .

tridge at samba.org tridge at samba.org
Sun May 1 08:52:41 GMT 2005


Author: tridge
Date: 2005-05-01 08:52:41 +0000 (Sun, 01 May 2005)
New Revision: 6545

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

Log:
some notes and experiments on ref ptrs, testing with midl


Added:
   branches/SAMBA_4_0/source/build/pidl/ref_notes.txt


Changeset:
Added: branches/SAMBA_4_0/source/build/pidl/ref_notes.txt
===================================================================
--- branches/SAMBA_4_0/source/build/pidl/ref_notes.txt	2005-05-01 08:05:17 UTC (rev 6544)
+++ branches/SAMBA_4_0/source/build/pidl/ref_notes.txt	2005-05-01 08:52:41 UTC (rev 6545)
@@ -0,0 +1,220 @@
+some experiments with ref ptrs
+
+
+
+	typedef struct {
+		short x;
+	} xstruct;
+
+	uint16 echo_TestRef([in] xstruct foo);
+
+	short v = 13;
+	xstruct r;
+	r.x = v;
+	echo_TestRef(r);
+
+	[0D 00]
+
+----------------------------------------------------
+	typedef struct {
+		short *x;
+	} xstruct;
+
+	uint16 echo_TestRef([in] xstruct foo);
+
+	short v = 13;
+	xstruct r;
+	r.x = &v;
+	echo_TestRef(r);
+
+	[PP PP PP PP 0D 00]
+
+
+	xstruct r;
+	r.x = NULL;
+	echo_TestRef(r);
+
+	[00 00 00 00]
+
+----------------------------------------------------
+	typedef struct {
+		[ref] short *x;
+	} xstruct;
+
+	uint16 echo_TestRef([in] xstruct foo);
+
+	short v = 13;
+	xstruct r;
+	r.x = &v;
+	echo_TestRef(r);
+
+	[XX XX XX XX 0D 00]
+
+
+	xstruct r;
+	r.x = NULL;
+	echo_TestRef(r);
+
+	[client runtime error 0x6f4]
+
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	uint16 echo_TestRef([in] xstruct *foo);
+
+	short v = 13;
+	xstruct r;
+	r.x = v;
+	echo_TestRef(&r);
+
+	[0D 00]
+
+
+	echo_TestRef(NULL);
+
+	[client runtime error 0x6f4]
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	uint16 echo_TestRef([in,ref] xstruct *foo);
+
+	short v = 13;
+	xstruct r;
+	r.x = v;
+	echo_TestRef(&r);
+
+	[0D 00]
+
+
+	echo_TestRef(NULL);
+
+	[client runtime error 0x6f4]
+
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	uint16 echo_TestRef([in,unique] xstruct *foo);
+
+	short v = 13;
+	xstruct r;
+	r.x = v;
+	echo_TestRef(&r);
+
+	[PP PP PP PP 0D 00]
+
+
+	echo_TestRef(NULL);
+
+	[00 00 00 00]
+
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	uint16 echo_TestRef([out] xstruct foo);
+
+        [idl compiler error]
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	void echo_TestRef([out] xstruct *foo);
+
+	xstruct r;
+	echo_TestRef(&r);
+	r.x -> 13;
+
+	[0D 00]
+
+
+	echo_TestRef(NULL);
+
+	[client runtime error 0x6f4]
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	void echo_TestRef([out,ref] xstruct *foo);
+
+	xstruct r;
+	echo_TestRef(&r);
+	r.x -> 13;
+
+	[0D 00]
+
+
+	echo_TestRef(NULL);
+
+	[client runtime error 0x6f4]
+
+----------------------------------------------------
+	typedef struct {
+		short x;
+	} xstruct;
+
+	void echo_TestRef([out,unique] xstruct *foo);
+
+        [idl compiler error]
+
+
+----------------------------------------------------
+	void echo_TestRef([in] short **foo);
+
+	short v = 13;
+	short *pv = &v;
+
+	echo_TestRef(&pv);
+
+	[PP PP PP PP 0D 00]
+
+
+	short *pv = NULL;
+
+	echo_TestRef(&pv);
+
+	[00 00 00 00]
+
+
+	echo_TestRef(NULL);
+	
+	[client runtime error 0x6f4]
+
+
+----------------------------------------------------
+	void echo_TestRef([in,ref] short **foo);
+
+	short v = 13;
+	short *pv = &v;
+
+	echo_TestRef(&pv);
+
+	[PP PP PP PP 0D 00]
+
+
+	short *pv = NULL;
+
+	echo_TestRef(&pv);
+
+	[00 00 00 00]
+
+
+	echo_TestRef(NULL);
+	
+	[client runtime error 0x6f4]
+
+



More information about the samba-cvs mailing list