Oh well, I'm a little bit stupid today... Forgot to check the real
patch into cvs.
This is the actual working patch I used for my tests:
% cvs diff -u -r1.1 qmail-remote.c
Index: qmail-remote.c
===================================================================
RCS file: /usr/home/opi/CVS/qmail-ldap/qmail-remote.c,v
retrieving revision 1.1
retrieving revision 1.4
diff -u -r1.1 -r1.4
--- qmail-remote.c 1999/03/23 19:40:09 1.1
+++ qmail-remote.c 1999/08/25 21:32:28 1.4
@@ -1,6 +1,7 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
+#include <netinet/tcp.h>
#include <arpa/inet.h>
#include "sig.h"
#include "stralloc.h"
@@ -332,6 +333,7 @@
{
static ipalloc ip = {0};
int i;
+ int tcpnodelay = 1;
unsigned long random;
char **recips;
unsigned long prefme;
@@ -413,6 +415,9 @@
smtpfd = socket(AF_INET,SOCK_STREAM,0);
if (smtpfd == -1) temp_oserr();
+
+ /* performace hack to send TCP ACK's without delay */
+ setsockopt(smtpfd, IPPROTO_TCP, TCP_NODELAY, &tcpnodelay, sizeof
tcpnodelay);
if (timeoutconn(smtpfd,&ip.ix[i].ip,(unsigned int)
port,timeoutconnect) == 0) {
tcpto_err(&ip.ix[i].ip,0);