[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: smtp TA over SSL not handling shutdown



Darryl L. Miles wrote:

> I can re-create this one on demand.  The problem results in an smtp TA 
> process being stuck in a tight loop, the read() = 0, meaning the TCP 
> socket has closed.  But the TA doesn't appear to notice this.  I'm 
> trying to understand the exit path in smtp_sync() when smtp_bread() 
> returns -1 seems like voodoo.

Just a wild guess, try this:

Index: transports/smtp/smtp.c
===================================================================
RCS file: /cvsroot/zmailer/transports/smtp/smtp.c,v
retrieving revision 1.350
diff -u -r1.350 smtp.c
--- transports/smtp/smtp.c      20 Oct 2004 00:29:46 -0000      1.350
+++ transports/smtp/smtp.c      3 Nov 2004 11:30:53 -0000
@@ -4097,6 +4097,8 @@
         int statesave;
         time_t when_timeout;

+       if (SS->smtpfd < 0) return rc;
+
         SS->smtp_outcount = 0;
         SS->block_written = 0;

OpenPGP digital signature