1 <!doctype HTML public "-//W3O//DTD W3 HTML 3.2//EN">
4 <TITLE>Fetchmail Feature List</TITLE>
5 <link rev=made href="mailto:esr@snark.thyrsus.com">
6 <meta name="description" content="The fetchmail brag sheet.">
7 <meta name="keywords" content="fetchmail, POP, POP3, IMAP, IMAP2bis, IMAP4">
10 <table width="100%" cellpadding=0><tr>
11 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
12 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
13 <td width="30%" align=right>$Date: 2000/12/01 09:47:53 $
17 <H1 ALIGN=CENTER>Fetchmail Feature List</H1>
21 <LI>The interface option now checks both local and remote interface IPs.<p>
24 The plugin facility has been enhanced; %h and %p options are now
25 available to pass in the hostname and service port number.
28 Added a dropdelivered option to discard Delivered-To headers. This
29 addresses a problem with using fetchmail and postfix as a relay inside
30 a domain; when postfix sees incoming messages with delivered-to
31 headers looking exactly the same as the ones it adds himself, it
35 Added --smtpname to set username and domain portion of SMTP "RCPT TO"
36 command. >fetchmail@mail.julianhaight.com>.
39 Added "from" server's IP address to inserted Received line
40 >fetchmail@mail.julianhaight.com<.
43 Fetchmail now runs on BeOS, thanks to David Reid <david@jetnet.co.uk>.
46 In IMAP, unseen-message counting and indexing is now done by SEARCH
47 UNSEEN at the beginning of each poll or re-poll (rather than with
48 the UNSEEN and RECENT responses and FLAGS queries on individual
49 messages). This significantly cuts down on traffic to and from the
50 server, and gives more reliable results.<p>
53 The aka option now matches hostname suffixes, so (for example) saying
54 `aka netaxs.com' will match not just netaxs.com but also (say)
55 pop3.netaxs.com and mail.netaxs.com.
58 Fetchmail can optionally use the RFC 2177 IDLE extension on an IMAP
59 server that supports it.
62 Fetchmail now recognizes the RFC 2449 extended responses [IN-USE] and
66 Fetchmail running in daemon mode now restarts itself quietly when the
69 <LI>Following recent court decisions and changes in U.S. federal
70 regulatory policy, hooks for Secure Sockets Layer (SSL) are now part
71 of the main fetchmail distribution. The distribution still contains
72 no actual cryptographic code.
74 <LI>NTLM support, so fetchmail can query Microsoft Exchange servers.
76 <LI>Expunge option can now be used to break POP3 retrieval into subsessions.
78 <LI>Support for AUTH=CRAM-MD5 under IMAP, a la RFC2195.
83 <LI>The interface and monitor options now work with freeBSD.
85 <LI> Fetchmail now sends RFC1894-conformant bouncemail on SMTP and LMTP errors.
87 <LI> Full support for LMTP according to RFC2033.
89 <LI> True multi-language support using GNU gettext.
91 <LI> Support for use of HESIOD with Kerberos.
93 <LI> The --bsmtp option supports recording fetched mail as a BSMTP batch.
95 <LI> The --limit option can now be used in daemon mode, with oversized-message
96 notifications being mailed to the calling user.
99 Configurable support for the <a
100 href="http://www.demon.net/info/helpdesk/demon_products/mail/sdps-tech.shtml">SDPS
101 extensions</a> in <a href="http://www.demon.net/">www.demon.net</a>'s
104 <LI> There is now an interactive GUI fetchmail configurator, fetchmailconf.
106 <LI> Code is 64-bit clean and Y2K-safe.
108 <LI> Automatically decodes armored 7-bit MIME into 8 bits (this can be
111 <LI> You can specify which SMTP error is recognized as a spam block.
113 <LI> Support for Kerberos V authentication.
115 <LI> Support for IMAP-OTP authentication using Craig Metz's patches
118 <LI> Support for IPv6 (using glibc or Craig Metz's inet6-apps library).
120 <Li> Support for IPSEC (using Craig Metz's inet6-apps library).
122 <LI> Support for IMAP with RFC1731-conformant GSSAPI authentication.
124 <LI> Fixed and verified support for Cyrus IMAP server, M$ Exchange,
127 <LI> Support for responding with a one-time password when a POP3 server
128 issues an RFC1938-conforming OTP challenge.
130 <LI> Support for Compuserve's RPA authentication protocol for POP3
131 (not compiled in by default, but configurable).
136 <LI> Support for IMAP RFC 1731 authentication with Kerberos v4.
138 <LI> Support for multiple-folder retrieval in a single session
141 <LI> Following SMTP 571 response to a From line, fetchmail no longer
142 downloads the bodies of spam messages.
144 <LI> Support for a `hunt list' of SMTP hosts.
146 <LI> Support for ESMTP 8BITMIME and SIZE options.
148 <LI> Support for ESMTP ETRN command.
150 <LI> The stripcr & forcecr options to explicitly control carriage-return
151 stripping and LF->CRLF mapping before mail forwarding.
156 <LI> Support for secure use with ssh.
158 <LI> Mailserver passwords can be parsed out of your .netrc file.
160 <LI> When forwarding mail via SMTP, fetchmail respects the 571
161 "spam filter" response and discards any mail that triggers it.
163 <LI> Transaction and error logging may optionally be done via syslog.
165 <LI> (Linux only) Security option to permit fetchmail to poll a host
166 only when a point-to-point link to a particular IP address is
169 <LI> RPOP support (restored; had been removed in 1.8).
172 <H2>2.0 and earlier versions:</H2>
174 <LI> Support POP2, APOP, RPOP, IMAP2, IMAP2bis, IMAP3, IMAP4, IMAP4rev1. .
176 <LI> Support for Kerberos V4 user authentication (either MIT or Cygnus).
178 <LI> Host is auto-probed for a working server if no protocol is
179 specified for the connection. Thus you don't need to know
180 what servers are running on your mail host in advance; the
181 verbose option will tell you which one succeeds.
183 <LI> Delivery via SMTP to the client machine's port 25. This
184 means the retrieved mail automatically goes to the system
185 default MDA as if it were normal sender-initiated SMTP mail.
187 <LI> Configurable timeout to detect if server connection is dropped.
189 <LI> Support for retrieving and forwarding from multi-drop mailboxes
190 that is guaranteed not to cause mail loops.
192 <LI> Large user community -- fetchmail has a large user base (the
193 author's beta list includes well over two hundred people). This
194 means feedback is rapid, bugs get found and fixed rapidly.
196 <LI> Carefully written, comprehensive and up-to-date man page describing
197 not only modes of operation but also how to diagnose the most
198 common kinds of problems and what to do about deficient servers.
200 <LI> Rugged, simple, and well-tested code -- the author relies on it
201 every day and it has never lost mail, not even in experimental
202 versions. (In the project's entire history there has only been
203 one recorded instance of lost mail, and that was due to a quirk
204 in some Microsoft code.)
206 <LI> Strict conformance to relevant RFCs and good debugging options.
207 You could use fetchmail to test and debug server implementatations.
209 <LI> For anybody who cares, fetchmail is Y2K safe.
212 <H2>Features in common with other remote-mail retrieval programs:</H2>
214 The other programs I have checked include fetchpop1.9, PopTart-0.9.3,
215 get-mail, gwpop, pimp-1.0, pop-perl5-1.2, popc, popmail-1.6 and upop.<P>
218 <LI> Support for POP3.
220 <LI> Easy control via command line or free-format run control file.
222 <LI> Daemon mode -- fetchmail can be run in background to poll
223 one or more hosts at a specified interval.
225 <LI> From:, To:, Cc:, and Reply-To: headers are rewritten so that
226 usernames relative to the fetchmail host become fully-qualified
227 Internet addresses. This enables replies to work correctly.
228 (Would be unique to fetchmail if I hadn't added it to fetchpop.)
230 <LI> Message and header processing are 8-bit clean.
234 <table width="100%" cellpadding=0><tr>
235 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
236 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
237 <td width="30%" align=right>$Date: 2000/12/01 09:47:53 $
240 <P><ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com"><esr@snark.thyrsus.com></A></ADDRESS>