]> Pileus Git - ~andy/fetchmail/blob - todo.html
Expunge between IMAP folders when polling multiple folders. Sunil Shetye.
[~andy/fetchmail] / todo.html
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml">
5 <head>
6 <link rev="made" href="mailto:esr@snark.thyrsus.com" />
7 <meta name="description"
8 content="Known bugs and to-do items in fetchmail" />
9 <meta name="keywords" content="fetchmail, POP3, IMAP, bugs" />
10 <title>Fetchmail Bugs and To-Do Items</title>
11 <style type="text/css">
12 /*<![CDATA[*/
13  h1.c1 {text-align: center}
14 /*]]>*/
15 </style>
16 </head>
17 <body>
18 <h1 class="c1">Fetchmail Bugs and To-Do Items</h1>
19
20 <p>I try to respond to urgent bug reports in a timely way. But
21 fetchmail is now pretty mature and I have many other projects, so I
22 don't personally chase obscure or marginal problems. Help with any
23 of these will be cheerfully accepted.</p>
24
25 <h2>Serious</h2>
26
27 <p>SSL trust model violation: (Brian Candler)
28 <a
29         href="http://lists.ccil.org/pipermail/fetchmail-friends/2004-April/008516.html">http://lists.ccil.org/pipermail/fetchmail-friends/2004-April/008516.html</a></p>
30
31 <p>Let IMAP code use UID and UIDVALIDITY rather than relying on flags
32 that everyone can alter.</p>
33
34 <h2>Normal</h2>
35
36 <p>POP3 hang when polling mail with NUL char that is rejected (David
37 Greaves) <a
38         href="https://lists.berlios.de/pipermail/fetchmail-devel/2004-October/000154.html">https://lists.berlios.de/pipermail/fetchmail-devel/2004-October/000154.html</a></p>
39
40 <p>Remove spaces after MAIL FROM: or RCPT TO: et al. in BSMTP output
41 (sink.c)</p>
42
43 <p>It has been reported that multidrop name matching fails when the
44 name to be matched contains a Latin-1 umlaut. Dollars to doughnuts
45 this is some kind of character sign-extension problem. Trouble is,
46 it's very likely in the BIND libraries. Someone should go in with a
47 debugger and check this.</p>
48
49 <p>Move everything to using service strings rather that port
50 numbers, so we can get rid of ENABLE_INET6 everywhere but in
51 SockOpen (this will get rid of the kluge in rcfile_y.y).</p>
52
53 <p>The <a
54 href="http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=fetchmail&amp;archive=no">
55 Debian bug-tracking page for fetchmail</a> lists other bug
56 reports.</p>
57
58 <h2>Cosmetic</h2>
59
60 <p>SSL validation prints CommonName mismatch more than once.</p>
61
62 <p>Alan Munday suggests message change MULTIDROP without ENVELOPE:</p>
63 <pre>
64 fetchmail: warning: MULTIDROP configuration for pop.example.org requires the envelope option to be set!
65 fetchmail: warning: Check ENVELOPE option if fetchmail sends all mail to postmaster!
66 </pre>
67
68 <h2>Feature requests/Wishlist items</h2>
69
70 <p>Feature request from "Ralf G. R. Bergs" &lt;rabe@RWTH-Aachen.DE&gt; "When
71 fetchmail downloads mail and Exim+SpamAssassin detecs an incoming
72 message as spam, fetchmail tries to bounce it. Unfortunately it uses
73 an incorrect hostname as part of the sender address (I've an internal
74 LAN with private hostnames, plus an official IP address and hostname,
75 and fetchmail picks the internal name of my host.) So I'd like to have
76 a config statement that allows me to explicitly set a senderaddress
77 for bounce messages."</p>
78
79 <p>In the SSL support, add authentication of Certifying Authority
80 (Is this a Certifying Authority we recognize?).</p>
81
82 <p>Debian wishlist item 181157: ssl key learning for self-signed certificates.</p>
83
84 <p>Laszlo Vecsey writes: "I believe qmail uses a technique of
85 writing temporary files to nfs, and then moving them into place to
86 ensure that they're written. Actually a hardlink is made to the
87 temporary file and the destination name in a new directory, then
88 the first one is unlinked. Maybe a combination of this will help
89 with the fetchmail lock file."</p>
90
91 <p>Maybe refuse multidrop configuration unless "envelope" is _explicitly_
92 configured (and tell the user he needs to configure the envelope
93 option) and change the envelope default to nil.  This would
94 prevent a significant class of shoot-self-in-foot problems.</p>
95
96 <p>Given the above change, perhaps treat a delivery as "temporarily
97 failed" (leaving the message on the server, not putting it into
98 .fetchids) when the header listed in the "envelope" option is not
99 found.  (This is so you don't lose mail if you configure the wrong
100 envelope header.)</p>
101
102 <p>Matthias Andree writes:</p>
103
104 <blockquote> 
105 <p>NOTE that the current code need optimization, if I have
106 unseen articles 3 and 47, fetchmail will happily request LIST for
107 articles 3...47 rather than just 3 and 47. In cases where the message
108 numbers are far apart, this involves considerable overhead - which
109 could be alleviated by pipelining the list commands, which needs
110 either asynchronous reading while sending the commands, or knowing the
111 send buffer, to avoid deadlocks. Unfortunately, I don't have the time
112 to delve deeper into the code and look around.</p>
113
114 <p>Note that such a pipelining function would be of universal use, so it
115 should not be in pop3.c or something. I'd think the best approach is to
116 call a "sender" function with the command and a callback, and the sender
117 will call the receiver when the send buffer is full and call the
118 callback function for each reply received.</p> 
119
120 <p>See the ESMTP PIPELINING RFC for details on the deadlock avoidance
121 requirements.</p>
122 </blockquote>
123
124 <hr />
125 <br clear="left" />
126 <address>-2003 Eric S. Raymond <a
127         href="mailto:esr@thyrsus.com">&lt;esr@thyrsus.com&gt;</a><br />
128 2004- Matthias Andree <a
129                 href="mailto:matthias.andree@gmx.de">&lt;matthias.andree@gmx.de&gt;</a></address>
130 </body>
131 </html>
132