Recently, due to a change at my ISP, Balsa has been unable to retrieve email via POP. After examining the datastream and testing with telnet, it would seem that the server doesn't like RETRieve commands being sent off in quick succession and closes the socket.
Defining POP_SYNC in libbalsa/imap/pop3.c to disable pipelining seems to fix things. However, POP_SYNC only exists in #ifdef's so anyone else with one of these servers has to figure this out and recompile. I also found an IMAP_POP_OPT_PIPELINE option, but it doesn't seem to be referenced anywhere. Also, how does Balsa diagnose the problem correctly so that it knows when to use the option? There is no error message, just a dropped connection. And the server claims to support pipelining. For reference, my only choice in ISPs in my rural location recently "upgraded" its mail service and here is the output from the connection: craig: ~> balsa -d opening Inbox.. POP S: +OK InterMail POP3 server ready. POP C: CAPA POP S: +OK Capability list follows TOP USER RESP_CODES PIPELINING EXPIRE NEVER UIDL IMPLEMENTATION Openwave Email vM.5.01.06.10.01 201-253-122-130-110-103-20050629_BCE_UPOP POP S: . POP C: User (user hidden) POP S: +OK please send PASS command POP C: Pass (passwd hidden) POP S: +OK mailbox for (email hidden) has 28 message(s) POP C: List POP S: +OK 28 message(s) 1 4497 2 4264 3 6883 4 6668 5 4550 6 4039 7 10230 8 4718 9 5927 10 7746 11 6495 12 9483 13 6112 14 5414 15 5059 16 4830 17 4376 18 5091 19 5911 20 5759 21 4165 22 6083 23 10771 24 4350 25 9399 26 4340 27 4009 28 4599 . POP C: RETR 1 RETR 2 RETR 3 RETR 4 RETR 5 RETR 6 RETR 7 RETR 8 RETR 9 RETR 10 RETR 11 RETR 12 RETR 13 RETR 14 RETR 15 RETR 16 RETR 17 RETR 18 RETR 19 RETR 20 RETR 21 RETR 22 RETR 23 RETR 24 RETR 25 RETR 26 RETR 27 RETR 28 craig: ~> _______________________________________________ balsa-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/balsa-list
