]> Pileus Git - ~andy/fetchmail/blob - TODO.txt
155095df9d9c6def41a05da279a407f2fcd34e21
[~andy/fetchmail] / TODO.txt
1 Note that there is a separate todo.html with different content than this.
2
3 soon - MUST:
4 - Debian Bug #475239, MIME decoder may break up words (need to quote results)
5 - put bare IP addresses in brackets for SMTP (check if there are RFC
6   1123/5321/5322 differences)
7 - Debian Bug #531589: fetchmail ignores SIGUSR1 in idle mode.
8
9 soon - SHOULD:
10 - make sure the man page completely lists all options (f. i. sslcertpath) in
11   the tables.
12 - allow \Deleted without \Seen, rf. 
13   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466299
14 - document IMAP4 ACL requirements
15 - CRYPTO: log configured server name on certificate mismatch (perhaps pay
16   attention to via entries and stuff like that)
17 - CRYPTO: BerliOS Bug #11576, thread on fetchmail users "Invalid SSL certificate" by
18   Philip Susi, SSL negotiation does not use ERR_error_string(3ssl) to report
19   errors in a readable way, we just report socket errors with no good reason.
20 - CRYPTO: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=432618
21   * write a table of combinations of TLS/SSL options
22 - add To: header to warning mails (authfail for instance)
23 - Fix TOCTOU race around prc_filecheck*
24 - Read CAPABILITY from greeting if present, saves one round trip.
25 - Check if LAST argument is properly validated against message count.
26
27 soon - MAY:
28 - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=471176
29   => fetchmail: support utf-8 encoding in log file
30   Revisit http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=400719
31   => syslog messages are localised
32   http://lists.debian.org/debian-devel/2006/11/msg01068.html
33 - when logging to syslog, disable locale?
34 - Get rid of peeking in socket.c? MSG_PEEK seems non-portable.
35
36 soon - after 6.3.9:
37 - find a solution for the "invalid header" discards message problem
38   (escape headers and stuff reminder into body)
39 - add Message-ID: header and other SHOULD headers to warning mails?
40 - report multiline SMTP errors properly (sample in private mail from 
41   Earl Chew, 2007-07-30T02:28), Debian Bug #529899
42   => requires reworking SMTP_ok to actually not only read the last line 
43      of multiline replies, but buffer.
44 - revise ticker, and add something like .........20%.... ... 100%
45   (suggested by Yue Wu)
46
47 questionable:
48 - Convert POP3 UIDs to X-UIDL?
49 - fetch IMAP message in one go (fetchmail-devel by Adam Simpkins
50   <simpkins@cisco.com> around Nov 2nd)?
51
52 6.4:
53 - Remove stupid options, such as spambounce, or deferred bounces for anything
54   but wrong addresses
55 - Do not ever guess envelope from content headers such as To:/Cc:/Resent-To: or
56   similar.
57 - Replace sscanf/fscanf by functions that do range checking
58   (strtol/strtoul), and make arguments unsigned long.
59 - drop LAST support
60 - use PS_PROTOCOL for pre-/post-connect command failures - 6.3 uses 
61   PS_SYNTAX, and that's not necessarily the case. At least if the 
62   command terminates with a signal, we should report PS_PROTOCOL.
63 - revisit maximum allowed rcfile permissions, fix inconsistency
64   (silently allowing g+x).
65 - make UID code more efficient, parsing is O(n^2), should be no worse
66   than O(n log n), lookup is O(n), should be O(log n).
67 - help systematic debugging
68     - by making logging more strict (Postfix's msg_* as example??)
69     - by adding a --loggingtest or something that emits 
70       a set of test log messages at various severity levels, in order to 
71       make sure people get complete logs.
72     - by adding messages where fetchmail stuffed its output.
73 - Debian Bug #454291 fetchmail --quit: should check, that pid file 
74   really contains pid of fetchmail process (Dmitry Nezhevenko)
75   => use fcntl() lock?
76 - feature to skip first N or all messages upon first download, or fetch
77   last N.
78 - download only messages whose headers match a filter (by Toby, Usenet
79   Nov 2007 de.comm.software.mailserver
80   Message-ID: <1195033726.123704.296060@k79g2000hse.googlegroups.com>)
81 - feature request by Daniel Goering <g_daniel@gmx.net> on
82   fetchmail-devel 2007-11-15: populate .fetchids from current messages.
83   (it'll probably be useful to limit this to "all but the 10 latest" or
84   "all before date this-and-that")
85 - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=374514
86   "Deleting fetchids file" vs. POP3 - probably unneeded if we use IMAP UIDs.
87 - CRYPTO: change SSL/TLS UI incompatibly, making it easier to use
88 - CRYPTO: allow selection of SSL/TLS Ciphers
89 - CRYPTO: perhaps switch to libgsasl and libgnutls (which doesn't talk SSLv2,
90   but we should abandon that anyways).
91 - CRYPTO: perhaps port to NSS? Check license and features and required procedure
92   changes. - Redhat Bugs #333741 (crypto consolidation), #346891 (port fetchmail to NSS)
93 - CRYPTO: make the SSL default v3 (rather than v23).
94 - put more hints to the FAQ (should we call it FGA?) as first support place
95 - make sure we print socket error messages such as connection reset by
96   peer to hint users the problem is not in fetchmail
97 - require envelope option for multidrop ; if not found in header, defer message?
98 - > b) When the envelope header is specified, but it isn't found, a
99   > warning is logged and the mail is forwarded to the postmaster
100   > ("WARNING: Envelope header $HEADER found, cannot identify the
101   > recipient.  Forwarding to the postmaster")
102   Rob MacGregor 2007-03-16 Patch to the man page, fetchmail-devel@
103 - integrate Isaac Wilcox's test rig
104 - look at Tony Earnshaw's .spec file
105 - look at Gentoo patches
106 - remove dead replacement functions: strdup (Andreas Krennmair), ...
107 - more SMTP/LMTP error detail on message rejections even outside verbose mode.
108   Ian D. Allen, fetchmail-users. Two messages with examples.
109   What goes here? fetchmailrc location, server, port, user, folder, anything else?
110 - see if "AUTH SSH" can be made to work for POP3
111 - revisit BerliOS patches
112 - check recent list mail
113 - check Debian BTS and other bug trackers
114 - better logging (log all headers, log forward destination + method)
115 - check strict envelope N Received parsing,
116   see mail from Admin Att on fetchmail-users
117 - 6.3.4-pending-deletes.patch
118 - fetchmail -s with running daemon complains rather than silently
119   restarting daemon
120 - send warning message when connection fails?
121 - check FAQ O5 - do we really prefer From: over envelope?!?
122 - add code to allow safe authentication schemes if TLS fails
123 - make APOP an authenticator, integrate with regular auto authentication
124   but stuff it at the end
125 - allow forcing RETR (RETR vs. TOP, fetchmail-users, drbob 2008-01-11)
126 - CRYPTO: use SASL?
127 - make logfile more useful (redirect not only in daemon mode)
128 - for virtual mapping, we don't currently support local user aliases or 
129   regexp matching with replacement. This would be useful for hosting 
130   several virtual domains in one multidrop mailbox, as in 
131   qmail/courier's:
132
133   @one.example:bob-one
134   @two.example:bob-two
135
136   Result:
137   some@one.example maps to bob-one-some@serverdomain
138   another@two.example maps to bob-two-example@serverdomain
139
140   we can strip the bob-*, but but we don't support domain catchalls 
141   here, and we cannot currently delegate or rewrite the remaining 
142   one-* or two-* users in a useful way. All local parts of the upstream 
143   domains must be known and mapped in the configuration file.
144   (See fetchmail-users, Michelle Konzack, 2009-05-03, "4 multidrop but one 
145    destination server" and followup)
146
147   This probably entails some form of extended user mapping inside 
148   fetchmail, for map_name() in transact.c, and possibly 
149   find_server_names() ibidem.
150
151 DOCUMENTATION:
152 - Add info whether Keywords are global, server or user keywords
153 - consolidate multidrop documentation