svn commit: samba r17256 - in branches/SAMBA_4_0/source/torture/rpc: .

metze at samba.org metze at samba.org
Wed Jul 26 12:25:16 GMT 2006


Author: metze
Date: 2006-07-26 12:25:16 +0000 (Wed, 26 Jul 2006)
New Revision: 17256

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

Log:
fix 2 crash bugs, which are introduced by making parameters
ref pointers!

I'm sure there're more places and more care is needed when idl files
are changed. Hopefully testing against windows in the build farm
find such bugs in future...

Why is in the client library this no more possible:

NTSTATUS foo([in,out,ref] uint8 *foo);

and then just

r.in.foo = &foo;
status = dcerpc_foo(p, mem_ctx, &r);

and r.out.foo will set to r.in.foo via pidl magic,
that worked some time ago...

metze
Modified:
   branches/SAMBA_4_0/source/torture/rpc/wkssvc.c


Changeset:
Modified: branches/SAMBA_4_0/source/torture/rpc/wkssvc.c
===================================================================
--- branches/SAMBA_4_0/source/torture/rpc/wkssvc.c	2006-07-26 11:41:08 UTC (rev 17255)
+++ branches/SAMBA_4_0/source/torture/rpc/wkssvc.c	2006-07-26 12:25:16 UTC (rev 17256)
@@ -30,11 +30,13 @@
 {
 	NTSTATUS status;
 	struct wkssvc_NetWkstaGetInfo r;
+	union wkssvc_NetWkstaInfo info;
 	uint16_t levels[] = {100, 101, 102, 502};
 	int i;
 	BOOL ret = True;
 
 	r.in.server_name = dcerpc_server_name(p);
+	r.out.info = &info;
 
 	for (i=0;i<ARRAY_SIZE(levels);i++) {
 		r.in.level = levels[i];
@@ -71,6 +73,7 @@
 	r.in.ctr = &ctr;
 	r.in.max_buffer = (uint32_t)-1;
 	r.in.resume_handle = &resume_handle;
+	r.out.ctr = &ctr;
 	r.out.resume_handle = &resume_handle;
 
 	printf("testing NetWkstaTransportEnum\n");



More information about the samba-cvs mailing list