svn commit: samba r2624 - in branches/SAMBA_4_0/source/libcli/raw: .

tridge at samba.org tridge at samba.org
Sat Sep 25 11:18:04 GMT 2004


Author: tridge
Date: 2004-09-25 11:18:04 +0000 (Sat, 25 Sep 2004)
New Revision: 2624

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source/libcli/raw&rev=2624&nolog=1

Log:
- save some system calls by only trying read/write operations that select has indicated are possible

- when a socket is dead, don't try to do anything more on it




Modified:
   branches/SAMBA_4_0/source/libcli/raw/clitransport.c


Changeset:
Modified: branches/SAMBA_4_0/source/libcli/raw/clitransport.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/raw/clitransport.c	2004-09-25 11:17:09 UTC (rev 2623)
+++ branches/SAMBA_4_0/source/libcli/raw/clitransport.c	2004-09-25 11:18:04 UTC (rev 2624)
@@ -21,6 +21,10 @@
 
 #include "includes.h"
 
+
+static void smbcli_transport_process_recv(struct smbcli_transport *transport);
+static void smbcli_transport_process_send(struct smbcli_transport *transport);
+
 /*
   an event has happened on the socket
 */
@@ -29,7 +33,12 @@
 {
 	struct smbcli_transport *transport = fde->private;
 
-	smbcli_transport_process(transport);
+	if (flags & EVENT_FD_READ) {
+		smbcli_transport_process_recv(transport);
+	}
+	if (flags & EVENT_FD_WRITE) {
+		smbcli_transport_process_send(transport);
+	}
 }
 
 /*
@@ -265,6 +274,7 @@
 				return;
 			}
 			smbcli_transport_dead(transport);
+			return;
 		}
 		req->out.buffer += ret;
 		req->out.size -= ret;



More information about the samba-cvs mailing list