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.