upgraded --> cannot print anymore

Gerald (Jerry) Carter jerry at samba.org
Thu Dec 4 20:22:42 GMT 2003


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Gerald (Jerry) Carter wrote:
| Hey Christian.  Sorry for the delay.
|
| Christian Groessler wrote:
|
| | I've put up a tcpdump trace and a level 10 debug log on
| |
| | ftp://ftp.aladdin.de/pub/people/chris/tmp/printing-problem.tar.bz2
|
| ok.  This is a wrap around bug

Here's a patch. Tested and checked into SAMBA_3_0/HEAD
cvs branches.  Will be in 3.0.1rc1.




cheers, jerry
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE/z5eSIR7qMdg1EfYRAqWGAKClW10ADKs93PndPj+rl+RwM2IGpwCeKUBs
ZCHs3DFIu9I/LKC0fjEoBLE=
=G3qR
-----END PGP SIGNATURE-----
-------------- next part --------------
Index: rpc_server/srv_pipe_hnd.c
===================================================================
RCS file: /data/cvs/samba/source/rpc_server/srv_pipe_hnd.c,v
retrieving revision 1.77.2.9
diff -u -r1.77.2.9 srv_pipe_hnd.c
--- rpc_server/srv_pipe_hnd.c	22 Nov 2003 13:19:38 -0000	1.77.2.9
+++ rpc_server/srv_pipe_hnd.c	4 Dec 2003 19:23:29 -0000
@@ -772,6 +772,7 @@
 static ssize_t process_incoming_data(pipes_struct *p, char *data, size_t n)
 {
 	size_t data_to_copy = MIN(n, MAX_PDU_FRAG_LEN - p->in_data.pdu_received_len);
+	size_t old_pdu_received_len = p->in_data.pdu_received_len;
 
 	DEBUG(10,("process_incoming_data: Start: pdu_received_len = %u, pdu_needed_len = %u, incoming data = %u\n",
 		(unsigned int)p->in_data.pdu_received_len, (unsigned int)p->in_data.pdu_needed_len,
@@ -831,10 +832,11 @@
 
 	/*
 	 * Do we have a complete PDU ?
+	 * (return the nym of bytes handled in the call)
 	 */
 
 	if(p->in_data.pdu_received_len == p->in_data.pdu_needed_len)
-		return process_complete_pdu(p);
+		return process_complete_pdu(p) - old_pdu_received_len;
 
 	DEBUG(10,("process_incoming_data: not a complete PDU yet. pdu_received_len = %u, pdu_needed_len = %u\n",
 		(unsigned int)p->in_data.pdu_received_len, (unsigned int)p->in_data.pdu_needed_len ));


More information about the samba-technical mailing list