svn commit: samba r24033 - in branches: SAMBA_3_2/source/lib SAMBA_3_2_0/source/lib

vlendec at samba.org vlendec at samba.org
Tue Jul 24 11:48:35 GMT 2007


Author: vlendec
Date: 2007-07-24 11:48:35 +0000 (Tue, 24 Jul 2007)
New Revision: 24033

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

Log:
We need to be able to cope with packet_handler calling itself
recursively

Modified:
   branches/SAMBA_3_2/source/lib/packet.c
   branches/SAMBA_3_2_0/source/lib/packet.c


Changeset:
Modified: branches/SAMBA_3_2/source/lib/packet.c
===================================================================
--- branches/SAMBA_3_2/source/lib/packet.c	2007-07-24 11:47:37 UTC (rev 24032)
+++ branches/SAMBA_3_2/source/lib/packet.c	2007-07-24 11:48:35 UTC (rev 24033)
@@ -136,15 +136,16 @@
 
 	SMB_ASSERT(length <= ctx->in.length);
 
-	data.data = ctx->in.data;
-	data.length = length;
+	data = data_blob(ctx->in.data, length);
 
-	*status = callback(&data, private_data);
-
 	memmove(ctx->in.data, ctx->in.data + length,
 		ctx->in.length - length);
 	ctx->in.length -= length;
 
+	*status = callback(&data, private_data);
+
+	data_blob_free(&data);
+
 	return True;
 }
 

Modified: branches/SAMBA_3_2_0/source/lib/packet.c
===================================================================
--- branches/SAMBA_3_2_0/source/lib/packet.c	2007-07-24 11:47:37 UTC (rev 24032)
+++ branches/SAMBA_3_2_0/source/lib/packet.c	2007-07-24 11:48:35 UTC (rev 24033)
@@ -136,15 +136,16 @@
 
 	SMB_ASSERT(length <= ctx->in.length);
 
-	data.data = ctx->in.data;
-	data.length = length;
+	data = data_blob(ctx->in.data, length);
 
-	*status = callback(&data, private_data);
-
 	memmove(ctx->in.data, ctx->in.data + length,
 		ctx->in.length - length);
 	ctx->in.length -= length;
 
+	*status = callback(&data, private_data);
+
+	data_blob_free(&data);
+
 	return True;
 }
 



More information about the samba-cvs mailing list