]> Pileus Git - ~andy/fetchmail/blobdiff - fetchmail-FAQ.html
Add R12 on getaddrinfo errors.
[~andy/fetchmail] / fetchmail-FAQ.html
index 24fd50776e28b78c188cb967938fa347bf12d51a..29cc7807aac0b0dbd9416f6397e1079210edf75d 100644 (file)
@@ -3,8 +3,6 @@
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
-<meta name="generator"
-content="HTML Tidy for Linux/x86 (vers 1st February 2002), see www.w3.org"/>
 <title>The Fetchmail FAQ</title>
 <link rev="made" href="mailto:esr@thyrsus.com"/>
 <meta name="description"
@@ -16,9 +14,7 @@ content="Frequently asked questions about fetchmail."/>
 <tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home
 Page</a></td>
-<td width="30%" align="center">To <a href="/~esr/sitemap.html">Site
-Map</a></td>
-<td width="30%" align="right">$Date: 2002/09/04 13:58:24 $</td>
+<td width="30%" align="right">$Date: 2004/01/13 08:46:00 $</td>
 </tr>
 </table>
 
@@ -64,8 +60,8 @@ at <a href="mailto:esr@thyrsus.com">esr@thyrsus.com</a>.</p>
 
 <a href="#F1">F1. Why does my old .fetchmailrc no longer work?</a><br/>
 <a href="#F2">F2. The .fetchmailrc parser won't accept my all-numeric user name.</a><br/>
-<a href="#F3">F3. The .fetchmailrc parser won't accept my host or username beginning with `no'.</a><br/>
-<a href="#F4">F4. I'm getting a `parse error' message I don't understand.</a><br/>
+<a href="#F3">F3. The .fetchmailrc parser won't accept my host or username beginning with 'no'.</a><br/>
+<a href="#F4">F4. I'm getting a 'parse error' message I don't understand.</a><br/>
 
 <h1>Configuration questions:</h1>
 
@@ -99,46 +95,38 @@ host?.</a><br/>
 <h1>How to make fetchmail work with various servers:</h1>
 
 <a href="#S1">S1. How can I use fetchmail with qpopper?</a><br/>
-<a href="#S2">S2. How can I use fetchmail with Microsoft
-Exchange?</a><br/>
-<a href="#S3">S3. How can I use fetchmail with Compuserve
-RPA?</a><br/>
-<a href="#S4">S4. How can I use fetchmail with Demon Internet's
-SDPS?</a><br/>
-<a href="#S5">S5. How can I use fetchmail with usa.net's
-servers?</a><br/>
-<a href="#S6">S6. How can I use fetchmail with HP
-OpenMail?</a><br/>
-<a href="#S7">S7. How can I use fetchmail with geocities POP3
-servers?</a><br/>
-<a href="#S8">S8. How can I use fetchmail with Hotmail?</a><br/>
-<a href="#S9">S9. How can I use fetchmail with MSN?</a><br/>
-<a href="#S10">S10. How can I use fetchmail with SpryNet?</a><br/>
-<a href="#S11">S11. How can I use fetchmail with FTGate?</a><br/>
-<a href="#S12">S12. How can I use fetchmail with MailMax?</a><br/>
-<a href="#S13">S13. How can I use fetchmail with Novell
-GroupWise?</a><br/>
-<a href="#S14">S14. How can I use fetchmail with
-InterChange?</a><br/>
-<a href="#S15">S15. How can I use fetchmail with GMX?</a><br/>
+<a href="#S2">S2. How can I use fetchmail with Microsoft Exchange?</a><br/>
+<a href="#S3">S3. How can I use fetchmail with HP OpenMail?</a><br/>
+<a href="#S4">S4. How can I use fetchmail with Novell GroupWise?</a><br/>
+<a href="#S5">S5. How can I use fetchmail with InterChange?</a><br/>
+<a href="#S6">S6. How can I use fetchmail with MailMax?</a><br/>
+<a href="#S7">S7. How can I use fetchmail with FTGate?</a><br/>
+
+<h1>How to fetchmail work with specific ISPs:</h1>
+
+<a href="#I1">I1. How can I use fetchmail with Compuserve RPA?</a><br/>
+<a href="#I2">I2. How can I use fetchmail with Demon Internet's SDPS?</a><br/>
+<a href="#I3">I3. How can I use fetchmail with usa.net's servers?</a><br/>
+<a href="#I4">I4. How can I use fetchmail with geocities POP3 servers?</a><br/>
+<a href="#I5">I5. How can I use fetchmail with Hotmail or Lycos Webmail?</a><br/>
+<a href="#I6">I6. How can I use fetchmail with MSN?</a><br/>
+<a href="#I7">I7. How can I use fetchmail with SpryNet?</a><br/>
+<a href="#I8">I8. How can I use fetchmail with comcast.net?</a><br/>
 
 <h1>How to set up well-known security and authentication
 methods:</h1>
 
 <a href="#K1">K1. How can I use fetchmail with SOCKS?</a><br/>
-<a href="#K2">K2. How can I use fetchmail with IPv6 and
-IPsec?</a><br/>
-<a href="#K3">K3. How can I get fetchmail to work with
-ssh?</a><br/>
-<a href="#K4">K4. What do I have to do to use the IMAP-GSS
-protocol?</a><br/>
+<a href="#K2">K2. How can I use fetchmail with IPv6 and IPsec?</a><br/>
+<a href="#K3">K3. How can I get fetchmail to work with ssh?</a><br/>
+<a href="#K4">K4. What do I have to do to use the IMAP-GSS protocol?</a><br/>
 <a href="#K5">K5. How can I use fetchmail with SSL?</a><br/>
+<a href="#K6">K6. How can I tell fetchmail not to try TLS if the server
+    advertises it?</a><br/>
 
 <h1>Runtime fatal errors:</h1>
 
-<a href="#R1">R1. Fetchmail isn't working, and -v shows `SMTP
+<a href="#R1">R1. Fetchmail isn't working, and -v shows 'SMTP
 connect failed' messages.</a><br/>
 <a href="#R2">R2. When I try to configure an MDA, fetchmail doesn't
 work.</a><br/>
@@ -148,19 +136,16 @@ file.</a><br/>
 normally otherwise.</a><br/>
 <a href="#R5">R5. Running fetchmail in daemon mode doesn't
 work.</a><br/>
-<a href="#R6">R6. Fetchmail randomly dies with socket
-errors.</a><br/>
+<a href="#R6">R6. Fetchmail randomly dies with socket errors.</a><br/>
 <a href="#R7">R7. Fetchmail running as root stopped working after
 an OS upgrade</a><br/>
 <a href="#R8">R8. Fetchmail is timing out after fetching certain
 messages but before deleting them</a><br/>
-<a href="#R9">R9. Fetchmail is timing out during message
-fetches</a><br/>
+<a href="#R9">R9. Fetchmail is timing out during message fetches</a><br/>
 <a href="#R10">R10. Fetchmail is dying with SIGPIPE.</a><br/>
-<a href="#R11">R11. My server is hanging up or emitting errors on
-CAPA.</a><br/>
-
+<a href="#R11">R11. My server is hanging or emitting errors on CAPA.</a><br/>
+<a href="#R12">R12. Fetchmail isn't working and reports getaddrinfo
+    errors.</a>
 <h1>Hangs and lockups:</h1>
 
 <a href="#H1">H1. Fetchmail hangs when used with pppd.</a><br/>
@@ -216,8 +201,7 @@ mangled.</a><br/>
 <a href="#X7">X7. Some mail attachments are hanging
 fetchmail.</a><br/>
 <a href="#X8">X8. A spurious ) is being appended to my
-messages.</a><br/>
+messages.</a><br/> 
 
 <h1>Other problems:</h1>
 
@@ -241,7 +225,10 @@ working?</a><br/>
 messages over and over?</a><br/>
 <a href="#O10">O10. Why is the received date on all my messages the
 same?</a><br/>
+<a href="#O11">O11. I keep getting messages that say "Repoll
+immediately" in my logs.</a><br/>
+<a href="#O12">O12. Fetchmail no longer expunges mail on a 451 SMTP response.</a><br/>
+<a href="#O13">O13. I want timestamp information in my fetchmail logs.</a>
 
 <h1>Answers:</h1>
 
@@ -283,7 +270,7 @@ fetchmail sources?</a></h2>
 
 <p>The latest HTML FAQ is available alongside the latest fetchmail
 sources at the fetchmail home page: <a
-href="http://www.tuxedo.org/~esr/fetchmail">http://www.tuxedo.org/~esr/fetchmail</a>.
+href="http://fetchmail.berlios.de/">http://fetchmail.berlios.de/</a>.
 You can also usually find both in the <a
 href="http://sunsite.unc.edu/pub/Linux/system/mail/pop/!INDEX.html">
 POP mail tools directory on Sunsite</a>.</p>
