Johannes Erdfelt writes: 

> quattro:~# strace -p 951
> read(6,  <unfinished ...> 
> 
> quattro:~# netstat -anpo | grep 951
> tcp        0      0 205.252.89.20:3094      207.69.200.138:25       ESTABLISHED 
>951/courieresmtp    off (0.00/0/0)
> unix  0      [ ]         DGRAM                    30783558 951/courieresmtp     
> 
> quattro:~# rpm -q courier
> courier-0.37.2.20020131-je1 
> 
> The only changes I made were use the user "mail" instead of "daemon". 
> 
> I haven't looked at the code for courier yet, but it looks like it uses
> blocking sockets and no alarm's. Although, I find it highly suspicious
> that this happens so rarely if the code does use a select before read. 
> 
> Sam, any ideas?

Try upgrading to the 0.37.3 build.  On 2/19 courieresmtp was changed to use 
non-blocking sockets.  It should not matter since each read is protected by 
a time-limited select.  If you can find any execution path that doesn't 
protect a read by a select I want to hear it.  However, to make a long story 
short, I'm told that using non-blocking sockets might matter. 


-- 
Sam 


_______________________________________________
courier-users mailing list
[EMAIL PROTECTED]
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users

Reply via email to