[tpop3d-discuss]Outlook duplicate messages

Dragos Nitu dragos.nitu at idilis.net
Mon, 24 May 2004 20:41:49 +0200


OK, I was a little ambiguous. This patch that I made, makes tpop3d behave like
this: when a QUIT command is issued, it doesn't close the connection.  If
there are more comands in the queue, takes care of them first.

After that the client is suposed to close that connection (Microsoft Outlook
does that). If not, the connection closes in 30 seconds (default timeout).

If there are not other commands after QUIT, tpop3d closes connection in just
10 seconds (Opera hangs if the server doesn't close connection).

So it actually works ! I think that 10 seconds timeout it's not necessary, but
a hve to make some other tests. My server runs fine since sunday morning, and
the problem with Outlook seems gone.

Non-Outlook clients still run fine. The timeout is at the end, after all
commands (after QUIT).

This patch was made to get people of my back, too. However is nice to share :).

PS. The problem was that Microsoft Outlook send DELE commands after QUIT, but
tpop3d ingores them. Other clients don't have that problem (not even Outlook
Express).

Dragos Nitu
Idilis S.A.
Tel: +40-21-2082800
Fax: +40-21-2082801


---------- Original Message -----------
From: Matthew Trent <mtrent@localaccess.com>
To: tpop3d-discuss@lists.beasts.org
Cc: "Dragos Nitu" <dragos.nitu@idilis.net>
Sent: Mon, 24 May 2004 10:02:34 -0700
Subject: Re: [tpop3d-discuss]Outlook duplicate messages

> On Friday 21 May 2004 06:56 pm, Dragos Nitu wrote:
> > I had the same problem with Microsoft Outlook. I didn't try the other
> > patch, it seemed broken :). However I needed a quick hack before the
> > problem is solved, so I made this patch which transforms the QUIT command
> > in timeout (10 seconds), so tpop3 can process other commands.
> 
> Can you rephrase that for me? :) I'm not following...
> 
> > The problem is that if after quit, if there are other commands, the
> > connection stays open at least timeout-seconds (default 30). However,
> > Outlook seems to close the connection itself, so it works OK (with a
> > warning from tpop3d).
> 
> You're saying it works OK... after the patch is applied?
> 
> I guess I'm having trouble understanding your approach. It looks 
> like you're increasing the timeout if there's a QUIT command? I 
> thought the problem was we weren't even getting to that point in the 
> code because Outlook had closed the connection immediately after 
> sending QUIT?
> 
> > Normal clients, which send the QUIT command last, have to wait 10 seconds
> > before the connection is actually closed. If they close the connection,
> > tpop3d gives a warning, but it doesn't crashes anymore.
> 
> Are you talking about before or after the patch? Are you saying that 
> with this patch applied, normal (non-Outlook) clients will stall out 
> for 10 seconds every time they check mail?
> 
> > I know that this doesn't *really* solves the problem, but maybe it can help
> > somebody.
> 
> A hack is fine with me, if it'll get people off my back about this problem!
> 
> Your patch made me think of another idea for a workaround that might 
> help. What if we executed a QUIT command artificially every time a 
> client times out?
> -- 
> Matt
> Systems Administrator
> Local Access Communications
> 360.330.5535
------- End of Original Message -------