@@ -415,7 +402,11 @@ tin-like kill files).</p>
 
 <p>You can do spam filtering better with procmail or maildrop on
 the server side and (if you're the server sysadmin) sendmail.cf
-domain exclusions. You can do other policy things better with the
+domain exclusions. If you really want fetchmail to do it from the
+client side, yse a <code>preconnect</code> command to call
+<a href='http://mailfilter.sourceforge.net/'>mailfilter</a>.</p>
+
+<p>You can do other policy things better with the
 <code>mda</code> option and script wrappers around fetchmail. If
 it's a prime-time-vs.-non-prime-time issue, ask yourself whether a
 wrapper script called from crontab would do the job.</p>
@@ -427,9 +418,10 @@ fetchmail simple so it stays reliable.</p>
 
 <p>For reasons fetchmail doesn't have other commonly-requested
 features (such as password encryption, or multiple concurrent polls
-from the same instance of fetchmail) see the <a
-href="http://www.tuxedo.org/~esr/fetchmail/design-notes.html">design
-notes</a>.</p>
+from the same instance of fetchmail) see <a
+href="esrs-design-notes.html">ESR's design
+notes</a>. Note that this document is partially obsoleted by the 
+<a href="design-notes.html">updated design notes.</a></p>
 
 <p>Fetchmail is a mature project, no longer in constant active
 development. It is no longer my top project, and I am going to be
@@ -478,7 +470,7 @@ extended test to see if my theory about the critical features of
 the Linux development model is correct.</p>
 
 <p>The experiment was a success. I wrote a paper about it titled <a
-href="http://www.tuxedo.org/~esr/writings/cathedral.html">The
+href="http://www.catb.org/~esr/writings/cathedral.html">The
 Cathedral and the Bazaar</a> which was first presented at Linux
 Kongress '97 in Bavaria and very well received there. It was also
 given at Atlanta Linux Expo, Linux Pro '97 in Warsaw, and the first
@@ -502,7 +494,7 @@ fetchmail?</a></h2>
 <p>Fetchmail will work with any POP, IMAP, ETRN, or ODMR server
 that conforms to the relevant RFCs (and even some outright broken
 ones like <a href="#S2">Microsoft Exchange</a> and <a
-href="#S12">Novell GroupWise</a>). This doesn't mean it works
+href="#S6">Novell GroupWise</a>). This doesn't mean it works
 equally well with all, however. POP2 servers, and POP3 servers
 without LAST, limit fetchmail's capabilities in various ways
 described on the manual page.</p>
