svn commit: samba r13994 - in branches/SAMBA_3_0/source/rpc_server: .

jra at samba.org jra at samba.org
Tue Mar 7 21:13:20 GMT 2006


Author: jra
Date: 2006-03-07 21:13:19 +0000 (Tue, 07 Mar 2006)
New Revision: 13994

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

Log:
Belt and braces - ensure RPC_BUFFER is valid.
Jeremy.

Modified:
   branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c


Changeset:
Modified: branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c	2006-03-07 21:09:53 UTC (rev 13993)
+++ branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c	2006-03-07 21:13:19 UTC (rev 13994)
@@ -4624,11 +4624,13 @@
 	
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_enumprinters\n"));
 
 	*needed=0;
@@ -4933,11 +4935,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	*needed=0;
 
 	if (!get_printer_snum(p, handle, &snum))
@@ -5530,11 +5534,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_getprinterdriver2\n"));
 
 	if ( !(printer = find_printer_index_by_hnd( p, handle )) ) {
@@ -6367,9 +6373,12 @@
 {
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) 
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
+	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+
 	r_u->needed = 0;
 	return WERR_INVALID_PARAM; /* this is what a NT server
                                            returns for AddJob. AddJob
@@ -6579,11 +6588,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_enumjobs\n"));
 
 	*needed=0;
@@ -6944,11 +6955,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_enumprinterdrivers\n"));
 	
 	*needed   = 0;
@@ -7007,11 +7020,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_enumforms\n"));
 	DEBUGADD(5,("Offered buffer size [%d]\n", offered));
 	DEBUGADD(5,("Info level [%d]\n",          level));
@@ -7114,11 +7129,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	unistr2_to_ascii(form_name, uni_formname, sizeof(form_name)-1);
 
 	DEBUG(4,("_spoolss_getform\n"));
@@ -7392,11 +7409,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_enumports\n"));
 	
 	*returned=0;
@@ -7800,11 +7819,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer ) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(4,("_spoolss_getprinterdriverdirectory\n"));
 
 	*needed=0;
@@ -8410,11 +8431,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
  	DEBUG(5,("spoolss_enumprintprocessors\n"));
 
 	/*
@@ -8487,11 +8510,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
  	DEBUG(5,("_spoolss_enumprintprocdatatypes\n"));
 	
 	*returned=0;
@@ -8613,11 +8638,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
  	DEBUG(5,("spoolss_enumprintmonitors\n"));
 
 	/*
@@ -8787,11 +8814,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
 	DEBUG(5,("spoolss_getjob\n"));
 	
 	*needed = 0;
@@ -9407,11 +9436,13 @@
 
 	/* that's an [in out] buffer */
 
-	if ( q_u->buffer ) {
-		rpcbuf_move(q_u->buffer, &r_u->buffer);
-		buffer = r_u->buffer;
+	if (!q_u->buffer) {
+		return WERR_INVALID_PARAM;
 	}
 
+	rpcbuf_move(q_u->buffer, &r_u->buffer);
+	buffer = r_u->buffer;
+
  	DEBUG(5,("_spoolss_getprintprocessordirectory\n"));
 	
 	*needed=0;



More information about the samba-cvs mailing list