At 15.05 09/03/2007, you wrote:
Ahmet YAZICI wrote:
Hello All,
One of my client has local MS Exchange server and sometimes they can't send email to real email server installed qmail. Beaceuse of that, i've disabled straynewline function in qmail-smtpd.c . Now it's working.. but i'm not sure if i break something Is it legal to disable straynewline or is there any solution for this problem?
Thanks

We use fixcrio prior to qmail-smtpd in our run files and have never had any problems since.

exec /usr/local/bin/softlimit -m 2000000 \
/usr/local/bin/tcpserver -v -P -R -h -l ecluster6.tls.net -x /var/qmail/control/tcp.smtp.cdb -c "$MAXSMTPD" \
        -u "$QMAILDUID" -g "$NOFILESGID" 10.0.241.136 25 \
                /usr/local/bin/fixcrio /var/qmail/bin/qmail-smtpd 2>&1

I suggest patching qmail-smtpd.c (from http://www.arctic.org/~dean/patches/qmail-0.95-liberal-lf.patch) and have a permanent solution (faster than running an additional program only for cr/lf):

--- qmail-smtpd.c       Wed Dec  1 22:48:04 2004
+++ prova-smtpd.c       Fri Jun 24 16:37:33 2005
@@ -363,17 +363,17 @@
     }
     switch(state) {
       case 0:
-        if (ch == '\n') straynewline();
+        if (ch == '\n') { state = 1; break; }
         if (ch == '\r') { state = 4; continue; }
         break;
       case 1: /* \r\n */
-        if (ch == '\n') straynewline();
         if (ch == '.') { state = 2; continue; }
         if (ch == '\r') { state = 4; continue; }
+        if (ch == '\n') state = 0;
         state = 0;
         break;
       case 2: /* \r\n + . */
-        if (ch == '\n') straynewline();
+        if (ch == '\n') return;
         if (ch == '\r') { state = 3; continue; }
         state = 0;
         break;

Tonino

http://search.yahoo.com/search?p=straynewline+fixcrio
http://cr.yp.to/ucspi-tcp/fixcrio.html

DAve
--
Three years now I've asked Google why they don't have a
logo change for Memorial Day. Why do they choose to do logos
for other non-international holidays, but nothing for
Veterans?

Maybe they forgot who made that choice possible.

Reply via email to