@@ -511,12 +503,12 @@ described on the manual page.</p>
 with POP3 support preconfigured (but beware of the horribly broken
 POP3 server mentioned in <a href="#D2">D2</a>). An increasing
 minority also feature IMAP (you can detect IMAP support by running
-fetchmail in AUTO mode, or by using the `Probe for supported
+fetchmail in AUTO mode, or by using the 'Probe for supported
 protocols' function in the fetchmailconf utility).</p>
 
 <p>If you have the option, we recommend using or installing an
 IMAP4rev1 server; it has the best facilities for tracking message
-`seen' states. It also recovers from interrupted connections more
+'seen' states. It also recovers from interrupted connections more
 gracefully than POP3, and enables some significant performance
 optimizations. The new <a
 href="ftp://ftp.cac.washington.edu/imap/imap.tar.Z">IMAP 2000</a>
@@ -572,19 +564,19 @@ en clair?</a></h2>
 ranges from trivial to impossible. It may even be next to
 useless.</p>
 
-<p>Most people use fetchmail over phone wires, which are hard to
-tap. Anybody with the skill and resources to do this could get into
-your server mailbox with much less effort by subverting the server
-host. So if your provider setup is modem wires going straight into
-a service box, you probably don't need to worry.</p>
+<p>Most people use fetchmail over phone wires (whether plain old
+copper or DSL), which are hard to tap. Anybody with the skill and
+resources to do this could get into your server mailbox with much less
+effort by subverting the server host. So if your provider setup is
+phone-company wire going straight into a service box, you probably
+don't need to worry.</p>
 
-<p>In general there is little point in trying to secure your
-fetchmail transaction unless you trust the security of the server
-host you are retrieving mail from. Your vulnerability is more
-likely to be an insecure local network on the server end (e.g. to
-somebody with a TCP/IP packet sniffer intercepting Ethernet traffic
-between the modem concentrator you dial in to and the mailserver
-host).</p>
+<p>In general there is little point in trying to secure your fetchmail
+transaction unless you trust the security of the server host you are
+retrieving mail from. Your vulnerability is more likely to be an
+insecure local network on the server end (e.g. to somebody with a
+TCP/IP packet sniffer intercepting Ethernet traffic between the modem
+concentrator or DSL POP you dial in to and the mailserver host).</p>
 
 <p>Having realized this, you need to ask whether password
 encryption alone will really address your security exposure. If you
@@ -644,7 +636,7 @@ response.</p>
 
 <p>If you are fetching mail from a CompuServe POP3 account, you can
 use their RPA authentication (which works much like APOP). See <a
-href="#S3">S3</a> for details. If you are fetching mail from
+href="#I1">I1</a> for details. If you are fetching mail from
 Microsoft Exchange using IMAP, you will be able to use NTLM.</p>
 
 <p>Your POP3 server may have the RFC1938 OTP capability to use
@@ -658,7 +650,7 @@ password but it will not be sent en clair.</p>
 
 <p>You can get both POP3 and IMAP OTP patches from <a id="cmetz"
 name="cmetz">Craig Metz</a> at <a
-href="http://www.inner.net/pub/">http://www.inner.net/pub/</a>.</p>
+href="http://www.inner.net/opie">http://www.inner.net/opie</a>.</p>
 
 <p>These patches use a SASL authentication method named "X-OTP"
 because there is not currently a standard way to do this; fetchmail
@@ -692,11 +684,11 @@ mail to the wrong machine!</p>
 
 <p>Use the <code>smtpaddress</code> option to force the appended
 hostname to one with a (fixed) IP address of 127.0.0.1 in your
-<code>/etc/hosts</code>. (The name `localhost' will usually work;
+<code>/etc/hosts</code>. (The name 'localhost' will usually work;
 or you can use the IP address itself).</p>
 
 <p>Only one fetchmail option interacts directly with your IP
-address, `<code>interface</code>'. This option can be used to set
+address, '<code>interface</code>'. This option can be used to set
 the gateway device and restrict the IP address range fetchmail will
 use. Such a restriction is sometimes useful for security reasons,
 especially on multihomed sites. See <a href="#C3">C3</a>.</p>
@@ -833,10 +825,10 @@ to run GNU make and better things will happen.</p>
 fetchmail lexer.</a></h2>
 
 <p>In the immortal words of Alan Cox the last time this came up:
-``Take the Solaris lex and stick it up the backside of a passing
+"Take the Solaris lex and stick it up the backside of a passing
 Sun salesman, then install <a
 href="ftp://ftp.gnu.org/pub/non-gnu/flex/">flex</a> and use that.
-All will be happier.''</p>
+All will be happier."</p>
 
 <p>I couldn't have put it better myself, and ain't going to try
 now.</p>
@@ -851,28 +843,28 @@ build fetchmail.</a></h2>
 <p>If you get errors resembling these</p>
 
 <pre>
-mxget.o(.text+0x35): undefined referenceto `__res_search' 
-mxget.o(.text+0x99): undefined reference to`__dn_skipname' 
-mxget.o(.text+0x11c): undefined reference to`__dn_expand' 
-mxget.o(.text+0x187): undefined reference to`__dn_expand' 
+mxget.o(.text+0x35): undefined referenceto '__res_search'
+mxget.o(.text+0x99): undefined reference to '__dn_skipname'
+mxget.o(.text+0x11c): undefined reference to '__dn_expand'
+mxget.o(.text+0x187): undefined reference to '__dn_expand'
 make: *** [fetchmail] Error 1
 </pre>
 
 <p>then you must add "-lresolv" to the LOADLIBS line in your
-Makefile once you have installed the `bind' package.</p>
+Makefile once you have installed the 'bind' package.</p>
 
 <p>If you get link errors involving <tt>dcgettext</tt>, like
 this:</p>
 
 <pre>
-rcfile_y.o: In function `yyparse':
-rcfile_y.o(.text+0x3aa): undefined reference to `dcgettext__'
-rcfile_y.o(.text+0x4f2): undefined reference to `dcgettext__'
-rcfile_y.o(.text+0x5ee): undefined reference to `dcgettext__'
-rcfile_y.o: In function `yyerror':
-rcfile_y.o(.text+0xc7c): undefined reference to `dcgettext__'
-rcfile_y.o(.text+0xcc8): undefined reference to `dcgettext__'
-rcfile_y.o(.text+0xdf9): more undefined references to `dcgettext__' follow
+rcfile_y.o: In function 'yyparse':
+rcfile_y.o(.text+0x3aa): undefined reference to 'dcgettext__'
+rcfile_y.o(.text+0x4f2): undefined reference to 'dcgettext__'
+rcfile_y.o(.text+0x5ee): undefined reference to 'dcgettext__'
+rcfile_y.o: In function 'yyerror':
+rcfile_y.o(.text+0xc7c): undefined reference to 'dcgettext__'
+rcfile_y.o(.text+0xcc8): undefined reference to 'dcgettext__'
+rcfile_y.o(.text+0xdf9): more undefined references to 'dcgettext__' follow
 </pre>
 
 <p>reconfigure with <tt>configure --with-included-gettext</tt>.
@@ -900,7 +892,7 @@ option to a <tt>fetchdomains</tt> option.</p>
 
 <h3>If your file predates 5.8.3</h3>
 
-<p>The `via localhost' special case for use with ssh tunnelling is
+<p>The 'via localhost' special case for use with ssh tunnelling is
 gone. Use the %h feature of <tt>plugin</tt> instead.</p>
 
 <h3>If your file predates 5.6.8</h3>
@@ -924,7 +916,7 @@ password (CRAM-MD5, X-OTP); and only if it the server doesn't
 support any of those will it ship your password en clair.</p>
 
 <p>Setting the <tt>preauth</tt> option to any value other than
-`password' will prevent from looking for a password in your
+'password' will prevent from looking for a password in your
 <tt>.netrc</tt> file or querying for it at startup time.</p>
 
 <h3>If your file predates 5.1.0</h3>
@@ -943,9 +935,9 @@ startup.</p>
 
 <h3>If your file predates 4.0.6:</h3>
 
-<p>Just after the `<code>via</code>' option was introduced, I
-realized that the interactions between the `<code>via</code>',
-`<code>aka</code>', and `<code>localdomains</code>' options were
+<p>Just after the '<code>via</code>' option was introduced, I
+realized that the interactions between the '<code>via</code>',
+'<code>aka</code>', and '<code>localdomains</code>' options were
 out of control. Their behavior had become complex and confusing, so
 much so that I was no longer sure I understood it myself. Users
 were being unpleasantly surprised.</p>
@@ -956,9 +948,9 @@ orthogonal, but may have broken some complex multidrop
 configurations.</p>
 
 <p>Any multidrop configurations that depended on the name just
-after the `<code>poll</code>' or `<code>skip</code>' keyword being
+after the '<code>poll</code>' or '<code>skip</code>' keyword being
 still interpreted as a DNS name for address-matching purposes, even
-in the presence of a `<code>via</code>' option, will break.</p>
+in the presence of a '<code>via</code>' option, will break.</p>
 
 <p>It is theoretically possible that other unusual configurations
 (such as those using a non-FQDN poll name to generate Kerberos IV
@@ -968,19 +960,19 @@ contact the maintainer.</p>
 
 <h3>If your file predates 3.9.5:</h3>
 
-<p>The `<code>remote</code>' keyword has been changed to
-`<code>folder</code>'. If you try to use the old keyword, the
+<p>The '<code>remote</code>' keyword has been changed to
+'<code>folder</code>'. If you try to use the old keyword, the
 parser will utter a warning.</p>
 
 <h3>If your file predates 3.9:</h3>
 
 <p>It could be because you're using a .fetchmailrc that's written
 in the old popclient syntax without an explicit
-`<code>username</code>' keyword leading the first user entry
+'<code>username</code>' keyword leading the first user entry
 attached to a server entry.</p>
 
 <p>This error can be triggered by having a user option such as
-`<code>keep</code>' or `<code>fetchall</code>' before the first
+'<code>keep</code>' or '<code>fetchall</code>' before the first
 explicit username. For example, if you write</p>
 
 <pre>
@@ -988,7 +980,7 @@ poll openmail protocol pop3
     keep user "Hal DeVore" there is hdevore here
 </pre>
 
-<p>the `<code>keep</code>' option will generate an entire user
+<p>the '<code>keep</code>' option will generate an entire user
 entry with the default username (the name of fetchmail's invoking
 user).</p>
 
@@ -997,12 +989,12 @@ complicated the configuration file grammar and confused users.</p>
 
 <h3>If your file predates 2.8:</h3>
 
-<p>The `<code>interface</code>', `<code>monitor</code>' and
-`<code>batchlimit</code>' options changed after 2.8.</p>
+<p>The '<code>interface</code>', '<code>monitor</code>' and
+'<code>batchlimit</code>' options changed after 2.8.</p>
 
-<p>They used to be global options with `<code>set</code>' syntax
+<p>They used to be global options with '<code>set</code>' syntax
 like the batchlimit and logfile options. Now they're per-server
-options, like `<code>protocol</code>'.</p>
+options, like '<code>protocol</code>'.</p>
 
 <p>If you had something like</p>
 
@@ -1011,11 +1003,11 @@ options, like `<code>protocol</code>'.</p>
 </pre>
 
 <p>in your .fetchmailrc file, simply delete that line and insert
-`interface sl0/10.0.2.15' in the server options part of your
-`defaults' declaration.</p>
+'interface sl0/10.0.2.15' in the server options part of your
+'defaults' declaration.</p>
 
-<p>Do similarly for any `<code>monitor</code>' or
-`<code>batchlimit</code>' options.</p>
+<p>Do similarly for any '<code>monitor</code>' or
+'<code>batchlimit</code>' options.</p>
 
 <hr/>
 <h2><a id="F2" name="F2">F2. The .fetchmailrc parser won't accept
@@ -1034,27 +1026,27 @@ any token following "username" or "password" is a string.</p>
 
 <hr/>
 <h2><a id="F3" name="F3">F3. The .fetchmailrc parser won't accept
-my host or username beginning with `no'.</a></h2>
+my host or username beginning with 'no'.</a></h2>
 
-<p>See <a href="#F2">F2</a> You're caught in an unfortunate crack
-between the newer-style syntax for negated options (`no keep', `no
-rewrite' etc.) and the older style run-on syntax (`nokeep',
-`norewrite' etc.).</p>
+<p>See <a href="#F2">F2</a>. You're caught in an unfortunate crack
+between the newer-style syntax for negated options ('no keep', 'no
+rewrite' etc.) and the older style run-on syntax ('nokeep',
+'norewrite' etc.).</p>
 
 <p>Upgrade to a 5.0.6 or later fetchmail, or put string quotes
 around your token.</p>
 
 <hr/>
-<h2><a id="F4" name="F4">F4. I'm getting a `parse error' message I
+<h2><a id="F4" name="F4">F4. I'm getting a 'parse error' message I
 don't understand.</a></h2>
 
 <p>The most common cause of mysterious parse errors is putting a
 server option after a user option. Check the manual page; you'll
 probably find that by moving one or more options closer to the
-`poll' keyword you can eliminate the problem.</p>
+'poll' keyword you can eliminate the problem.</p>
 
 <p>Yes, I know these ordering restrictions are hard to understand.
-Unfortunately, they're necessary in order to allow the `defaults'
+Unfortunately, they're necessary in order to allow the 'defaults'
 feature to work.</p>
 
 <hr/>
@@ -1084,9 +1076,9 @@ containing:</p>
 <p>It won't work if the second line is just "<code>user
 itz</code>". This is silly.</p>
 
-<p>It seems fetchmail decides to RECP the `default local user'
+<p>It seems fetchmail decides to RECP the 'default local user'
 (i.e. the uid running fetchmail) unless there are local aliases,
-and the `default' aliases (itz-&gt;itz) don't count. They
+and the 'default' aliases (itz-&gt;itz) don't count. They
 should.</p>
 
 <p>Answer:</p>
@@ -1094,7 +1086,7 @@ should.</p>
 <p>No they shouldn't. I thought about this for a while, and I don't
 much like the conclusion I reached, but it's unavoidable. The
 problem is that fetchmail has no way to know, in general, that a
-local user `itz' actually exists.</p>
+local user 'itz' actually exists.</p>
 
 <p>"Ah!" you say, "Why doesn't it check the password file to see if
 the remote name matches a local one?" Well, there are two
@@ -1121,9 +1113,9 @@ daemon to get killed when I log out?</a></h2>
 
 <p>The easiest way to dispatch fetchmail on logout (which will work
 reliably only if you have just one login going at any time) is to
-arrange for the command `fetchmail -q' to be called on logout.
-Under bash, you can arrange this by putting `fetchmail -q' in the
-file `~/.bash_logout'. Most csh variants execute `~/.logout' on
+arrange for the command 'fetchmail -q' to be called on logout.
+Under bash, you can arrange this by putting 'fetchmail -q' in the
+file '~/.bash_logout'. Most csh variants execute '~/.logout' on
 logout. For other shells, consult your shell manual page.</p>
 
 <p>Automatic startup/shutdown of fetchmail is a little harder to
@@ -1173,9 +1165,9 @@ sl0.</li>
 ppp0.</li>
 
 <li>If you're using a direct connection over a local network such
-as an ethernet, use the command `netstat -r' to look at your
+as an ethernet, use the command 'netstat -r' to look at your
 routing table. Try to match your mailserver name to a destination
-entry; if you don't see it in the first column, use the `default'
+entry; if you don't see it in the first column, use the 'default'
 entry. The device name will be in the rightmost column.</li>
 </ol>
 
@@ -1186,7 +1178,7 @@ entry. The device name will be in the rightmost column.</li>
 10.0.2.15, with no netmask specified. (It's possible to configure
 slirp to present other addresses, but that's the default.)</li>
 
-<li>If you have a static IP address, run `ifconfig &lt;device&gt;',
+<li>If you have a static IP address, run 'ifconfig &lt;device&gt;',
 where &lt;device&gt; is whichever one you've determined. Use the IP
 address given after "inet addr:". That is the IP address for your
 end of the link, and is what you need. You won't need to specify a
@@ -1313,16 +1305,16 @@ Allman tells me that if <code>FEATURE(always_add_domain)</code> is
 included in sendmail's configuration, you can leave the
 <code>rewrite</code> option off.</p>
 
-<p>If your sendmail complains ``sendmail does not relay'', make
+<p>If your sendmail complains "sendmail does not relay", make
 sure your sendmail.cf file says <code>Cwlocalhost</code> so that
-sendmail recognizes `localhost' as a name of its host.</p>
+sendmail recognizes 'localhost' as a name of its host.</p>
 
 <p>If you're mailing from another machine on your local network,
 also ensure that its IP address is listed in ip_allow or name in
 name_allow (usually in /etc/mail/)</p>
 
 <p>If you find that your sendmail doesn't like the address
-`FETCHMAIL-DAEMON@localhost' (which is used in the bouncemail that
+'FETCHMAIL-DAEMON@localhost' (which is used in the bouncemail that
 fetchmail generates), you may have to set
 <code>FEATURE(accept_unqualified_senders)</code>.</p>
 
@@ -1364,18 +1356,18 @@ Mmdrop, P=/usr/bin/procmail, F=lsDFMqSPfhnu9J,
     A=procmail -Y -a $u -d $h
 </pre>
 
-<p>For both hacks, you have to declare `<code>envelope
+<p>For both hacks, you have to declare '<code>envelope
 "Delivered-To:"</code>' on the fetchmail side, to put the virtual
-domain (e.g. `domain.com') with RELAY permission into your access
-file and to add a line reading `<code>domain.com
-local:local-pop-user</code>' for the first and `<code>domain.com
+domain (e.g. 'domain.com') with RELAY permission into your access
+file and to add a line reading '<code>domain.com
+local:local-pop-user</code>' for the first and '<code>domain.com
 mdrop:local-pop-user</code>' for the second hack to your
 mailertable.</p>
 
 <p>You will notice that if the mail already has a Delivered-To
 header, sendmail will not add another.&#160; Further, editing
 sendmail.cf directly is not very comfortable.&#160; Solutions for
-both problems can be found in Peter `Rattacresh' Backes' `hybrid'
+both problems can be found in Peter 'Rattacresh' Backes' 'hybrid'
 patch against sendmail.&#160; Have a look at it, you can find it in
 the contrib subdirectory.</p>
 
@@ -1408,14 +1400,14 @@ then, providing the local hosts are also using qmail, it is
 possible to set up one fetchmail link to be reliably collect the
 mail for an entire domain.</p>
 
-<p>One of the basic features of qmail is the `Delivered-To:'
+<p>One of the basic features of qmail is the 'Delivered-To:'
 message header. Whenever qmail delivers a message to a local
 mailbox it puts the username and hostname of the envelope recipient
 on this line. The major reason for this is to prevent mail
 loops.</p>
 
 <p>To set up qmail to batch mail for a disconnected site the
-ISP-mailhost will have normally put that site in its `virtualhosts'
+ISP-mailhost will have normally put that site in its 'virtualhosts'
 control file so it will add a prefix to all mail addresses for this
 site. This results in mail sent to
 'username@userhost.userdom.dom.com' having a 'Delivered-To:' line
@@ -1437,11 +1429,11 @@ but a string matching the user host name is likely.</p>
 <p>To use this line you must:</p>
 
 <ol>
-<li>Ensure the option `envelope Delivered-To:' is in the fetchmail
+<li>Ensure the option 'envelope Delivered-To:' is in the fetchmail
 config file.</li>
 
 <li>Ensure you have a localdomains containing 'userdom.dom.com' or
-`userhost.dom.com' respectively.</li>
+'userhost.dom.com' respectively.</li>
 </ol>
 
 <p>So far this reliably delivers messages to the correct machine of
@@ -1460,17 +1452,17 @@ local machine. Simply create a dot-qmail file called
 
 <p>Peter Wilson adds:</p>
 
-<p>``My ISP uses "alias-unzzippedcom-" as the prefix, which means
+<p>"My ISP uses "alias-unzzippedcom-" as the prefix, which means
 that I need to name my file ".qmail-unzzippedcom-default". This is
 due to qmail's assumption that a message sent to user-xyz is
 handled by the file ~user/.qmail-xyz (or
-~user/.qmail-default).''</p>
+~user/.qmail-default)."</p>
 
 <p>Luca Olivetti adds:</p>
 
 <p>If you aren't using qmail locally, or you don't want to set up
 the alias mechanism described above, you can use the option
-`<code>qvirtual "mbox-userstr-"</code>' in your fetchmail config
+'<code>qvirtual "mbox-userstr-"</code>' in your fetchmail config
 file to strip the prefix from the local user name.</p>
 
 <hr/>
@@ -1483,9 +1475,9 @@ exim?</a></h2>
 addresses you pass to it have to be canonical (e.g. with a fully
 qualified hostname part). Therefore fetchmail tries to pass fully
 qualified RCPT TO addresses. But exim does not by default accept
-`localhost' as a fully qualified domain. This can be fixed.</p>
+'localhost' as a fully qualified domain. This can be fixed.</p>
 
-<p>In exim.conf, add `localhost' to your local_domains declaration
+<p>In exim.conf, add 'localhost' to your local_domains declaration
 if it's not already present. For example, the author's site at
 thyrsus.com would have a line reading:</p>
 
@@ -1533,7 +1525,7 @@ work fine out of the box.</p>
 single fetchmail session, smail sometimes delivers them in an order
 other than received-date order. This can be annoying because it
 scrambles conversational threads. This is not fetchmail's problem,
-it is an smail `feature' and has been reported to the maintainers
+it is an smail 'feature' and has been reported to the maintainers
 as a bug.</p>
 
 <p>Very recent smail versions require an
@@ -1566,8 +1558,9 @@ Notes?</a></h2>
 
 <p>The Lotus Notes SMTP gateway tries to deduce when it should
 convert \n to \r\n, but its rules are not the intuitive and
-correct-for-RFC822 ones. Use `forcecr'.</p>
+correct-for-RFC822 ones. Use 'forcecr'.</p>
 
+<hr/>
 <h2><a id="T7" name="T7">T7. How can I use fetchmail with Courier
 IMAP?</a></h2>
 
@@ -1576,7 +1569,7 @@ IMAP?</a></h2>
 <code>smtphost</code> or <code>smtpaddress</code>.</p>
 
 <hr/>
-<h2><a href="T8">T8. How can I use fetchmail with vbmailshield?</a></h2>
+<h2><a name="T8">T8. How can I use fetchmail with vbmailshield?</a></h2>
 
 <p>vbmailshield's SMTP interpreter is broken.  It doesn't understand RSET.</p>
 
@@ -1627,12 +1620,14 @@ a terminating newline get the POP3 message termination dot emitted
 with no terminating newline added. This will hang fetchmail or any
 other RFC-compliant server. IMAP is alleged to work OK, though.</p>
 
-<p>Older versions of Exchange are semi-usable.</p>
+<p>Older versions of Exchange are semi-usable.  They randomly drop
+attachments on the floor, though.  Microsoft acknowledges this
+as a known bug and apparently has no plans to fix it.</p>
 
 <p>Fetchmail using IMAP supports the proprietary NTLM mode used
 with M$ Exchange servers. To enable this, configure fetchmail with
 the --enable-NTLM option and recompile it. Specify a user option
-value that looks like `user@domain': the part to the left of the @
+value that looks like 'user@domain': the part to the left of the @
 will be passed as the username and the part to the right as the
 NTLM domain.</p>
 
@@ -1747,13 +1742,77 @@ explicitly to your mailbox name.</li>
 <p>But, the best option involves a tactical nuclear weapon (an old
 ASROC will do), pissing off a lot people who live downwind from
 Redmond, and your choice of any Linux, NetBSD, FreeBSD, or Solaris
-CD.</p>
+CD-ROM.</p>
+
+<hr/>
+<h2><a id="S3" name="S3">S3. How can I use fetchmail with HP
+OpenMail?</a></h2>
+
+<p>No special configuration is required, but OpenMail versions
+prior to 6.0 have an annoying bug similar to the big one in <a
+href="#S2">Microsoft Exchange</a>. The message sizes it gives in
+the LIST are rounded to the nearest 1024 bytes. It also has a nasty
+habit of discarding headers it doesn't recognize, such as X- and
+Resent- headers.</p>
+
+<p>As with M$ Exchange, the only real fix for these problems is to
+get a POP (or preferably IMAP) server that isn't brain-dead.
+OpenMail's project manager claims these bugs have been fixed in
+6.0.</p>
+
+<p>We've had a more recent report (December 2001) that the TOP
+command fails, returning only one line regrardless of its argument,
+on something identifying itself as "OpenMail POP3 interface".</p>
+
+<hr/>
+<h2><a id="S4" name="S4">S4. How can I use fetchmail with Novell GroupWise?</a></h2>
+
+<p>The Novell GroupWise IMAP server would be better named
+GroupFoolish; it is (according to the designer of IMAP) unusably
+broken. Among other things, it doesn't include a required content
+length in its BODY[TEXT] response.</p>
+
+<p>Fetchmail works around this problem, but we strongly recommend
+voting with your dollars for a server that isn't brain-dead. If you
+stick with code as shoddy as GroupWise seems to be, you will
+probably pay for it with other problems.</p>
+
+<hr/>
+<h2><a id="S5" name="S5">S5. How can I use fetchmail with
+InterChange?</a></h2>
+
+<p>You can't. At least not if you want to be able to see
+attachments. InterChange has a bug similar to the MailMax server;
+it reports the message length with attachments but doesn't download
+them on TOP or RETR.</p>
+
+<p>On Jan 9 2001, the people at InfiniteMail sent me mail informing
+me that their new 3.61.08 release of InterChange fixes this
+problem. I don't have any reports one way or the other yet.</p>
+
+<hr/>
+<h2><a id="S6" name="S6">S6. How can I use fetchmail with MailMax?</a></h2>
+
+<p>You can't. At least not if you want to be able to see
+attachments. MailMax has a bug; it reports the message length with
+attachments but doesn't download them on TOP or RETR.</p>
+
+<p>Also, we're told that TOP sometimes fails to retrieve the entire
+message even when enough lines have been specified. The MailMax
+developers have acknowledged this bug as of 4 May 2000, but there
+is no fix yet. If you must use this server, force RETR with the
+<tt>fetchall</tt> option.</p>
+
+<hr/>
+<h2><a id="S7" name="S7">S7. How can I use fetchmail with FTGate?</a></h2>
 
-<p>I'll provide the CD.</p>
+<p>The FTGate V2 server (and possibly older versions as well) has a
+weird bug. It answers OK twice to a TOP request! Use the
+<code>fetchall</code> option to force use of RETR and work around
+this bug.</p>
 
 <hr/>
-<h2><a id="S3" name="S3">S3. How can I use fetchmail with
-CompuServe RPA?</a></h2>
+<h2><a id="I1" name="I1">I1. How can I use fetchmail with CompuServe RPA?</a></h2>
 
 <p>First, make sure your fetchmail has the RPA support compiled in.
 Stock fetchmail binaries (such as you might get from an RPM) don't.
@@ -1764,12 +1823,12 @@ good to go, otherwise you'll have to build your own from sources
 directions).</p>
 
 <p>Give your CompuServe pass-phrase in lower case as your password.
-Add `@compuserve.com' to your user ID so that it looks like `user
+Add '@compuserve.com' to your user ID so that it looks like 'user
 &lt;UserID&gt;@compuserve.com', where &lt;UserID&gt; can be either
 your numerical userID or your E-mail nickname. An RPA-enabled
 fetchmail will automatically check for csi.com in the POP server's
 greeting line. If that's found, and your user ID ends with
-`@compuserve.com', it will query the server to see if it is
+'@compuserve.com', it will query the server to see if it is
 RPA-capable, and if so do an RPA transaction rather than a
 plain-text password handshake.</p>
 
@@ -1792,7 +1851,7 @@ poll non-rpa.csi.com via "pop.site1.csi.com" with proto POP3 and options no dns
 </pre>
 
 <hr/>
-<h2><a id="S4" name="S4">S4. How can I use fetchmail with Demon
+<h2><a id="I2" name="I2">I2. How can I use fetchmail with Demon
 Internet's SDPS?</a></h2>
 
 <h3>Single-drop mode</h3>
@@ -1839,7 +1898,7 @@ accept mail sent to user@my-company.co.uk)</p>
 
 <p>Note that Demon may delete mail on the server which is more than
 30 days old; see their <a
-href="http://www.demon.net/helpdesk/products/mail/sdps-tech.shtm">POP3
+href="http://www.demon.net/helpdesk/products/mail/sdps-tech.shtml">POP3
 page</a> for details.</p>
 
 <h3>The SDPS extension</h3>
@@ -1865,12 +1924,12 @@ greeting line; if you're accessing Demon Internet through a proxy
 it may fail. To force SDPS mode, pick "sdps" as your protocol.</p>
 
 <hr/>
-<h2><a id="S5" name="S5">S5. How can I use fetchmail with usa.net's
+<h2><a id="I3" name="I3">I3. How can I use fetchmail with usa.net's
 servers?</a></h2>
 
-<p>Enable `<code>fetchall</code>'. A user reports that the 2.2
+<p>Enable '<code>fetchall</code>'. A user reports that the 2.2
 version of USA.NET's POP server reports that you must use the
-`<code>fetchall</code>' option to make sure that all of the mail is
+'<code>fetchall</code>' option to make sure that all of the mail is
 retrieved, otherwise some may be left on the server. This is almost
 certainly a server bug.</p>
 
@@ -1878,7 +1937,7 @@ certainly a server bug.</p>
 don't handle the TOP command properly, either. Regardless of the
 argument you give it, they retrieve only about 10 lines of the
 message. Fetchmail normally uses TOP for message retrieval in order
-to avoid marking messages seen, but `<code>fetchall</code>' forces
+to avoid marking messages seen, but '<code>fetchall</code>' forces
 it to use RETR instead.</p>
 
 <p>Also, we're told USA.NET adds a ton of hops to your messages.
@@ -1890,27 +1949,7 @@ servers. They seem to be chronically flaky. We recommend finding
 another provider.)</p>
 
 <hr/>
-<h2><a id="S6" name="S6">S6. How can I use fetchmail with HP
-OpenMail?</a></h2>
-
-<p>No special configuration is required, but OpenMail versions
-prior to 6.0 have an annoying bug similar to the big one in <a
-href="#S2">Microsoft Exchange</a>. The message sizes it gives in
-the LIST are rounded to the nearest 1024 bytes. It also has a nasty
-habit of discarding headers it doesn't recognize, such as X- and
-Resent- headers.</p>
-
-<p>As with M$ Exchange, the only real fix for these problems is to
-get a POP (or preferably IMAP) server that isn't brain-dead.
-OpenMail's project manager claims these bugs have been fixed in
-6.0.</p>
-
-<p>We've had a more recent report (December 2001) that the TOP
-command fails, returning only one line regrardless of its argument,
-on something identifying itself as "OpenMail POP3 interface".</p>
-
-<hr/>
-<h2><a id="S7" name="S7">S7. How can I use fetchmail with geocities
+<h2><a id="I4" name="I4">I4. How can I use fetchmail with geocities
 POP3 servers?</a></h2>
 
 <p>Nathan Cutler reports that the the mail.geocities.com POP3
@@ -1935,14 +1974,27 @@ already been read.</p>
 Geocities are lame, you should boycott them anyway.</p>
 
 <hr/>
-<h2><a id="S8" name="S8">S8. How can I use fetchmail with Hotmail?</a></h2>
+<h2><a id="I5" name="I5">I5. How can I use fetchmail with Hotmail or Lycos Webmail?</a></h2>
 
-<p>You can't, yet. But <a
-href="http://linux.cudeso.be/linuxdoc/gotmail.php">gotmail</a> might
-be what you need.</p>
+<p>You can't directly. But you can use fetchmail with hotmail or lycos
+webmail with the help of the <a
+href='http://people.freenet.de/courierdave/'>HotWayDaemon</a>
+daemon. You don't even need to install hotwayd as a daemon in
+<samp>inetd.conf</samp> but can use it as a plugin. Your
+configuration should look like this:</p>
+
+<pre>
+poll localhost protocol pop3 tracepolls
+   plugin "/usr/local/sbin/hotwayd -l 0 -p yourproxy:yourproxyport"
+   username "youremail@hotmail.com" password "yourpassword"
+   fetchall
+</pre>
+
+<p>As a second option you may consider using <a
+href="http://linux.cudeso.be/linuxdoc/gotmail.php">gotmail</a>.</p>
 
 <hr/>
-<h2><a id="S9" name="S9">S9. How can I use fetchmail with MSN?</a></h2>
+<h2><a id="I6" name="I6">I6. How can I use fetchmail with MSN?</a></h2>
 
 <p>You can't. MSN uses something that looks like POP3, except the
 authentication part is nonstandard. And of course they don't
@@ -1957,8 +2009,7 @@ MSN; if so, somebody should report it so this FAQ can be
 corrected.</p>
 
 <hr/>
-<h2><a id="S10" name="S10">S10. How can I use fetchmail with
-SpryNet?</a></h2>
+<h2><a id="I7" name="I7">I7. How can I use fetchmail with SpryNet?</a></h2>
 
 <p>The SpryNet POP3 servers mark a message queried with TOP as
 seen. This means that if your connection drops in mid-message, it
@@ -1967,70 +2018,22 @@ may end up invisibly stuck on your mail spool. Use the
 next cycle.</p>
 
 <hr/>
-<h2><a id="S11" name="S11">S11. How can I use fetchmail with
-FTGate?</a></h2>
+<h2><a id="I8" name="I8">I8. How can I use fetchmail with comcast.net?</a></h2>
 
-<p>The FTGate V2 server (and possibly older versions as well) has a
-weird bug. It answers OK twice to a TOP request! Use the
-<code>fetchall</code> option to force use of RETR and work around
-this bug.</p>
-
-<hr/>
-<h2><a id="S12" name="S12">S12. How can I use fetchmail with
-MailMax?</a></h2>
-
-<p>You can't. At least not if you want to be able to see
-attachments. MailMax has a bug; it reports the message length with
-attachments but doesn't download them on TOP or RETR.</p>
+<p>Stock fetchmail will work with a comcast.net server...<em>but</em>
+the Maillennium POP3 server comcat uses seems to have an 80K limit on
+the length of downloaded messages if you use POP3 TOP to retrieve.
+Anything larger is silently truncated.  Don't mistake this for a
+fetchmail bug. (Reported July 2003.)</p>
 
-<p>Also, we're told that TOP sometimes fails to retrieve the entire
-message even when enough lines have been specified. The MailMax
-developers have acknowledged this bug as of 4 May 2000, but there
-is no fix yet. If you must use this server, force RETR with the
-<tt>fetchall</tt> option.</p>
+<p>Workaround: use the <tt>fetchall</tt> option.</p>
 
 <hr/>
-<h2><a id="S13" name="S13">S13. How can I use fetchmail with Novell
-GroupWise?</a></h2>
-
-<p>The Novell GroupWise IMAP server would be better named
-GroupFoolish; it is (according to the designer of IMAP) unusably
-broken. Among other things, it doesn't include a required content
-length in its BODY[TEXT] response.</p>
-
-<p>Fetchmail works around this problem, but we strongly recommend
-voting with your dollars for a server that isn't brain-dead. If you
-stick with code as shoddy as GroupWise seems to be, you will
-probably pay for it with other problems.</p>
-
-<hr/>
-<h2><a id="S14" name="S14">S14. How can I use fetchmail with
-InterChange?</a></h2>
-
-<p>You can't. At least not if you want to be able to see
-attachments. InterChange has a bug similar to the MailMax server;
-it reports the message length with attachments but doesn't download
-them on TOP or RETR.</p>
-
-<p>On Jan 9 2001, the people at InfiniteMail sent me mail informing
-me that their new 3.61.08 release of InterChange fixes this
-problem. I don't have any reports one way or the other yet.</p>
-
-<h2><a id="S15" name="S15">S15. How can I use fetchmail with
-GMX?</a></h2>
-
-<p>Use IMAP. The GMX StreamProxy server behaves badly on
-authentication failures, sending back a non-conformant error
-message (missing an <code>-ERR</code> tag) that confuses
-fetchmail.</p>
-
-<hr/>
-<h2><a id="K1" name="K1">K1. How can I use fetchmail with
-SOCKS?</a></h2>
+<h2><a id="K1" name="K1">K1. How can I use fetchmail with SOCKS?</a></h2>
 
 <p>Giuseppe Guerini added a --with-socks option that supports
 linking with socks library. If you specify the value of this option
-as ``yes'', the configure script will try to find the Rconnect
+as "yes", the configure script will try to find the Rconnect
 library and set the makefile up to link it. You can also specify a
 directory containing the Rconnect library.</p>
 
@@ -2043,28 +2046,12 @@ IPsec?</a></h2>
 
 <p>To use fetchmail with IPv6, you need a system that supports
 IPv6, the "Basic Socket Interface Extensions for IPv6" (RFC 2133).
-This currently means that you need to have a BSD/OS or NetBSD
-system with the NRL IPv6+IPsec software distribution or a Linux
-system with a 2.2 or later kernel and net-tools. It should not be
-hard to build fetchmail on other IPv6 implementations if you can
-port the inet6-apps kit.</p>
-
-<p>To use fetchmail with networking security (read: IPsec), you
-need a system that supports IPsec, the API described in the
-"Network Security API for Sockets"
-(draft-metz-net-security-api-01.txt), and the inet6-apps kit. This
-currently means that you need to have a BSD/OS or NetBSD system
-with the NRL IPv6+IPsec software distribution. A Linux IPsec
-implementation supporting this API will probably appear in the
-coming months.</p>
+</p>
 
 <p>The NRL IPv6+IPsec software distribution can be obtained from:
 <a
 href="http://web.mit.edu/network/isakmp">http://web.mit.edu/network/isakmp</a></p>
 
-<p>The inet6-apps kit can be obtained from <a
-href="http://ftp.ps.pl/pub/linux/IPv6/inet6-apps/">http://ftp.ps.pl/pub/linux/IPv6/inet6-apps/</a>.</p>
-
 <p>More information on using IPv6 with Linux can be obtained
 from:</p>
 
@@ -2072,14 +2059,6 @@ from:</p>
 <li><a
 href="http://www.bieringer.de/linux/IPv6/IPv6-HOWTO/IPv6-HOWTO.html">
 http://www.bieringer.de/linux/IPv6/IPv6-HOWTO/IPv6-HOWTO.html</a></li>
-
-<li><a
-href="http://www.ipv6.inner.net/ipv6">http://www.ipv6.inner.net/ipv6</a>
-(via IPv6)</li>
-
-<li><a
-href="http://www.inner.net/ipv6">http://www.inner.net/ipv6</a> (via
-IPv4)</li>
 </ul>
 
 <hr/>
