[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: SIGPIPE thrown from an MDA or a stream socket error



On Sat, Jan 12, 2002 at 12:08:22AM +0200, Ian Balchin wrote:
> While using fetchmail all goes OK until reaching message 91 and then
> 
> 'reading message No 91'
> SIGPIPE thrown from an MDA or a stream socket error
> fetchmail: socket error while fetching from (my isp)
> fetchmail: Query status=2 (SOCKET)
> 
> and then it fetchmail terminates.
> 
> Since each message up to 91 has been downloaded and deleted on the
> host I do not understand how the same messages are downloaded on the
> next attempt and the above process repeated as many times as i dial
> in.

The POP protocol does not allow for deleting messages off the
server until all the messages have been downloaded.  That's
what's nice about IMAP.

So, you can either find out what's wrong with message 91
and try to prevent the MDA from dying (check your
exim logs, maybe exim will log something before dying),
or ask your isp to delete message 91 out of your mail
queue for you.

I trust my isp to get this kind of request right; you will
have to make your own judgement about your isp.  I've
only ever had to ask for this once (in three years).

Or you can try to use IMAP protocol to see who message
91 is from, and optionally delete it off the server
before another attempt to download everything.
It looks like fetchmail can do IMAP; I've never used
it for that so you'll have to figure it out on your own
(or someone else can help).  From a quick glance at
the manpage it looks like it handles IMAP protocol just
like POP:  it downloads everything, except using IMAP
protocol instead of POP.  So, not useful for what you
want to do.  You need to find an IMAP client that
can allow you to download headers only, and upload
a delete command for message 91.  Then you can download
everything using POP (or IMAP) using fetchmail as usual.

This assumes it is the body of message 91 that is
killing your MDA, and not the header.  If the header
is inedible to your MDA, I think your only recourse
is to get your isp to nuke it.


It looks like fetchmail has a "fetchlimit"
option that might download (say) 10 messages
per connect, and delete them off the server.
Then connect again and get 10 more....
Or you can be bold and ask for 90.
Check the man page for fetchmail.

Gotta go... good luck.

-- 
bjb@achilles.net
Welcome to the GNU age!   http://www.gnu.org



Reply to: