Note that there is a separate todo.html with different content than this.
soon - MUST:
- Debian Bug #475239, MIME decoder may break up words (need to quote results)
- Replace sscanf/fscanf by functions that do range checking (strtol/strtoul) :-/
See http://sourceware.org/bugzilla/show_bug.cgi?id=6453
soon - SHOULD:
- allow \Deleted without \Seen, rf.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466299
- document IMAP4 ACL requirements
- log configured server name on certificate mismatch (perhaps pay
attention to via entries and stuff like that)
- BerliOS Bug #11576, thread on fetchmail users "Invalid SSL certificate" by
Philip Susi, SSL negotiation does not use ERR_error_string(3ssl) to report
errors in a readable way, we just report socket errors with no good reason.
- http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=432618
* write a table of combinations of TLS/SSL options
- add To: header to warning mails (authfail for instance)
- Fix TOCTOU race around prc_filecheck*
- Read CAPABILITY from greeting if present, saves one round trip.
soon - MAY:
- http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=471176
=> fetchmail: support utf-8 encoding in log file
Revisit http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=400719
=> syslog messages are localised
http://lists.debian.org/debian-devel/2006/11/msg01068.html
- Get rid of peeking in socket.c? MSG_PEEK seems non-portable.
soon - after 6.3.9:
- find a solution for the "invalid header" discards message problem
(escape headers and stuff reminder into body)
- add Message-ID: header and other SHOULD headers to warning mails?
- report multiline SMTP errors properly (sample in private mail from
Earl Chew, 2007-07-30T02:28), Debian Bug #529899
=> requires reworking SMTP_ok to actually not only read the last line
of multiline replies, but buffer.
- revise ticker, and add something like .........20%.... ... 100%
(suggested by Yue Wu)
questionable:
- Convert POP3 UIDs to X-UIDL?
- fetch IMAP message in one go (fetchmail-devel by Adam Simpkins
around Nov 2nd)?
6.4:
- use PS_PROTOCOL for pre-/post-connect command failures - 6.3 uses
PS_SYNTAX, and that's not necessarily the case. At least if the
command terminates with a signal, we should report PS_PROTOCOL.
- revisit maximum allowed rcfile permissions, fix inconsistency
(silently allowing g+x).
- make UID code more efficient, parsing is O(n^2), should be no worse
than O(n log n).
- help systematic debugging
- by making logging more strict (Postfix's msg_* as example??)
- by adding a --loggingtest or something that emits
a set of test log messages at various severity levels, in order to
make sure people get complete logs.
- by adding messages where fetchmail stuffed its output.
- Debian Bug #454291 fetchmail --quit: should check, that pid file
really contains pid of fetchmail process (Dmitry Nezhevenko)
=> use fcntl() lock?
- feature to skip first N or all messages upon first download
- download only messages whose headers match a filter (by Toby, Usenet
Nov 2007 de.comm.software.mailserver
Message-ID: <1195033726.123704.296060@k79g2000hse.googlegroups.com>)
- feature request by Daniel Goering on
fetchmail-devel 2007-11-15: populate .fetchids from current messages.
(it'll probably be useful to limit this to "all but the 10 latest" or
"all before date this-and-that")
- http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=374514
"Deleting fetchids file" vs. POP3 - probably unneeded if we use IMAP UIDs.
- change SSL/TLS UI incompatibly, making it easier to use
- allow selection of SSL/TLS Ciphers
- perhaps switch to libgsasl and libgnutls (which doesn't talk SSLv2)
- make the SSL default v3 (rather than v23).
- put more hints to the FAQ (should we call it FGA?) as first support place
- make sure we print socket error messages such as connection reset by
peer to hint users the problem is not in fetchmail
- > b) When the envelope header is specified, but it isn't found, a
> warning is logged and the mail is forwarded to the postmaster
> ("WARNING: Envelope header $HEADER found, cannot identify the
> recipient. Forwarding to the postmaster")
Rob MacGregor 2007-03-16 Patch to the man page, fetchmail-devel@
- integrate Isaac Wilcox's test rig
- look at Tony Earnshaw's .spec file
- look at Gentoo patches
- remove dead replacement functions: strdup (Andreas Krennmair), ...
- more SMTP/LMTP error detail on message rejections even outside verbose mode.
Ian D. Allen, fetchmail-users. Two messages with examples.
What goes here? fetchmailrc location, server, port, user, folder, anything else?
- see if "AUTH SSH" can be made to work for POP3
- revisit BerliOS patches
- check recent list mail
- check Debian BTS and other bug trackers
- better logging (log all headers, log forward destination + method)
- check strict envelope N Received parsing,
see mail from Admin Att on fetchmail-users
- 6.3.4-pending-deletes.patch
- fetchmail -s with running daemon complains rather than silently
restarting daemon
- send warning message when connection fails?
- when logging to syslog, disable locale?
- check FAQ O5 - do we really prefer From: over envelope?!?
- add code to allow safe authentication schemes if TLS fails
- make APOP an authenticator, integrate with regular auto authentication
but stuff it at the end
- allow forcing RETR (RETR vs. TOP, fetchmail-users, drbob 2008-01-11)
- use SASL?
- make logfile more useful (redirect not only in daemon mode)
- for virtual mapping, we don't currently support local user aliases or
regexp matching with replacement. This would be useful for hosting
several virtual domains in one multidrop mailbox, as in
qmail/courier's:
@one.example:bob-one
@two.example:bob-two
Result:
some@one.example maps to bob-one-some@serverdomain
another@two.example maps to bob-two-example@serverdomain
we can strip the bob-*, but but we don't support domain catchalls
here, and we cannot currently delegate or rewrite the remaining
one-* or two-* users in a useful way. All local parts of the upstream
domains must be known and mapped in the configuration file.
(See fetchmail-users, Michelle Konzack, 2009-05-03, "4 multidrop but one
destination server" and followup)
This probably entails some form of extended user mapping inside
fetchmail, for map_name() in transact.c, and possibly
find_server_names() ibidem.
DOCUMENTATION:
- Add info whether Keywords are global, server or user keywords
- consolidate multidrop documentation