@@ -2190,20 +2169,101 @@ poll MYSERVER port 993 plugin "openssl s_client -connect %h:%p"
         protocol imap username MYUSERNAME password MYPASSWORD
 </pre>
 
+<p>You should note that SSL is only secure against a "man-in-the-middle"
+attack if the client is able to verify that the peer's public key is the
+correct one, and has not been substituted by an attacker. fetchmail can do
+this in one of two ways: by verifying the SSL certificate, or by checking
+the fingerprint of the peer's public key.</p>
+
+<p>There are three parts to SSL certificate verification: checking that the
+domain name in the certificate matches the hostname you asked to connect to;
+checking that the certificate expiry date has not passed; and checking that
+the certificate has been signed by a known Certificate Authority (CA). This
+last step takes some preparation, as you need to install the root
+certificates of all the CA's which you might come across.</p>
+
+<p>The easiest way to do this is using the root CA keys supplied in the
+OpenSSL distribution, which means you need to download and unpack the
+source tarball from www.openssl.org. Once you have done that:</p>
+
+<ol>
+<li><code>mkdir /etc/ssl/certs</code></li>
+<li>in the openssl-x.x.x/certs directory: <code>cp *.pem /etc/ssl/certs/</code></li>
+<li>in the openssl-x.x.x/tools directory: edit c_rehash and set
+<code>$dir="/etc/ssl"</code></li>
+<li>run "perl c_rehash". This generates a number of symlinks within the
+/etc/ssl/certs/ directory</li>
+</ol>
+
+<p>Now in .fetchmailrc, set option sslcertpath to point to this
+directory:</p>
+
+<pre>
+poll pop3.example.com proto pop3 uidl no dns
+  user foobar@example.com password xyzzy is foobar ssl sslcertpath /etc/ssl/certs
+</pre>
+
+<p>If the server certificate has not been signed by a known CA (e.g. it is a
+self-signed certificate), then this certificate validation will always
+fail.</p>
+
+<p>Certificate verification is always attempted. If it fails, by default a
+warning is printed but the connection carries on (which means you are not
+protected against attack). If your server's certificate has been properly
+set up and verifies correctly, then add the "sslcertck" option to enforce
+validation. If your server doesn't have a valid certificate though (e.g. it
+has a self-signed certificate) then it will never verify, and the only way
+you can protect yourself is by checking the fingerprint.</p>
+
+<p>To check the peer fingerprint: first use fetchmail -v once to connect to
+the host, at a time when you are pretty sure that there is no attack in
+progress (e.g. you are not traversing any untrusted network to reach the
+server). Make a note of the fingerprint shown. Now embed this in your
+.fetchmailrc using the sslfingerprint option: e.g.</p>
+
+<pre>
+poll pop3.example.com proto pop3 uidl no dns
+  user foobar@example.com password xyzzy is foobar ssl sslfingerprint "67:3E:02:94:D3:5B:C3:16:86:71:37:01:B1:3B:BC:E2"
+</pre>
+
+<p>When you next connect, the public key presented by the server will be
+verified against the fingerprint given. If it's different, it may mean that
+a man-in-the-middle attack is in progress - or it might just mean that the
+server changed its key. It's up to you to determine which has happened.</p>
+
+<hr/>
+<h2><a id="K6" name="K6">K6. How can I tell fetchmail not to use TLS
+       if the server advertises it?</a></h2>
+
+<p>Some servers advertise STLS (POP3) or STARTTLS (IMAP), and fetchmail
+will automatically attempt TLS negotiation if SSL was enabled at compile
+time.  This can however cause problems if the upstream didn't configure
+his certificates properly.</p>
+
+<p>In order to prevent fetchmail from trying TLS (STLS, STARTTLS)
+negotiation, add this option:</p>
+
+<pre>sslproto ssl23</pre>
+
+<p>This restricts fetchmail's SSL/TLS protocol choice from the default
+"SSLv2, SSLv3, TLSv1" to the two SSL variants, disabling TLSv1. Note
+however that this causes the connection to be unencrypted unless an
+encrypting &quot;plugin&quot; is used or SSL is requested explicitly.</p>
+
 <hr/>
 <h2><a id="R1" name="R1">R1. Fetchmail isn't working, and -v shows
