svn commit: samba r5806 - in branches/SAMBA_3_0/source: libsmb rpc_server

jerry at samba.org jerry at samba.org
Tue Mar 15 20:12:52 GMT 2005


Author: jerry
Date: 2005-03-15 20:12:51 +0000 (Tue, 15 Mar 2005)
New Revision: 5806

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

Log:
* fix a couple more segvs in spoolss

* comment out unused variable after jra's change to revert the 56bit des
  smb signing changes

Modified:
   branches/SAMBA_3_0/source/libsmb/smb_signing.c
   branches/SAMBA_3_0/source/rpc_server/srv_spoolss.c
   branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c


Changeset:
Modified: branches/SAMBA_3_0/source/libsmb/smb_signing.c
===================================================================
--- branches/SAMBA_3_0/source/libsmb/smb_signing.c	2005-03-15 19:43:44 UTC (rev 5805)
+++ branches/SAMBA_3_0/source/libsmb/smb_signing.c	2005-03-15 20:12:51 UTC (rev 5806)
@@ -255,7 +255,10 @@
 	const size_t offset_end_of_sig = (smb_ss_field + 8);
 	unsigned char sequence_buf[8];
 	struct MD5Context md5_ctx;
+#if 0
+        /* JRA - apparently this is incorrect. */
 	unsigned char key_buf[16];
+#endif
 
 	/*
 	 * Firstly put the sequence number into the first 4 bytes.

Modified: branches/SAMBA_3_0/source/rpc_server/srv_spoolss.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_spoolss.c	2005-03-15 19:43:44 UTC (rev 5805)
+++ branches/SAMBA_3_0/source/rpc_server/srv_spoolss.c	2005-03-15 20:12:51 UTC (rev 5806)
@@ -1244,6 +1244,9 @@
 	prs_struct *data = &p->in_data.data;
 	prs_struct *rdata = &p->out_data.rdata;
 	
+	ZERO_STRUCT(q_u);
+	ZERO_STRUCT(r_u);
+	
 	if(!spoolss_io_q_getjob("", &q_u, data, 0)) {
 		DEBUG(0,("spoolss_io_q_getjob: unable to unmarshall SPOOL_Q_GETJOB.\n"));
 		return False;

Modified: branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c
===================================================================
--- branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c	2005-03-15 19:43:44 UTC (rev 5805)
+++ branches/SAMBA_3_0/source/rpc_server/srv_spoolss_nt.c	2005-03-15 20:12:51 UTC (rev 5806)
@@ -8752,30 +8752,25 @@
 	int 		i = 0;
 	BOOL 		found = False;
 	JOB_INFO_2 	*info_2;
-	WERROR 		ret;
+	WERROR 		result;
 	DEVICEMODE 	*devmode = NULL;
 	NT_DEVICEMODE	*nt_devmode = NULL;
 
-	info_2=SMB_MALLOC_P(JOB_INFO_2);
+	if ( !(info_2=SMB_MALLOC_P(JOB_INFO_2)) )
+		return WERR_NOMEM;
 
 	ZERO_STRUCTP(info_2);
 
-	if (info_2 == NULL) {
-		ret = WERR_NOMEM;
-		goto done;
-	}
-
 	for ( i=0; i<count && found==False; i++ ) 
 	{
 		if ((*queue)[i].job == (int)jobid)
 			found = True;
 	}
 	
-	if ( !found ) 
-	{
+	if ( !found ) {
 		/* NT treats not found as bad param... yet another bad
 		   choice */
-		ret = WERR_INVALID_PARAM;
+		result = WERR_INVALID_PARAM;
 		goto done;
 	}
 	
@@ -8799,18 +8794,18 @@
 	*needed += spoolss_size_job_info_2(info_2);
 
 	if (*needed > offered) {
-		ret = WERR_INSUFFICIENT_BUFFER;
+		result = WERR_INSUFFICIENT_BUFFER;
 		goto done;
 	}
 
 	if (!rpcbuf_alloc_size(buffer, *needed)) {
-		ret = WERR_INSUFFICIENT_BUFFER;
+		result = WERR_NOMEM;
 		goto done;
 	}
 
 	smb_io_job_info_2("", buffer, info_2, 0);
 
-	ret = WERR_OK;
+	result = WERR_OK;
 	
  done:
 	/* Cleanup allocated memory */
@@ -8818,7 +8813,7 @@
 	free_job_info_2(info_2);	/* Also frees devmode */
 	SAFE_FREE(info_2);
 
-	return ret;
+	return result;
 }
 
 /****************************************************************************



More information about the samba-cvs mailing list