svn commit: samba r2781 - in branches/SAMBA_4_0/source: librpc/idl scripting/swig/torture

tpot at samba.org tpot at samba.org
Sat Oct 2 11:26:58 GMT 2004


Author: tpot
Date: 2004-10-02 11:26:58 +0000 (Sat, 02 Oct 2004)
New Revision: 2781

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source&rev=2781&nolog=1

Log:
Got winreg_EnumValue() working.  Check it in so I don't break it trying
to clean it up.  (-:

Modified:
   branches/SAMBA_4_0/source/librpc/idl/winreg.idl
   branches/SAMBA_4_0/source/scripting/swig/torture/winreg.py


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/idl/winreg.idl
===================================================================
--- branches/SAMBA_4_0/source/librpc/idl/winreg.idl	2004-10-02 11:22:20 UTC (rev 2780)
+++ branches/SAMBA_4_0/source/librpc/idl/winreg.idl	2004-10-02 11:26:58 UTC (rev 2781)
@@ -144,15 +144,30 @@
 		uint8 buffer[len];
 	} winreg_Uint8buf;
 
+  typedef struct {
+    uint32 max_len;
+    uint32 offset;
+    DATA_BLOB buffer;
+  } foo2;
+
+  typedef struct {
+    uint16 len;
+    uint16 max_len;
+    foo2 *buffer;
+  } foo1;
+
 	/******************/
 	/* Function: 0x0a */
 	WERROR winreg_EnumValue(
 		[in,ref] policy_handle *handle,
 		[in] uint32 enum_index,
-		[out,ref] winreg_EnumValueName *name,
+		[in,out] foo1 foo,
+		/*		[out,ref] winreg_EnumValueName *name, */
 		[in,out] uint32 *type,
-		[in,out] winreg_Uint8buf *value,
-		[in,out] uint32 *returned_len
+		[in,out] foo2 *foo2,
+		/* [in,out] winreg_Uint8buf *value, */
+		[in,out] uint32 *value1,
+		[in,out] uint32 *value2
 	);
 
 	/******************/

Modified: branches/SAMBA_4_0/source/scripting/swig/torture/winreg.py
===================================================================
--- branches/SAMBA_4_0/source/scripting/swig/torture/winreg.py	2004-10-02 11:22:20 UTC (rev 2780)
+++ branches/SAMBA_4_0/source/scripting/swig/torture/winreg.py	2004-10-02 11:26:58 UTC (rev 2781)
@@ -74,30 +74,40 @@
 
     # Enumerate values
 
-    return
-
     r = {}
     r['handle'] = handle
-    r['name'] = {}
-    r['name']['len'] = 0
-    r['name']['max_len'] = 0
-    r['name']['name'] = {}
-    r['name']['name']['max_len'] = 0
-    r['name']['name']['offset'] = 0
-    r['name']['name']['len'] = 0
-    r['name']['name']['buffer'] = None
+
+    keyinfo['max_valnamelen'] = 18
+    keyinfo['max_valbufsize'] = 0x31f5
+
+    r['foo'] = {}
+    r['foo']['len'] = 0
+    r['foo']['max_len'] = keyinfo['max_valnamelen'] * 2
+    r['foo']['buffer'] = {}
+    r['foo']['buffer']['max_len'] = keyinfo['max_valnamelen']
+    r['foo']['buffer']['offset'] = 0
+    r['foo']['buffer']['len'] = 0
+    r['foo']['buffer']['buffer'] = ''
     r['type'] = 0
     r['value'] = {}
-    r['value']['max_len'] = 0
+    r['value']['max_len'] = keyinfo['max_valbufsize']
     r['value']['offset'] = 0
     r['value']['len'] = 0
     r['value']['buffer'] = []
     r['returned_len'] = 0
+    r['foo2'] = {}
+    r['foo2']['max_len'] = keyinfo['max_valbufsize']
+    r['foo2']['offset'] = 0
+    r['foo2']['len'] = 0
+    r['foo2']['buffer'] = ''
+    r['value1'] = keyinfo['max_valbufsize']
+    r['value2'] = 0
     
     for i in range(0, keyinfo['num_values']):
 
         r['enum_index'] = i
-        
+
+        print keyinfo
         print dcerpc.winreg_EnumValue(pipe, r)
 
         sys.exit(1)        



More information about the samba-cvs mailing list