-`SMTP connect failed' messages.</a></h2>
+'SMTP connect failed' messages.</a></h2>
 
 <p>Fetchmail itself is probably working, but your SMTP port 25
 listener is down or inaccessible.</p>
 
 <p>The first thing to check is if you can telnet to port 25 on your
-smtp host (which is normally `localhost' unless you've specified an
+smtp host (which is normally 'localhost' unless you've specified an
 smtp option in your .fetchmailrc or on the command line) and get a
 greeting line from the listener. If the SMTP host is inaccessible
 or the listener is down, fix that first.</p>
 
-<p>In Red Hat Linux 6.9, SMTP is disabled by default. To fix this,
+<p>In Red Hat Linux 6.x, SMTP is disabled by default. To fix this,
 set "DAEMON=yes" in your /etc/sysconfig/sendmail file, then restart
 sendmail by running "/sbin/service sendmail restart".</p>
 
@@ -2212,7 +2272,7 @@ most benign and typical problem is that the listener had a
 momentary seizure due to resource exhaustion while fetchmail was
 polling it -- process table full or some other problem that stopped
 the listener process from forking. If your SMTP host is not
-`localhost' or something else in /etc/hosts, the fetchmail glitch
+'localhost' or something else in /etc/hosts, the fetchmail glitch
 could also have been caused by transient nameserver failure.</p>
 
 <p>Try running fetchmail -v again; if it succeeds, you had one of
@@ -2277,7 +2337,7 @@ fetchmail doesn't work.</a></h2>
 problem in <a href="#X1">X1</a>.)</p>
 
 <p>Try sending yourself test mail and retrieving it using the
-command-line options `<code>-k -m cat</code>'. This will dump
+command-line options '<code>-k -m cat</code>'. This will dump
 exactly what fetchmail retrieves to standard output (plus the
 Received line fetchmail itself adds to the headers).</p>
 
@@ -2389,7 +2449,7 @@ certain messages but before deleting them</a></h2>
 
 <p>There's a TCP/IP stalling problem under Redhat 6.0 (and possibly
 other recent Linuxes) that can cause this symptom. Brian Boutel
-writes:&lt;&lt;/p&gt;</p>
+writes:</p>
 
 <blockquote>
 <p>TCP timestamps are turned on on my Linux boxes (I assume it's
@@ -2437,19 +2497,36 @@ sendmail instance dies. The problem is messages with a single dot
 at start of a text line.</p>
 
 <hr/>
-<h2><a id="R11" name="R11">R11. My server is hanging up or emitting
+<h2><a id="R11" name="R11">R11. My server is hanging or emitting
 errors on CAPA.</a></h2>
 
 <p>Your POP3 server is broken. You can work around this with the
 declaration <tt>auth password</tt> in your .fetchmailrc.</p>
 
+<hr/>
+<h2><a id="R12" name="R12">R12. Fetchmail isn't working and reports
+       getaddrinfo errors.</a></h2>
+<ol><li>Make sure you haven't mistyped the host name or address, and that
+    your DNS is working. If you cannot fix DNS, give the numeric host
+    literal, for instance, 192.168.0.1</li>
+    <li>Make sure your <code>/etc/services</code> file (or other
+    services database) contains the necessary service entries. If you
+    cannot fix the services database, use the --port option and give the
+    numeric port address. Common port addresses
+    are:<table>
+       <tr><th>service</th><th>port</th></tr>
+       <tr><td>IMAP</td><td>143</td></tr>
+       <tr><td>IMAP+SSL</td><td>993</td></tr>
+       <tr><td>POP3</td><td>110</td></tr>
+       <tr><td>POP3+SSL</td><td>995</td></tr>
+</table></li></ol>
 <hr/>
 <h2><a id="H1" name="H1">H1. Fetchmail hangs when used with
 pppd.</a></h2>
 
-<p>Your problem may be with pppd's `demand' option. We have a
+<p>Your problem may be with pppd's 'demand' option. We have a
 report that fetchmail doesn't play well with it, but works with
-pppd if `demand' is turned off. We have no idea why this is.</p>
+pppd if 'demand' is turned off. We have no idea why this is.</p>
 
 <hr/>
 <h2><a id="H2" name="H2">H2. Fetchmail hangs during the MAIL FROM
@@ -2568,7 +2645,7 @@ violation of the POP3 RFCs, but a good idea in a world of flaky
 phone lines). Then it will re-queue any message that was being
 downloaded at hangup time. Still, qpopper may require a noticeable
 amount of time to do deletions and clean up its queue. (Fetchmail
-waits a bit before retrying in order to avoid a `lock busy'
+waits a bit before retrying in order to avoid a 'lock busy'
 error.)</p>
 
 <hr/>
@@ -2582,14 +2659,14 @@ description of the <code>antispam&gt;</code> option) from the
 listener. No interrupt can cause it to lose mail.</p>
 
 <p>However, IMAP2bis has a design problem in that its normal fetch
-command marks a message `seen' as soon as the fetch command to get
+command marks a message 'seen' as soon as the fetch command to get
 it is sent down. If for some reason the message isn't actually
 delivered (you take a line hit during the download, or your port 25
 listener can't find enough free disk space, or you interrupt the
-delivery in mid-message) that `seen' message can lurk invisibly in
+delivery in mid-message) that 'seen' message can lurk invisibly in
 your server mailbox forever.</p>
 
-<p>Workaround: add the `<code>fetchall</code>' keyword to your
+<p>Workaround: add the '<code>fetchall</code>' keyword to your
 fetch options.</p>
 
 <p>Solution: switch to an <a href="http://www.imap.org">IMAP4</a>
@@ -2603,15 +2680,15 @@ multidrop mail is going to root anyway.</a></h2>
 recipient names it parses out of To/Cc/envelope-header lines as
 matching the name of the mailserver machine. To check this, run
 fetchmail in foreground with -v -v on. You will probably see a lot
-of messages with the format ``line rejected, %s is not an alias of
-the mailserver'' or ``no address matches; forwarding to %s.''</p>
+of messages with the format "line rejected, %s is not an alias of
+the mailserver" or "no address matches; forwarding to %s."</p>
 
 <p>These errors usually indicate some kind of DNS configuration
 problem either on the server or your client machine.</p>
 
-<p>The easiest workaround is to add a `<code>via</code>' option (if
+<p>The easiest workaround is to add a '<code>via</code>' option (if
 necessary) and add enough aka declarations to cover all of your
-mailserver's aliases, then say `<code>no dns</code>'. This will
+mailserver's aliases, then say '<code>no dns</code>'. This will
 take DNS out of the picture (though it means mail may be
 uncollected if it's sent to an alias of the mailserver that you
 don't have listed).</p>
@@ -2644,7 +2721,7 @@ setting up a UUCP feed.</p>
 may do (though you <em>are</em> going to get hurt by some mailing
 list software; see the caveats under THE USE AND ABUSE OF MULTIDROP
 MAILBOXES on the man page). If you want to try it, the way to do it
-is with the `<code>localdomains</code>' option.</p>
+is with the '<code>localdomains</code>' option.</p>
 
 <p>In general, if you use localdomains you need to make sure of two
 other things:</p>
@@ -2652,12 +2729,12 @@ other things:</p>
 <p><strong>1. You've actually set up your .fetchmailrc entry to
 invoke multidrop mode.</strong></p>
 
-<p>Many people set a `<code>localdomains</code>' list and then
+<p>Many people set a '<code>localdomains</code>' list and then
 forget that fetchmail wants to see more than one name (or the
-wildcard `*') in a `<code>here</code>' list before it will do
+wildcard '*') in a '<code>here</code>' list before it will do
 multidrop routing.</p>
 
-<p><strong>2. You may have to set `no envelope'.</strong></p>
+<p><strong>2. You may have to set 'no envelope'.</strong></p>
 
 <p>Normally, multidrop mode tries to deduce an envelope address
 from a message before parsing the To/Cc/Bcc lines (this enables it
@@ -2667,7 +2744,7 @@ recipient address in the To lines).</p>
 <p>Some ways of accumulating a whole domain's messages in a single
 server mailbox mean it all ends up with a single envelope address
 that is useless for rerouting purposes. You may have to set
-`<code>no envelope</code>' to prevent fetchmail from being
+'<code>no envelope</code>' to prevent fetchmail from being
 bamboozled by this.</p>
 
 <p>Check also answer <a href="#T1">T1</a> on a reliable way to do
@@ -2704,13 +2781,13 @@ won't be, and this problem should go away.</p>
 <h2><a id="M5" name="M5">M5. I'm seeing long DNS delays before each
 message is processed.</a></h2>
 
-<p>Use the `<code>aka</code>' option to pre-declare as many of your
+<p>Use the '<code>aka</code>' option to pre-declare as many of your
 mailserver's DNS names as you can. When an address's host part
 matches an aka name, no DNS lookup needs to be done to check
 it.</p>
 
 <p>If you're sure you've pre-declared all of your mailserver's DNS
-names, you can use the `<code>no dns</code>' option to prevent
+names, you can use the '<code>no dns</code>' option to prevent
 other hostname parts from being looked up at all.</p>
 
 <p>Sometimes delays are unavoidable. Some SMTP listeners try to
@@ -2787,11 +2864,11 @@ mailserver's theory of who the message was addressed to.</p>
 
 <p>Some (unusual) mailserver configurations will generate extra
 Received lines which you need to skip. To arrange this, use the
-optional skip prefix argument of the `envelope' option; you may
-need to say something like `<code>envelope 1 Received</code>' or
-`<code>envelope 2 Received</code>'.</p>
+optional skip prefix argument of the 'envelope' option; you may
+need to say something like '<code>envelope 1 Received</code>' or
+'<code>envelope 2 Received</code>'.</p>
 
-<h3>The `by' clause doesn't contain a mailserver alias:</h3>
+<h3>The 'by' clause doesn't contain a mailserver alias:</h3>
 
 <p>When fetchmail parses a Received line that looks like</p>
 
@@ -2801,10 +2878,10 @@ Received: from send103.yahoomail.com (send103.yahoomail.com [205.180.60.92])
     for &lt;ksturgeon@fbceg.org&gt;; Wed, 9 Sep 1998 17:01:59 -0700
 </pre>
 
-<p>it checks to see if `iserv.ttns.net' is a DNS alias of your
-mailserver before accepting `ksturgeon@fbceg.org' as an envelope
+<p>it checks to see if 'iserv.ttns.net' is a DNS alias of your
+mailserver before accepting 'ksturgeon@fbceg.org' as an envelope
 address. This check might fail if your DNS were misconfigured, or
-if you were using `no dns' and had failed to declare iserv.ttns.net
+if you were using 'no dns' and had failed to declare iserv.ttns.net
 as an alias of your server.</p>
 
 <hr/>
@@ -2846,7 +2923,7 @@ installing a current version of <em>deliver</em>. If this doesn't
 work, try to figure out which other program in your mail path is
 inserting the blank line and replace that. If you can't do either
 of these things, pick a different MDA (such as procmail) and
-declare it with the `<code>mda</code>' option.</p>
+declare it with the '<code>mda</code>' option.</p>
 
 <hr/>
 <h2><a id="X2" name="X2">X2. My mail client can't see a Subject
@@ -2876,7 +2953,7 @@ messages on From lines. We have one report that the 2.1 version of
 the BSD popper program (as distributed on Solaris 2.5 and
 elsewhere) is broken this way.</p>
 
-<p>You can test this. Declare an mda of `cat' and send yourself one
+<p>You can test this. Declare an mda of 'cat' and send yourself one
 piece of mail containing "From" at start of a line. If you see a
 split message, your POP/IMAP server is at fault. Upgrade to a more
 recent version.</p>
@@ -2897,7 +2974,7 @@ sendmail.cf file. There will likely be a line something like</p>
 Mlocal, P=/usr/bin/procmail, F=lsDFMShP, S=10, R=20/40, A=procmail -Y -d $u
 </pre>
 
-<p>describing your local delivery agent. Try inserting the `E'
+<p>describing your local delivery agent. Try inserting the 'E'
 option in the flags part (the F= string). This will make sendmail
 turn each dangerous start-of-line From into a &gt;From, preventing
 programs further downstream from acting up.</p>
@@ -3015,21 +3092,37 @@ this has the side effect of forcing RETR use.</p>
 <h2><a id="X6" name="X6">X6. My mail attachments are being dropped
 or mangled.</a></h2>
 
-<p>This isn't fetchmail's doing -- fetchmail never drops lines in
-message bodies or attachments. It may be your POP server, or it may
-be the sender's mail user agent (or a bad combination of both).</p>
+<p>Fetchmail doesn't discard attachments; fetchmail doesn't have any idea
+that attachments are there.  Fetchmail treats the body of each message as
+an uninterpreted byte stream and passes it through without alteration.
+If you are not receiving attachments through fetchmail, it is because 
+your mailserver is not sending them to you.</p>
 
-<p>The Mail Max POP3 server and the InterChange and Imail IMAP
-servers are known to simply drop MIME attachments when uploading
-messages. We've had sporadic reports of problems with Microsoft
-Exchange and Outlook servers. Windows- and NT-based POP servers
+<p>The fix for this is to replace your mailserver with one that works.
+If its operating system makes this difficult, you should replace its
+operating system with one that works. Windows- and NT-based POP servers
 seem especially prone to mangle attachments. If you are running one
 of these, replacing your server with a Unix machine is probably the
 only effective solution.</p>
 
+<p>We've had sporadic reports of problems with Microsoft Exchange and 
+Outlook servers.  These sometimes randomly fail to ship 
+attachments to your client.  This is a known bug, acknowledged by
+Microsft.</p>
+
+<p>They may also mangle the attachments they do pass through.  If you
+see unreadable attachments with a ContentType of "application/x-tnef",
+you're having this problem.  The <a
+href="http://world.std.com/~damned/software.html">TNEF</a> utility may
+help.</p>
+
+<p>The Mail Max POP3 server and the InterChange and Imail IMAP
+servers are known to simply drop MIME attachments when uploading
+messages.</p>
+
 <p>We've also had a report that Lotus Notes sometimes trashes the
 MIME type of messages. In particular, it seems to modify MIME
-headers introducing type application/pdf, mangling the type to
+headers of type application/pdf, mangling the type to
 application/octet-stream. It may corrupt other MIME types as
 well.</p>
 
@@ -3045,12 +3138,6 @@ the MIME parts in the body. This doesn't work. (I have heard a
 rumor that this bug is scheduled to be fixed in Domino release 6;
 you can find a workaround at contrib/domino.)</p>
 
-<p>Another rich source of attachment problems is Microsoft Exchange
-and Microsoft Outlook. If you see unreadable attachments with a
-ContentType of "application/x-tnef", you're having this problem.
-The <a href="http://world.std.com/~damned/software.html">TNEF</a>
-utility may help.</p>
-
 <p>Rob Funk explains: Unfortunately there also remain many mail
 user agents that don't write correct MIME messages. One big
 offender is Sun MailTool attachments, which are formatted enough
@@ -3229,7 +3316,7 @@ the header is dumped to all my terminal sessions.</a></h2>
 <p>Fetchmail uses the local sendmail to perform final delivery,
 which Netscape and other clients doesn't do; the announcement of
 new messages is done by a daemon that sendmail pokes. There should
-be a ``biff'' command to control this. Type</p>
+be a "biff" command to control this. Type</p>
 
 <pre>
 biff n
@@ -3238,11 +3325,11 @@ biff n
 <p>to turn it off. If this doesn't work, try the command</p>
 
 <pre>
-chmod -x `tty`
+chmod -x $(tty)
 </pre>
 
 <p>which is essentially what <code>biff -n</code> will do. If this
-doesn't work, comment out any reference to ``comsat'' in your
+doesn't work, comment out any reference to "comsat" in your
 /etc/inetd.conf file and restart inetd.</p>
 
 <p>In Slackware Linux distributions, the last line in /etc/profile
@@ -3398,7 +3485,7 @@ is write-locked by the other instance yours can neither mark
 messages seen or delete them. The solution is to either (a) wait
 for the other client to finish, or (b) terminate it.</p>
 
-<p>James Stevens &lt;James.Stevens@kyzo.com&gt; writes:</p>
+<p>James Stevens &lt;James.Stevens at kyzo.com&gt; writes:</p>
 
 <p><em>We had a Linux box dialing the Net and collecting mail from
 an NT POP3 server. Fetchmail was correctly collecting and deleting
@@ -3434,14 +3521,54 @@ messages the same?</a></h2>
 <p>This is a design choice in your MTA, not fetchmail. It's taking
 the received date from the last Received header.</p>
 
+<hr />
+<h2><a name="O11">O11. I keep getting messages that say "Repoll
+immediately" in my logs.</a></h2>
+
+<p>This is your server barfing on the CAPA probe that fetchmail sends.</p>
+
+<p>If you run fetchmail in daemon mode (say "set daemon 600"), you will
+get the message only once per run.</p>
+
+<p>If you set an authentication method explicitly (say, with
+<code>auth password</code>), you will never get the message.</p>
+
+<hr />
+<h2><a name="O12">O12. Fetchmail no longer expunges mail on a 451 SMTP response.</a></h2>
+
+<p>This is a feature, not a bug.</p>
+
+<p>Any 4xx response (like 451) indicates a transient (temporary) error.
+This means that the mail could be accepted if retried later. Lookup
+failures are normally transient errors as a mail should not get
+rejected if a dns server is unreachable or down.</p>
+
+<p>A permanent reject response is of the form 5xx (like 550).</p>
+
+<p>You could tell your SMTP server to not lookup any addresses if you are
+not keen on checking the sender addresses. This problem typically
+occurs if your mail server is not checking the sender addresses, but
+your local server is.</p>
+
+<p>Or you could declare <code>antispam 451</code>.</p>
+
+<p>Or, you could check your nameserver configuration and query logs for
+dns errors.</p>
+
+<p>All these issues are not related to fetchmail directly.</p>
+
+<hr />
+<h2><a name="O13">O13. I want timestamp information in my fetchmail logs.</a></h2>
+
+<p>Write a <code>preconnect</code> command in your configuration file that
+does something like "date &gt;&gt; $HOME/Procmail/fetchmail.log".</p>
+
 <hr/>
 <table width="100%" cellpadding="0" summary="Canned page footer">
 <tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home
 Page</a></td>
-<td width="30%" align="center">To <a href="/~esr/sitemap.html">Site
-Map</a></td>
-<td width="30%" align="right">$Date: 2002/09/04 13:58:24 $</td>
+<td width="30%" align="right">$Date: 2004/01/13 08:46:00 $</td>
 </tr>
 </table>