~ari-tczew/ubuntu/dapper/fetchmail/fix-CVE-2008-2711

« back to all changes in this revision

Viewing changes to FAQ

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt
  • Date: 2006-02-07 12:12:13 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20060207121213-onurwfrzdlzlzxnt
Tags: 6.3.2-2ubuntu1
* Resynchronise with Debian. This brings the new upstream version to dapper
  since upstream support for 6.2 was dropped.
* Drop debian/patches/CVE-2005-4348.dpatch, upstream now.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
   (This document was generated from fetchmail-FAQ.html)
 
1
  (This file was generated from ../fetchmail-FAQ.html)
2
2
 
3
 
   Back to Fetchmail Home Page To Site Map $Date: 2003/10/10 19:10:29 $
4
3
     _________________________________________________________________
5
4
 
6
5
                  Frequently Asked Questions About Fetchmail
8
7
   Before reporting any bug, please read G3 for advice on how to include
9
8
   diagnostic information that will get your bug fixed as quickly as possible.
10
9
 
 
10
   Note that this FAQ is occasionally updated from the SVN repository and
 
11
   speaks in the past tense ("since") about a fetchmail release that is not yet
 
12
   available. Please try a release candidate for that version in case you need
 
13
   the new option.
 
14
 
11
15
   If you have a question or answer you think ought to be added to this FAQ
12
 
   list, mail it to fetchmail's maintainer, Eric S. Raymond, at
13
 
   esr@thyrsus.com.
14
 
 
15
 
                              General questions:
 
16
   list, file it to one of the trackers at our BerliOS project site or post to
 
17
   one of the fetchmail mailing lists (see below).
 
18
 
 
19
                                   Contents
 
20
 
 
21
   Detailed Contents
 
22
   G. General problems
 
23
   B. Build-time problems
 
24
   F. Fetchmail configuration file grammar questions
 
25
   C. Configuration questions
 
26
   T. How to make fetchmail play nice with various MTAs
 
27
   S. How to make fetchmail work with various servers
 
28
   I. How to fetchmail work with specific ISPs
 
29
   K. How to set up well-known security and authentication
 
30
   R. Runtime fatal errors
 
31
   H. Hangs and lockups
 
32
   D. Disappearing mail
 
33
   M. Multidrop-mode problems
 
34
   X. Mangled mail
 
35
   O. Other problems
 
36
 
 
37
                               Detailed Contents
 
38
 
 
39
General problems
16
40
 
17
41
   G1. What is fetchmail and why should I bother?
18
42
   G2. Where do I find the latest FAQ and fetchmail sources?
31
55
   G15. Is there a way in fetchmail to support disconnected IMAP mode?
32
56
   G16. How will fetchmail perform under heavy loads?
33
57
 
34
 
                             Build-time problems:
 
58
Build-time problems
35
59
 
36
 
   B1. Make coughs and dies when building on FreeBSD.
 
60
   [DEL: B1. Make coughs and dies when building on FreeBSD. :DEL] 
37
61
   B2. Lex bombs out while building the fetchmail lexer.
38
62
   B3. I get link failures when I try to build fetchmail.
39
63
   B4. I get build failures in the intl directory.
40
64
 
41
 
                Fetchmail configuration file grammar questions:
 
65
Fetchmail configuration file grammar questions
42
66
 
43
67
   F1. Why does my old .fetchmailrc no longer work?
44
68
   F2. The .fetchmailrc parser won't accept my all-numeric user name.
45
69
   F3. The .fetchmailrc parser won't accept my host or username beginning with
46
 
   `no'.
47
 
   F4. I'm getting a `parse error' message I don't understand.
 
70
   'no'.
 
71
   F4. I'm getting a 'parse error' message I don't understand.
48
72
 
49
 
                           Configuration questions:
 
73
Configuration questions
50
74
 
51
75
   C1. Why do I need a .fetchmailrc when running as root on my own machine?
52
76
   C2. How can I arrange for a fetchmail daemon to get killed when I log out?
56
80
   C6. Fetchmail works OK started up manually, but not from an init script.
57
81
   C7. How can I forward mail to another host?.
58
82
 
59
 
              How to make fetchmail play nice with various MTAs:
 
83
How to make fetchmail play nice with various MTAs
60
84
 
61
85
   T1. How can I use fetchmail with sendmail?
62
86
   T2. How can I use fetchmail with qmail?
67
91
   T7. How can I use fetchmail with Courier IMAP?
68
92
   T8. How can I use fetchmail with vbmailshield?
69
93
 
70
 
               How to make fetchmail work with various servers:
 
94
How to make fetchmail work with various servers
71
95
 
72
96
   S1. How can I use fetchmail with qpopper?
73
97
   S2. How can I use fetchmail with Microsoft Exchange?
77
101
   S6. How can I use fetchmail with MailMax?
78
102
   S7. How can I use fetchmail with FTGate?
79
103
 
80
 
                   How to fetchmail work with specific ISPs:
 
104
How to fetchmail work with specific ISPs
81
105
 
82
106
   I1. How can I use fetchmail with Compuserve RPA?
83
107
   I2. How can I use fetchmail with Demon Internet's SDPS?
84
108
   I3. How can I use fetchmail with usa.net's servers?
85
109
   I4. How can I use fetchmail with geocities POP3 servers?
86
 
   I5. How can I use fetchmail with Hotmail?
 
110
   I5. How can I use fetchmail with Hotmail or Lycos Webmail?
87
111
   I6. How can I use fetchmail with MSN?
88
112
   I7. How can I use fetchmail with SpryNet?
89
 
   I8. How can I use fetchmail with comcast.net?
 
113
   I8. How can I use fetchmail with comcast.net or other Maillennium servers?
90
114
 
91
 
         How to set up well-known security and authentication methods:
 
115
How to set up well-known security and authentication methods
92
116
 
93
117
   K1. How can I use fetchmail with SOCKS?
94
118
   K2. How can I use fetchmail with IPv6 and IPsec?
95
119
   K3. How can I get fetchmail to work with ssh?
96
120
   K4. What do I have to do to use the IMAP-GSS protocol?
97
121
   K5. How can I use fetchmail with SSL?
98
 
 
99
 
                             Runtime fatal errors:
100
 
 
101
 
   R1. Fetchmail isn't working, and -v shows `SMTP connect failed' messages.
 
122
   K6. How can I tell fetchmail not to try TLS if the server advertises it?
 
123
 
 
124
Runtime fatal errors
 
125
 
 
126
   R1. Fetchmail isn't working, and -v shows 'SMTP connect failed' messages.
102
127
   R2. When I try to configure an MDA, fetchmail doesn't work.
103
128
   R3. Fetchmail dumps core when given an invalid rc file.
104
129
   R4. Fetchmail dumps core in -V mode, but operates normally otherwise.
110
135
   R9. Fetchmail is timing out during message fetches
111
136
   R10. Fetchmail is dying with SIGPIPE.
112
137
   R11. My server is hanging or emitting errors on CAPA.
 
138
   R12. Fetchmail isn't working and reports getaddrinfo errors.
113
139
 
114
 
                              Hangs and lockups:
 
140
Hangs and lockups
115
141
 
116
142
   H1. Fetchmail hangs when used with pppd.
117
143
   H2. Fetchmail hangs during the MAIL FROM exchange.
118
144
   H3. Fetchmail hangs while fetching mail.
119
145
 
120
 
                              Disappearing mail:
 
146
Disappearing mail
121
147
 
122
148
   D1. I think I've set up fetchmail correctly, but I'm not getting any mail.
123
149
   D2. All my mail seems to disappear after a dropped connection.
124
150
   D3. Mail that was being fetched when I interrupted my fetchmail seems to
125
151
   have been vanished.
126
152
 
127
 
                           Multidrop-mode problems:
 
153
Multidrop-mode problems
128
154
 
129
155
   M1. I've declared local names, but all my multidrop mail is going to root
130
156
   anyway.
137
163
   as it should.
138
164
   M8. Users are getting multiple copies of messages.
139
165
 
140
 
                                 Mangled mail:
 
166
Mangled mail
141
167
 
142
168
   X1. Spurious blank lines are appearing in the headers of fetched mail.
143
169
   X2. My mail client can't see a Subject line.
148
174
   X7. Some mail attachments are hanging fetchmail.
149
175
   X8. A spurious ) is being appended to my messages.
150
176
 
151
 
                                Other problems:
 
177
Other problems
152
178
 
153
179
   O1. The --logfile option doesn't work if the logfile doesn't exist.
154
180
   O2. Every time I get a POP or IMAP message the header is dumped to all my
167
193
   O11. I keep getting messages that say "Repoll immediately" in my logs.
168
194
   O12. Fetchmail no longer expunges mail on a 451 SMTP response.
169
195
   O13. I want timestamp information in my fetchmail logs.
170
 
 
171
 
                                   Answers:
 
196
   O14. Fetchmail no longer deletes oversized mails with --flush.
 
197
   O15. Fetchmail always retains the first message in the mailbox.
 
198
   O16. Why is the Fetchmail FAQ only available in ISO-216 A4 format? How do I
 
199
   get the FAQ in Letter format?
172
200
     _________________________________________________________________
173
201
 
 
202
                               General problems
 
203
 
174
204
G1. What is fetchmail and why should I bother?
175
205
 
176
206
   Fetchmail is a one-stop solution to the remote mail retrieval problem for
196
226
 
197
227
   If you found this FAQ in the distribution, see the README for fetchmail's
198
228
   full feature list.
199
 
     _________________________________________________________________
200
229
 
201
230
G2. Where do I find the latest FAQ and fetchmail sources?
202
231
 
203
232
   The latest HTML FAQ is available alongside the latest fetchmail sources at
204
 
   the fetchmail home page: http://fetchmail.berlios.de. You can also usually
 
233
   the fetchmail home page: http://fetchmail.berlios.de/. You can also usually
205
234
   find both in the POP mail tools directory on Sunsite.
206
235
 
207
236
   A text dump of this FAQ is included in the fetchmail distribution. Because
208
237
   it freezes at distribution release time, it may not be completely current.
209
 
     _________________________________________________________________
210
238
 
211
239
G3. I think I've found a bug. Will you fix it?
212
240
 
213
 
   Yes I will, provided you include enough diagnostic information for me to go
214
 
   on. Send bugs to fetchmail-users and patches to fetchmail-devel When
215
 
   reporting bugs, please include the following:
 
241
   The first thing you should to is to upgrade to the newest version of
 
242
   fetchmail, and then see if the problem reproduces. So you'll probably save
 
243
   us both time if you upgrade and test with the latest version before sending
 
244
   in a bug report.
 
245
 
 
246
   I will fix bugs, provided you include enough diagnostic information for me
 
247
   to go on. Send bugs to fetchmail-users. When reporting bugs, please include
 
248
   the following:
216
249
    1. Your operating system.
217
250
    2. Your compiler version, if you built from source; otherwise, the name and
218
251
       origin of the RPM or other binary package you installed.
226
259
   suspicion that the bug was triggered by a particular message, please include
227
260
   a copy of the message that triggered the bug.
228
261
 
229
 
   Often, the first thing I will do when you report a bug is tell you to
230
 
   upgrade to the newest version of fetchmail, and then see if the problem
231
 
   reproduces. So you'll probably save us both time if you upgrade and test
232
 
   with the latest version before sending in a bug report.
233
 
 
234
262
   If your bug is something that used to work but stopped working when you
235
263
   upgraded, then you can help pin the bug down by trying intermediate versions
236
264
   of fetchmail until you identify the revision that broke your feature. The
290
318
   way, fetchmail is well enough tested that the easy bugs have long since been
291
319
   found). So if you want your bug fixed rapidly, it is not just sufficient but
292
320
   nearly necessary that you give me a way to reproduce it.
293
 
     _________________________________________________________________
294
321
 
295
322
G4. I have this idea for a neat feature. Will you add it?
296
323
 
297
 
   Probably not. Most of the feature suggestions I get are for ways to set
298
 
   various kinds of administrative policy or add more spam filtering (the most
299
 
   common one, which I used to get about four million times a week and got
300
 
   really tired of, is for tin-like kill files).
 
324
   If it's reasonable for fetchmail and cannot be solved with reasonable effort
 
325
   outside of fetchmail, perhaps.
301
326
 
302
327
   You can do spam filtering better with procmail or maildrop on the server
303
328
   side and (if you're the server sysadmin) sendmail.cf domain exclusions. If
304
 
   you really want fetchmail to do it from the client side, yse a preconnect
 
329
   you really want fetchmail to do it from the client side, use a preconnect
305
330
   command to call mailfilter.
306
331
 
307
332
   You can do other policy things better with the mda option and script
308
333
   wrappers around fetchmail. If it's a prime-time-vs.-non-prime-time issue,
309
334
   ask yourself whether a wrapper script called from crontab would do the job.
310
335
 
311
 
   I'm not going to do these; fetchmail's job is transport, not policy, and I
312
 
   refuse to change it from doing one thing well to attempting many things
313
 
   badly. One of my objectives is to keep fetchmail simple so it stays
314
 
   reliable.
 
336
   fetchmail's first job is transport though, and it should do this well. If a
 
337
   feature would cause fetchmail to deteriorate in other respects, the feature
 
338
   will probably not be added.
315
339
 
316
340
   For reasons fetchmail doesn't have other commonly-requested features (such
317
341
   as password encryption, or multiple concurrent polls from the same instance
318
 
   of fetchmail) see the design notes.
319
 
 
320
 
   Fetchmail is a mature project, no longer in constant active development. It
321
 
   is no longer my top project, and I am going to be quite reluctant to add
322
 
   features that might either jeopardize its stability or involve me in large
323
 
   amounts of coding.
324
 
 
325
 
   All that said, if you have a feature idea that really is about a transport
326
 
   problem that can't be handled anywhere but fetchmail, lay it on me. I'm very
327
 
   accommodating about good ideas.
328
 
     _________________________________________________________________
 
342
   of fetchmail) see ESR's design notes. Note that this document is partially
 
343
   obsoleted by the updated design notes.
329
344
 
330
345
G5. I want to make fetchmail behave like Outlook Express.
331
346
 
334
349
   days, typically to be used with the keep option as a sort of poor man's
335
350
   newsgroup facility. Microsoft's Outlook Express supports this.
336
351
 
337
 
   This feature won't be added either. Repeat after me: fetchmail's job is
338
 
   transport, not policy. If you want this, write a Perl or Python script, to
339
 
   be run from a cron job, that deletes old messages off your maildrop. Send it
340
 
   to me and I'll put it in the contrib directory.
341
 
     _________________________________________________________________
 
352
   This feature is not yet implemented. It may be at a future date, spare time
 
353
   of developers permitting.
342
354
 
343
355
G6. Is there a mailing list for exchanging tips?
344
356
 
345
 
   There is a fetchmail-users list (fetchmail-users@lists.berlios.de) for
 
357
   There is a fetchmail-users list (fetchmail-users@lists.berlios.de) for bug
 
358
   reports and people who want to discuss configuration issues of fetchmail.
 
359
   It's a Mailman list, see
 
360
   http://lists.berlios.de/mailman/listinfo/fetchmail-users.
 
361
 
 
362
   There is a fetchmail-devel list (fetchmail-devel@lists.berlios.de) for
346
363
   people who want to discuss fixes and improvements in fetchmail and help
347
 
   co-develop it. It's a MailMan list, which you can sign up for at
348
 
   http://lists.berlios.de/mailman/listinfo/fetchmail-users. There is also an
 
364
   co-develop it. It's a Mailman list, which you can sign up for at
 
365
   http://lists.berlios.de/mailman/listinfo/fetchmail-devel. There is also an
349
366
   announcements-only list, fetchmail-announce@lists.berlios.de, which you can
350
367
   sign up for at http://lists.berlios.de/mailman/listinfo/fetchmail-announce.
351
 
     _________________________________________________________________
352
368
 
353
369
G7. So, what's this I hear about a fetchmail paper?
354
370
 
366
382
 
367
383
   If you're reading a non-HTML dump of this FAQ, you can find the paper on the
368
384
   Web with a search for that title.
369
 
     _________________________________________________________________
370
385
 
371
386
G8. What is the best server to use with fetchmail?
372
387
 
383
398
   Most modern Unixes (and effectively all Linux/*BSD systems) come with POP3
384
399
   support preconfigured (but beware of the horribly broken POP3 server
385
400
   mentioned in D2). An increasing minority also feature IMAP (you can detect
386
 
   IMAP support by running fetchmail in AUTO mode, or by using the `Probe for
 
401
   IMAP support by running fetchmail in AUTO mode, or by using the 'Probe for
387
402
   supported protocols' function in the fetchmailconf utility).
388
403
 
389
404
   If you have the option, we recommend using or installing an IMAP4rev1
390
 
   server; it has the best facilities for tracking message `seen' states. It
 
405
   server; it has the best facilities for tracking message 'seen' states. It
391
406
   also recovers from interrupted connections more gracefully than POP3, and
392
407
   enables some significant performance optimizations. The new IMAP 2000 is
393
408
   particularly nice, as it supports CRAM-MD5 so you don't have to ship your
404
419
   the Eudora FTP site. Don't use 2.5, which has a rather restrictive license.
405
420
   The 2.5.2 version appears to restore the open-source license of previous
406
421
   versions.
407
 
     _________________________________________________________________
408
422
 
409
423
G9. What is the best mail program to use with fetchmail?
410
424
 
420
434
   ancestor elm, but its excellent handling of MIME and PGP put it in a class
421
435
   by itself. You won't need its built-in POP3 support, though; most of the
422
436
   mutt developers will cheerfully admit that fetchmail's is better :-).
423
 
     _________________________________________________________________
424
437
 
425
438
G10. How can I avoid sending my password en clair?
426
439
 
500
513
   be sent en clair.
501
514
 
502
515
   You can get both POP3 and IMAP OTP patches from Craig Metz at
503
 
   http://www.inner.net/pub/.
 
516
   http://www.inner.net/opie.
504
517
 
505
518
   These patches use a SASL authentication method named "X-OTP" because there
506
519
   is not currently a standard way to do this; fetchmail also uses this method,
509
522
 
510
523
   Finally, you can use SSL for complete end-to-end encryption if you have an
511
524
   SSL-enabled mailserver.
512
 
     _________________________________________________________________
513
525
 
514
526
G11. Is any special configuration needed to use a dynamic IP address?
515
527
 
530
542
   could up forwarding your mail to the wrong machine!
531
543
 
532
544
   Use the smtpaddress option to force the appended hostname to one with a
533
 
   (fixed) IP address of 127.0.0.1 in your /etc/hosts. (The name `localhost'
 
545
   (fixed) IP address of 127.0.0.1 in your /etc/hosts. (The name 'localhost'
534
546
   will usually work; or you can use the IP address itself).
535
547
 
536
548
   Only one fetchmail option interacts directly with your IP address,
537
 
   `interface'. This option can be used to set the gateway device and restrict
 
549
   'interface'. This option can be used to set the gateway device and restrict
538
550
   the IP address range fetchmail will use. Such a restriction is sometimes
539
551
   useful for security reasons, especially on multihomed sites. See C3.
540
552
 
569
581
   in the m4 configuration and do a reconfigure. (In both cases, replace
570
582
   smarthost.here with the actual name of your mailhost.) See the sendmail FAQ
571
583
   for more details.
572
 
     _________________________________________________________________
573
584
 
574
585
G12. Is any special configuration needed to use firewalls?
575
586
 
579
590
   site.
580
591
 
581
592
   The specific recipe for using fetchmail with a firewall is at K1
582
 
     _________________________________________________________________
583
593
 
584
594
G13. Is any special configuration needed to send mail?
585
595
 
597
607
   you have set up something like pppd to automatically dial out when your
598
608
   kernel is called to open a TCP/IP connection, this will ensure that the mail
599
609
   gets out.
600
 
     _________________________________________________________________
601
610
 
602
611
G14. Is fetchmail Y2K-compliant?
603
612
 
607
616
   roll over in 2038, but I doubt it. Timestamps aren't used for anything but
608
617
   log entry generation. Anyway, if you aren't running on a 64-bit machine by
609
618
   then, you'll deserve to lose.
610
 
     _________________________________________________________________
611
619
 
612
620
G15. Is there a way in fetchmail to support disconnected IMAP mode?
613
621
 
614
622
   No. Fetchmail is a mail transport agent, best understood as a protocol
615
623
   gateway between POP3/IMAP servers and SMTP. Disconnected operation requires
616
624
   an elaborate interactive client. It's a very different problem.
617
 
     _________________________________________________________________
618
625
 
619
626
G16. How will fetchmail perform under heavy loads?
620
627
 
635
642
   (which tends to improve bandwidth but not necessarily latency).
636
643
     _________________________________________________________________
637
644
 
638
 
B1. Make coughs and dies when building on FreeBSD.
639
 
 
640
 
   The vendor-supplied make on FreeBSD systems can only be used within
641
 
   FreeBSD's "scope", e.g. the ports collection. Type "gmake" to run GNU make
642
 
   and better things will happen.
643
 
     _________________________________________________________________
 
645
                              Build-time problems
 
646
 
 
647
[DEL: B1. Make coughs and dies when building on FreeBSD. :DEL]
 
648
 
 
649
   As of release 6.3.0, fetchmail's Makefile[.in] should work flawlessly with
 
650
   BSD's portable make used on FreeBSD. With older releases, use GNU make
 
651
   (usually installed as gmake).
644
652
 
645
653
B2. Lex bombs out while building the fetchmail lexer.
646
654
 
647
 
   In the immortal words of Alan Cox the last time this came up: ``Take the
648
 
   Solaris lex and stick it up the backside of a passing Sun salesman, then
649
 
   install flex and use that. All will be happier.''
650
 
 
651
 
   I couldn't have put it better myself, and ain't going to try now.
652
 
 
653
 
   (The same problem has been reported under HP-UX v10.20 and IRIX)
654
 
     _________________________________________________________________
 
655
   fetchmail 6.3.0 and newer ship with the lexer and parser in .c formats, so
 
656
   you do not need to use lex unless you hacked the .l or .y files.
 
657
 
 
658
   fetchmail's lexer has been developed with GNU flex, and the lex tools
 
659
   shipped by some UNIX vendors (HP, SGI, Sun) are known to be incapable of
 
660
   compiling fetchmail's lexer.
655
661
 
656
662
B3. I get link failures when I try to build fetchmail.
657
663
 
658
 
   If you get errors resembling these
659
 
mxget.o(.text+0x35): undefined referenceto `__res_search'
660
 
mxget.o(.text+0x99): undefined reference to`__dn_skipname'
661
 
mxget.o(.text+0x11c): undefined reference to`__dn_expand'
662
 
mxget.o(.text+0x187): undefined reference to`__dn_expand'
 
664
   If you get errors resembling these:
 
665
mxget.o(.text+0x35): undefined referenceto '__res_search'
 
666
mxget.o(.text+0x99): undefined reference to '__dn_skipname'
 
667
mxget.o(.text+0x11c): undefined reference to '__dn_expand'
 
668
mxget.o(.text+0x187): undefined reference to '__dn_expand'
663
669
make: *** [fetchmail] Error 1
664
670
 
665
671
   then you must add "-lresolv" to the LOADLIBS line in your Makefile once you
666
 
   have installed the `bind' package.
667
 
 
668
 
   If you get link errors involving dcgettext, like this:
669
 
rcfile_y.o: In function `yyparse':
670
 
rcfile_y.o(.text+0x3aa): undefined reference to `dcgettext__'
671
 
rcfile_y.o(.text+0x4f2): undefined reference to `dcgettext__'
672
 
rcfile_y.o(.text+0x5ee): undefined reference to `dcgettext__'
673
 
rcfile_y.o: In function `yyerror':
674
 
rcfile_y.o(.text+0xc7c): undefined reference to `dcgettext__'
675
 
rcfile_y.o(.text+0xcc8): undefined reference to `dcgettext__'
676
 
rcfile_y.o(.text+0xdf9): more undefined references to `dcgettext__' follow
677
 
 
678
 
   reconfigure with configure --with-included-gettext. This is due to some
679
 
   brain-damage in the GNU internationalization libraries.
680
 
     _________________________________________________________________
 
672
   have installed the 'bind' package.
 
673
 
 
674
   If you get link errors involving dcgettext, like these:
 
675
rcfile_y.o: In function 'yyparse':
 
676
rcfile_y.o(.text+0x3aa): undefined reference to 'dcgettext__'
 
677
rcfile_y.o(.text+0x4f2): undefined reference to 'dcgettext__'
 
678
rcfile_y.o(.text+0x5ee): undefined reference to 'dcgettext__'
 
679
rcfile_y.o: In function 'yyerror':
 
680
rcfile_y.o(.text+0xc7c): undefined reference to 'dcgettext__'
 
681
rcfile_y.o(.text+0xcc8): undefined reference to 'dcgettext__'
 
682
rcfile_y.o(.text+0xdf9): more undefined references to 'dcgettext__' follow
 
683
 
 
684
   install an up to date version of GNU gettext, reconfigure and rebuild
 
685
   fetchmail. If that does not help, reconfigure with '--disable-nls' added to
 
686
   the "./configure" command and rebuild.
681
687
 
682
688
B4. I get build failures in the intl directory.
683
689
 
684
690
   Reconfigure with --disable-nls and recompile.
685
 
 
686
 
   GNU gettext is an overengineered, fragile pile of crap. I have teetered on
687
 
   the brink of removing support for it entirely several times.
688
691
     _________________________________________________________________
689
692
 
 
693
                Fetchmail configuration file grammar questions
 
694
 
690
695
F1. Why does my old .fetchmailrc file no longer work?
691
696
 
692
697
  If your file predates 5.8.9
696
701
 
697
702
  If your file predates 5.8.3
698
703
 
699
 
   The `via localhost' special case for use with ssh tunnelling is gone. Use
 
704
   The 'via localhost' special case for use with ssh tunnelling is gone. Use
700
705
   the %h feature of plugin instead.
701
706
 
702
707
  If your file predates 5.6.8
717
722
   only if it the server doesn't support any of those will it ship your
718
723
   password en clair.
719
724
 
720
 
   Setting the preauth option to any value other than `password' will prevent
 
725
   Setting the preauth option to any value other than 'password' will prevent
721
726
   from looking for a password in your .netrc file or querying for it at
722
727
   startup time.
723
728
 
735
740
 
736
741
  If your file predates 4.0.6:
737
742
 
738
 
   Just after the `via' option was introduced, I realized that the interactions
739
 
   between the `via', `aka', and `localdomains' options were out of control.
 
743
   Just after the 'via' option was introduced, I realized that the interactions
 
744
   between the 'via', 'aka', and 'localdomains' options were out of control.
740
745
   Their behavior had become complex and confusing, so much so that I was no
741
746
   longer sure I understood it myself. Users were being unpleasantly surprised.
742
747
 
744
749
   redesign simplified the code and made the options more orthogonal, but may
745
750
   have broken some complex multidrop configurations.
746
751
 
747
 
   Any multidrop configurations that depended on the name just after the `poll'
748
 
   or `skip' keyword being still interpreted as a DNS name for address-matching
749
 
   purposes, even in the presence of a `via' option, will break.
 
752
   Any multidrop configurations that depended on the name just after the 'poll'
 
753
   or 'skip' keyword being still interpreted as a DNS name for address-matching
 
754
   purposes, even in the presence of a 'via' option, will break.
750
755
 
751
756
   It is theoretically possible that other unusual configurations (such as
752
757
   those using a non-FQDN poll name to generate Kerberos IV tickets) might also
755
760
 
756
761
  If your file predates 3.9.5:
757
762
 
758
 
   The `remote' keyword has been changed to `folder'. If you try to use the old
 
763
   The 'remote' keyword has been changed to 'folder'. If you try to use the old
759
764
   keyword, the parser will utter a warning.
760
765
 
761
766
  If your file predates 3.9:
762
767
 
763
768
   It could be because you're using a .fetchmailrc that's written in the old
764
 
   popclient syntax without an explicit `username' keyword leading the first
 
769
   popclient syntax without an explicit 'username' keyword leading the first
765
770
   user entry attached to a server entry.
766
771
 
767
 
   This error can be triggered by having a user option such as `keep' or
768
 
   `fetchall' before the first explicit username. For example, if you write
 
772
   This error can be triggered by having a user option such as 'keep' or
 
773
   'fetchall' before the first explicit username. For example, if you write
769
774
poll openmail protocol pop3
770
775
    keep user "Hal DeVore" there is hdevore here
771
776
 
772
 
   the `keep' option will generate an entire user entry with the default
 
777
   the 'keep' option will generate an entire user entry with the default
773
778
   username (the name of fetchmail's invoking user).
774
779
 
775
780
   The popclient compatibility syntax was removed in 4.0. It complicated the
777
782
 
778
783
  If your file predates 2.8:
779
784
 
780
 
   The `interface', `monitor' and `batchlimit' options changed after 2.8.
 
785
   The 'interface', 'monitor' and 'batchlimit' options changed after 2.8.
781
786
 
782
 
   They used to be global options with `set' syntax like the batchlimit and
783
 
   logfile options. Now they're per-server options, like `protocol'.
 
787
   They used to be global options with 'set' syntax like the batchlimit and
 
788
   logfile options. Now they're per-server options, like 'protocol'.
784
789
 
785
790
   If you had something like
786
791
    set interface = "sl0/10.0.2.15"
787
792
 
788
 
   in your .fetchmailrc file, simply delete that line and insert `interface
789
 
   sl0/10.0.2.15' in the server options part of your `defaults' declaration.
 
793
   in your .fetchmailrc file, simply delete that line and insert 'interface
 
794
   sl0/10.0.2.15' in the server options part of your 'defaults' declaration.
790
795
 
791
 
   Do similarly for any `monitor' or `batchlimit' options.
792
 
     _________________________________________________________________
 
796
   Do similarly for any 'monitor' or 'batchlimit' options.
793
797
 
794
798
F2. The .fetchmailrc parser won't accept my all-numeric user name.
795
799
 
801
805
 
802
806
   The lexical analyzer in 5.0.6 and beyond is smarter and assumes any token
803
807
   following "username" or "password" is a string.
804
 
     _________________________________________________________________
805
808
 
806
809
F3. The .fetchmailrc parser won't accept my host or username beginning with
807
 
`no'.
 
810
'no'.
808
811
 
809
812
   See F2. You're caught in an unfortunate crack between the newer-style syntax
810
 
   for negated options (`no keep', `no rewrite' etc.) and the older style
811
 
   run-on syntax (`nokeep', `norewrite' etc.).
 
813
   for negated options ('no keep', 'no rewrite' etc.) and the older style
 
814
   run-on syntax ('nokeep', 'norewrite' etc.).
812
815
 
813
816
   Upgrade to a 5.0.6 or later fetchmail, or put string quotes around your
814
817
   token.
815
 
     _________________________________________________________________
816
818
 
817
 
F4. I'm getting a `parse error' message I don't understand.
 
819
F4. I'm getting a 'parse error' message I don't understand.
818
820
 
819
821
   The most common cause of mysterious parse errors is putting a server option
820
822
   after a user option. Check the manual page; you'll probably find that by
821
 
   moving one or more options closer to the `poll' keyword you can eliminate
 
823
   moving one or more options closer to the 'poll' keyword you can eliminate
822
824
   the problem.
823
825
 
824
826
   Yes, I know these ordering restrictions are hard to understand.
825
 
   Unfortunately, they're necessary in order to allow the `defaults' feature to
 
827
   Unfortunately, they're necessary in order to allow the 'defaults' feature to
826
828
   work.
827
829
     _________________________________________________________________
828
830
 
 
831
                            Configuration questions
 
832
 
829
833
C1. Why do I need a .fetchmailrc when running as root on my own machine?
830
834
 
831
835
   Ian T. Zimmerman <itz@rahul.net> asked:
843
847
 
844
848
   It won't work if the second line is just "user itz". This is silly.
845
849
 
846
 
   It seems fetchmail decides to RECP the `default local user' (i.e. the uid
847
 
   running fetchmail) unless there are local aliases, and the `default' aliases
 
850
   It seems fetchmail decides to RECP the 'default local user' (i.e. the uid
 
851
   running fetchmail) unless there are local aliases, and the 'default' aliases
848
852
   (itz->itz) don't count. They should.
849
853
 
850
854
   Answer:
851
855
 
852
856
   No they shouldn't. I thought about this for a while, and I don't much like
853
857
   the conclusion I reached, but it's unavoidable. The problem is that
854
 
   fetchmail has no way to know, in general, that a local user `itz' actually
 
858
   fetchmail has no way to know, in general, that a local user 'itz' actually
855
859
   exists.
856
860
 
857
861
   "Ah!" you say, "Why doesn't it check the password file to see if the remote
869
873
   to tinker with the mapping rules, you'll quickly find that all the
870
874
   alternatives to the present default are worse or unacceptably more
871
875
   complicated or both.
872
 
     _________________________________________________________________
873
876
 
874
877
C2. How can I arrange for a fetchmail daemon to get killed when I log out?
875
878
 
876
879
   The easiest way to dispatch fetchmail on logout (which will work reliably
877
880
   only if you have just one login going at any time) is to arrange for the
878
 
   command `fetchmail -q' to be called on logout. Under bash, you can arrange
879
 
   this by putting `fetchmail -q' in the file `~/.bash_logout'. Most csh
880
 
   variants execute `~/.logout' on logout. For other shells, consult your shell
 
881
   command 'fetchmail -q' to be called on logout. Under bash, you can arrange
 
882
   this by putting 'fetchmail -q' in the file '~/.bash_logout'. Most csh
 
883
   variants execute '~/.logout' on logout. For other shells, consult your shell
881
884
   manual page.
882
885
 
883
886
   Automatic startup/shutdown of fetchmail is a little harder to arrange if you
888
891
 
889
892
   Some people start up and shut down fetchmail using the ppp-up and ppp-down
890
893
   scripts of pppd.
891
 
     _________________________________________________________________
892
894
 
893
895
C3. How do I know what interface and address to use with --interface?
894
896
 
916
918
    1. If you're using a SLIP link, the correct device is probably sl0.
917
919
    2. If you're using a PPP link, the correct device is probably ppp0.
918
920
    3. If you're using a direct connection over a local network such as an
919
 
       ethernet, use the command `netstat -r' to look at your routing table.
 
921
       ethernet, use the command 'netstat -r' to look at your routing table.
920
922
       Try to match your mailserver name to a destination entry; if you don't
921
 
       see it in the first column, use the `default' entry. The device name
 
923
       see it in the first column, use the 'default' entry. The device name
922
924
       will be in the rightmost column.
923
925
 
924
926
   To determine the address and netmask:
925
927
    1. If you're talking to slirp, the correct address is probably 10.0.2.15,
926
928
       with no netmask specified. (It's possible to configure slirp to present
927
929
       other addresses, but that's the default.)
928
 
    2. If you have a static IP address, run `ifconfig <device>', where <device>
 
930
    2. If you have a static IP address, run 'ifconfig <device>', where <device>
929
931
       is whichever one you've determined. Use the IP address given after "inet
930
932
       addr:". That is the IP address for your end of the link, and is what you
931
933
       need. You won't need to specify a netmask.
943
945
   would work. To range over any value of the last two octets (65536 addresses)
944
946
   you would use
945
947
    interface "sl0/205.164.0.0/255.255.0.0"
946
 
     _________________________________________________________________
947
948
 
948
949
C4. How can I set up support for sendmail's anti-spam features?
949
950
 
978
979
 
979
980
   Under no circumstances put your mailhost or any host you accept mail from
980
981
   using fetchmail into your reject file. You will lose mail if you do this!!!
981
 
     _________________________________________________________________
982
982
 
983
983
C5. How can I poll some of my mailboxes more/less often than others?
984
984
 
991
991
   Then secondary.example.com will be polled every 6th time that
992
992
   mainsite.example.com is polled, which with a polling interval of every 5
993
993
   minutes means that secondary.example.com will be polled every 30 minutes.
994
 
     _________________________________________________________________
995
994
 
996
995
Fetchmail works OK started up manually, but not from an init script.
997
996
 
1003
1002
 
1004
1003
   Pick a location (such as /etc/fetchmailrc) and use fetchmail's -f option to
1005
1004
   point fetchmail at it. That should solve the problem.
1006
 
     _________________________________________________________________
1007
1005
 
1008
1006
C7. How can I forward mail to another host?
1009
1007
 
1011
1009
   use the smtphost or smtpname option. See the manual page for details.
1012
1010
     _________________________________________________________________
1013
1011
 
 
1012
               How to make fetchmail play nice with various MTAs
 
1013
 
1014
1014
T1. How can I use fetchmail with sendmail?
1015
1015
 
1016
1016
   For most sendmails, no special configuration is required. Eric Allman tells
1017
1017
   me that if FEATURE(always_add_domain) is included in sendmail's
1018
1018
   configuration, you can leave the rewrite option off.
1019
1019
 
1020
 
   If your sendmail complains ``sendmail does not relay'', make sure your
1021
 
   sendmail.cf file says Cwlocalhost so that sendmail recognizes `localhost' as
 
1020
   If your sendmail complains "sendmail does not relay", make sure your
 
1021
   sendmail.cf file says Cwlocalhost so that sendmail recognizes 'localhost' as
1022
1022
   a name of its host.
1023
1023
 
1024
1024
   If you're mailing from another machine on your local network, also ensure
1026
1026
   /etc/mail/)
1027
1027
 
1028
1028
   If you find that your sendmail doesn't like the address
1029
 
   `FETCHMAIL-DAEMON@localhost' (which is used in the bouncemail that fetchmail
 
1029
   'FETCHMAIL-DAEMON@localhost' (which is used in the bouncemail that fetchmail
1030
1030
   generates), you may have to set FEATURE(accept_unqualified_senders).
1031
1031
 
1032
1032
   Günther Leber reports that Digital Unix sendmails won't work with fetchmail.
1057
1057
    T=DNS/RFC822/X-Unix,
1058
1058
    A=procmail -Y -a $u -d $h
1059
1059
 
1060
 
   For both hacks, you have to declare `envelope "Delivered-To:"' on the
1061
 
   fetchmail side, to put the virtual domain (e.g. `domain.com') with RELAY
1062
 
   permission into your access file and to add a line reading `domain.com
1063
 
   local:local-pop-user' for the first and `domain.com mdrop:local-pop-user'
 
1060
   For both hacks, you have to declare 'envelope "Delivered-To:"' on the
 
1061
   fetchmail side, to put the virtual domain (e.g. 'domain.com') with RELAY
 
1062
   permission into your access file and to add a line reading 'domain.com
 
1063
   local:local-pop-user' for the first and 'domain.com mdrop:local-pop-user'
1064
1064
   for the second hack to your mailertable.
1065
1065
 
1066
1066
   You will notice that if the mail already has a Delivered-To header, sendmail
1067
1067
   will not add another.  Further, editing sendmail.cf directly is not very
1068
 
   comfortable.  Solutions for both problems can be found in Peter `Rattacresh'
1069
 
   Backes' `hybrid' patch against sendmail.  Have a look at it, you can find it
 
1068
   comfortable.  Solutions for both problems can be found in Peter 'Rattacresh'
 
1069
   Backes' 'hybrid' patch against sendmail.  Have a look at it, you can find it
1070
1070
   in the contrib subdirectory.
1071
1071
 
1072
1072
   Feel free to try Martijn Lievaart's detailed recipe in the contrib
1078
1078
   Otherwise you will occasionally get mysterious delivery failures with a
1079
1079
   SIGPIPE as the sendmail instance dies. The problem is messages with a single
1080
1080
   dot at start of a text line.
1081
 
     _________________________________________________________________
1082
1081
 
1083
1082
T2. How can I use fetchmail with qmail?
1084
1083
 
1092
1091
   using qmail, it is possible to set up one fetchmail link to be reliably
1093
1092
   collect the mail for an entire domain.
1094
1093
 
1095
 
   One of the basic features of qmail is the `Delivered-To:' message header.
 
1094
   One of the basic features of qmail is the 'Delivered-To:' message header.
1096
1095
   Whenever qmail delivers a message to a local mailbox it puts the username
1097
1096
   and hostname of the envelope recipient on this line. The major reason for
1098
1097
   this is to prevent mail loops.
1099
1098
 
1100
1099
   To set up qmail to batch mail for a disconnected site the ISP-mailhost will
1101
 
   have normally put that site in its `virtualhosts' control file so it will
 
1100
   have normally put that site in its 'virtualhosts' control file so it will
1102
1101
   add a prefix to all mail addresses for this site. This results in mail sent
1103
1102
   to 'username@userhost.userdom.dom.com' having a 'Delivered-To:' line of the
1104
1103
   form:
1111
1110
   string matching the user host name is likely.
1112
1111
 
1113
1112
   To use this line you must:
1114
 
    1. Ensure the option `envelope Delivered-To:' is in the fetchmail config
 
1113
    1. Ensure the option 'envelope Delivered-To:' is in the fetchmail config
1115
1114
       file.
1116
1115
    2. Ensure you have a localdomains containing 'userdom.dom.com' or
1117
 
       `userhost.dom.com' respectively.
 
1116
       'userhost.dom.com' respectively.
1118
1117
 
1119
1118
   So far this reliably delivers messages to the correct machine of the local
1120
1119
   network, to deliver to the correct user the 'mbox-userstr-' prefix must be
1128
1127
 
1129
1128
   Peter Wilson adds:
1130
1129
 
1131
 
   ``My ISP uses "alias-unzzippedcom-" as the prefix, which means that I need
1132
 
   to name my file ".qmail-unzzippedcom-default". This is due to qmail's
 
1130
   "My ISP uses "alias-unzzippedcom-" as the prefix, which means that I need to
 
1131
   name my file ".qmail-unzzippedcom-default". This is due to qmail's
1133
1132
   assumption that a message sent to user-xyz is handled by the file
1134
 
   ~user/.qmail-xyz (or ~user/.qmail-default).''
 
1133
   ~user/.qmail-xyz (or ~user/.qmail-default)."
1135
1134
 
1136
1135
   Luca Olivetti adds:
1137
1136
 
1138
1137
   If you aren't using qmail locally, or you don't want to set up the alias
1139
 
   mechanism described above, you can use the option `qvirtual "mbox-userstr-"'
 
1138
   mechanism described above, you can use the option 'qvirtual "mbox-userstr-"'
1140
1139
   in your fetchmail config file to strip the prefix from the local user name.
1141
 
     _________________________________________________________________
1142
1140
 
1143
1141
T3. How can I use fetchmail with exim?
1144
1142
 
1147
1145
   There is an RFC1123 requirement that MAIL FROM and RCPT TO addresses you
1148
1146
   pass to it have to be canonical (e.g. with a fully qualified hostname part).
1149
1147
   Therefore fetchmail tries to pass fully qualified RCPT TO addresses. But
1150
 
   exim does not by default accept `localhost' as a fully qualified domain.
 
1148
   exim does not by default accept 'localhost' as a fully qualified domain.
1151
1149
   This can be fixed.
1152
1150
 
1153
 
   In exim.conf, add `localhost' to your local_domains declaration if it's not
 
1151
   In exim.conf, add 'localhost' to your local_domains declaration if it's not
1154
1152
   already present. For example, the author's site at thyrsus.com would have a
1155
1153
   line reading:
1156
1154
       local_domains = thyrsus.com:localhost
1177
1175
   result in such messages having an incorrect domain name attached to their
1178
1176
   return address (your SMTP listener's hostname rather than that of the remote
1179
1177
   mail server).
1180
 
     _________________________________________________________________
1181
1178
 
1182
1179
T4. How can I use fetchmail with smail?
1183
1180
 
1188
1185
   fetchmail session, smail sometimes delivers them in an order other than
1189
1186
   received-date order. This can be annoying because it scrambles
1190
1187
   conversational threads. This is not fetchmail's problem, it is an smail
1191
 
   `feature' and has been reported to the maintainers as a bug.
 
1188
   'feature' and has been reported to the maintainers as a bug.
1192
1189
 
1193
1190
   Very recent smail versions require an -smtp_hello_verify option in the smail
1194
1191
   config file. This overrides smail's check to see that the HELO address is
1200
1197
   You may also need to say -smtp_hello_broken_allow=127.0.0.1 in order for
1201
1198
   smail to accept the "localhost" that fetchmail normally appends to recipient
1202
1199
   addresses.
1203
 
     _________________________________________________________________
1204
1200
 
1205
1201
T5. How can I use fetchmail with SCO's MMDF?
1206
1202
 
1207
1203
   MMDF itself is difficult to configure, but it turns out that connecting
1208
1204
   fetchmail to MMDF's SMTP channel isn't that hard. You can read an MMDF
1209
1205
   recipe that describes replacing a UUCP link with fetchmail feeding MMDF.
1210
 
     _________________________________________________________________
1211
1206
 
1212
1207
T6. How can I use fetchmail with Lotus Notes?
1213
1208
 
1214
1209
   The Lotus Notes SMTP gateway tries to deduce when it should convert \n to
1215
1210
   \r\n, but its rules are not the intuitive and correct-for-RFC822 ones. Use
1216
 
   `forcecr'.
1217
 
     _________________________________________________________________
 
1211
   'forcecr'.
1218
1212
 
1219
1213
T7. How can I use fetchmail with Courier IMAP?
1220
1214
 
1221
1215
   The courier mta doesn't like RCPT addresses that look like
1222
1216
   someone@localhost. Work around this with an smtphost or smtpaddress.
1223
 
     _________________________________________________________________
1224
1217
 
1225
1218
T8. How can I use fetchmail with vbmailshield?
1226
1219
 
1229
1222
   As a workaround, you can set batchlimit to 1 so RSET is never used.
1230
1223
     _________________________________________________________________
1231
1224
 
 
1225
                How to make fetchmail work with various servers
 
1226
 
1232
1227
S1. How can I use fetchmail with qpopper?
1233
1228
 
1234
1229
   Qualcomm's qpopper is probably the best-of-breed among POP3 servers, and is
1254
1249
   Versions of fetchmail from 4.4.2 through 4.4.7 had a bad interaction with
1255
1250
   Eudora qpopper versions 2.3 and later. See X5 for details. The solution is
1256
1251
   to upgrade your fetchmail.
1257
 
     _________________________________________________________________
1258
1252
 
1259
1253
S2. How can I use fetchmail with Microsoft Exchange?
1260
1254
 
1272
1266
   Fetchmail using IMAP supports the proprietary NTLM mode used with M$
1273
1267
   Exchange servers. To enable this, configure fetchmail with the --enable-NTLM
1274
1268
   option and recompile it. Specify a user option value that looks like
1275
 
   `user@domain': the part to the left of the @ will be passed as the username
 
1269
   'user@domain': the part to the left of the @ will be passed as the username
1276
1270
   and the part to the right as the NTLM domain.
1277
1271
 
1278
1272
   M$ Exchange violates the POP3 and IMAP RFCs. Its LIST command does not
1356
1350
   But, the best option involves a tactical nuclear weapon (an old ASROC will
1357
1351
   do), pissing off a lot people who live downwind from Redmond, and your
1358
1352
   choice of any Linux, NetBSD, FreeBSD, or Solaris CD-ROM.
1359
 
     _________________________________________________________________
1360
1353
 
1361
1354
S3. How can I use fetchmail with HP OpenMail?
1362
1355
 
1373
1366
   We've had a more recent report (December 2001) that the TOP command fails,
1374
1367
   returning only one line regrardless of its argument, on something
1375
1368
   identifying itself as "OpenMail POP3 interface".
1376
 
     _________________________________________________________________
1377
1369
 
1378
1370
S4. How can I use fetchmail with Novell GroupWise?
1379
1371
 
1385
1377
   your dollars for a server that isn't brain-dead. If you stick with code as
1386
1378
   shoddy as GroupWise seems to be, you will probably pay for it with other
1387
1379
   problems.
1388
 
     _________________________________________________________________
1389
1380
 
1390
1381
S5. How can I use fetchmail with InterChange?
1391
1382
 
1396
1387
   On Jan 9 2001, the people at InfiniteMail sent me mail informing me that
1397
1388
   their new 3.61.08 release of InterChange fixes this problem. I don't have
1398
1389
   any reports one way or the other yet.
1399
 
     _________________________________________________________________
1400
1390
 
1401
1391
S6. How can I use fetchmail with MailMax?
1402
1392
 
1408
1398
   even when enough lines have been specified. The MailMax developers have
1409
1399
   acknowledged this bug as of 4 May 2000, but there is no fix yet. If you must
1410
1400
   use this server, force RETR with the fetchall option.
1411
 
     _________________________________________________________________
1412
1401
 
1413
1402
S7. How can I use fetchmail with FTGate?
1414
1403
 
1417
1406
   of RETR and work around this bug.
1418
1407
     _________________________________________________________________
1419
1408
 
 
1409
                   How to fetchmail work with specific ISPs
 
1410
 
1420
1411
I1. How can I use fetchmail with CompuServe RPA?
1421
1412
 
1422
1413
   First, make sure your fetchmail has the RPA support compiled in. Stock
1427
1418
   directions).
1428
1419
 
1429
1420
   Give your CompuServe pass-phrase in lower case as your password. Add
1430
 
   `@compuserve.com' to your user ID so that it looks like `user
 
1421
   '@compuserve.com' to your user ID so that it looks like 'user
1431
1422
   <UserID>@compuserve.com', where <UserID> can be either your numerical userID
1432
1423
   or your E-mail nickname. An RPA-enabled fetchmail will automatically check
1433
1424
   for csi.com in the POP server's greeting line. If that's found, and your
1434
 
   user ID ends with `@compuserve.com', it will query the server to see if it
 
1425
   user ID ends with '@compuserve.com', it will query the server to see if it
1435
1426
   is RPA-capable, and if so do an RPA transaction rather than a plain-text
1436
1427
   password handshake.
1437
1428
 
1449
1440
poll non-rpa.csi.com via "pop.site1.csi.com" with proto POP3 and options no dns
1450
1441
    user "CSERVE_USER" there with password "CSERVE_POP3_PASSWORD"
1451
1442
       is LOCAL_USER here options fetchall stripcr
1452
 
     _________________________________________________________________
1453
1443
 
1454
1444
I2. How can I use fetchmail with Demon Internet's SDPS?
1455
1445
 
1504
1494
   The autodetection works by looking at the hostname in the POP3 greeting
1505
1495
   line; if you're accessing Demon Internet through a proxy it may fail. To
1506
1496
   force SDPS mode, pick "sdps" as your protocol.
1507
 
     _________________________________________________________________
1508
1497
 
1509
1498
I3. How can I use fetchmail with usa.net's servers?
1510
1499
 
1511
 
   Enable `fetchall'. A user reports that the 2.2 version of USA.NET's POP
1512
 
   server reports that you must use the `fetchall' option to make sure that all
 
1500
   Enable 'fetchall'. A user reports that the 2.2 version of USA.NET's POP
 
1501
   server reports that you must use the 'fetchall' option to make sure that all
1513
1502
   of the mail is retrieved, otherwise some may be left on the server. This is
1514
1503
   almost certainly a server bug.
1515
1504
 
1517
1506
   the TOP command properly, either. Regardless of the argument you give it,
1518
1507
   they retrieve only about 10 lines of the message. Fetchmail normally uses
1519
1508
   TOP for message retrieval in order to avoid marking messages seen, but
1520
 
   `fetchall' forces it to use RETR instead.
 
1509
   'fetchall' forces it to use RETR instead.
1521
1510
 
1522
1511
   Also, we're told USA.NET adds a ton of hops to your messages. You may need
1523
1512
   to raise the MaxHopCount parameter in your sendmail.cf to avoid having
1525
1514
 
1526
1515
   (Note: Other failure modes have been reported on usa.net's servers. They
1527
1516
   seem to be chronically flaky. We recommend finding another provider.)
1528
 
     _________________________________________________________________
1529
1517
 
1530
1518
I4. How can I use fetchmail with geocities POP3 servers?
1531
1519
 
1534
1522
   This can solve problems if your MUA interprets Received continuations as
1535
1523
   body lines and doesn't parse any of the following headers.
1536
1524
 
1537
 
   Workaround is to use "mda" keyword or "-mda" switch:
 
1525
   Workaround is to use "mda" keyword or "--mda" switch:
1538
1526
mda "sed -e '1s/^\t/Received: /' | formail | /usr/bin/procmail -d <user>"
1539
1527
 
1540
1528
   Replace \t with exactly one tabulation character.
1544
1532
 
1545
1533
   Fix: Get an email provider that doesn't suck. The pop-up ads on Geocities
1546
1534
   are lame, you should boycott them anyway.
1547
 
     _________________________________________________________________
1548
 
 
1549
 
I5. How can I use fetchmail with Hotmail?
1550
 
 
1551
 
   You can't, yet. But gotmail or HotWayDaemon might be what you need.
1552
 
     _________________________________________________________________
 
1535
 
 
1536
I5. How can I use fetchmail with Hotmail or Lycos Webmail?
 
1537
 
 
1538
   You can't directly. But you can use fetchmail with hotmail or lycos webmail
 
1539
   with the help of the HotWayDaemon daemon. You don't even need to install
 
1540
   hotwayd as a daemon in inetd.conf but can use it as a plugin. Your
 
1541
   configuration should look like this:
 
1542
poll localhost protocol pop3 tracepolls
 
1543
   plugin "/usr/local/sbin/hotwayd -l 0 -p yourproxy:yourproxyport"
 
1544
   username "youremail@hotmail.com" password "yourpassword"
 
1545
   fetchall
 
1546
 
 
1547
   As a second option you may consider using gotmail.
1553
1548
 
1554
1549
I6. How can I use fetchmail with MSN?
1555
1550
 
1563
1558
   As of 5.0.8, we have support for the client side of NTLM authentication.
1564
1559
   It's possible this may enable fetchmail to talk to MSN; if so, somebody
1565
1560
   should report it so this FAQ can be corrected.
1566
 
     _________________________________________________________________
1567
1561
 
1568
1562
I7. How can I use fetchmail with SpryNet?
1569
1563
 
1571
1565
   that if your connection drops in mid-message, it may end up invisibly stuck
1572
1566
   on your mail spool. Use the fetchall flag to ensure that it's recovered on
1573
1567
   the next cycle.
1574
 
     _________________________________________________________________
1575
 
 
1576
 
I8. How can I use fetchmail with comcast.net?
1577
 
 
1578
 
   Stock fetchmail will work with a comcast.net server...but the Maillennium
1579
 
   POP3 server comcat uses seems to have an 80K limit on the length of
1580
 
   downloaded messages if you use POP3 TOP to retrieve. Anything larger is
1581
 
   silently truncated. Don't mistake this for a fetchmail bug. (Reported July
1582
 
   2003.)
1583
 
 
1584
 
   Workaround: use the fetchall option.
1585
 
     _________________________________________________________________
 
1568
 
 
1569
I8. How can I use fetchmail with comcast.net or other Maillennium servers?
 
1570
 
 
1571
   Stock fetchmail will work with a Maillennium POP3/PROXY server... but this
 
1572
   server will truncate "TOP" responses after 64&dots;82 kB (we have varying
 
1573
   reports), in violation of Internet Standard #53 aka. RFC-1939 (POP3). Don't
 
1574
   mistake this for a fetchmail bug. (Reported July 2003.) Comcast documented
 
1575
   they haven't understood what this is about in two messages from April 2004.
 
1576
 
 
1577
   Beginning with version 6.3.2, fetchmail will fall back to the RETR command
 
1578
   if the greeting string contains "Maillennium POP3/PROXY server", and print a
 
1579
   warning message. This means however that fetchmail has no means to prevent
 
1580
   the "seen" flag from being set on the server (Note that officially, POP3 has
 
1581
   no notion of seen tracking, but it works for some sites.)
 
1582
 
 
1583
   Workaround for older versions: use the fetchall option.
 
1584
     _________________________________________________________________
 
1585
 
 
1586
         How to set up well-known security and authentication methods
1586
1587
 
1587
1588
K1. How can I use fetchmail with SOCKS?
1588
1589
 
1589
1590
   Giuseppe Guerini added a --with-socks option that supports linking with
1590
 
   socks library. If you specify the value of this option as ``yes'', the
 
1591
   socks library. If you specify the value of this option as "yes", the
1591
1592
   configure script will try to find the Rconnect library and set the makefile
1592
1593
   up to link it. You can also specify a directory containing the Rconnect
1593
1594
   library.
1594
1595
 
1595
1596
   Alan Schmitt has added a similar --with-socks5 option that may work better
1596
1597
   if you have a recent version of the SOCKS library.
1597
 
     _________________________________________________________________
1598
1598
 
1599
1599
K2. How can I use fetchmail with IPv6 and IPsec?
1600
1600
 
1601
1601
   To use fetchmail with IPv6, you need a system that supports IPv6, the "Basic
1602
 
   Socket Interface Extensions for IPv6" (RFC 2133). This currently means that
1603
 
   you need to have a BSD/OS or NetBSD system with the NRL IPv6+IPsec software
1604
 
   distribution or a Linux system with a 2.2 or later kernel and net-tools. It
1605
 
   should not be hard to build fetchmail on other IPv6 implementations if you
1606
 
   can port the inet6-apps kit.
1607
 
 
1608
 
   To use fetchmail with networking security (read: IPsec), you need a system
1609
 
   that supports IPsec, the API described in the "Network Security API for
1610
 
   Sockets" (draft-metz-net-security-api-01.txt), and the inet6-apps kit. This
1611
 
   currently means that you need to have a BSD/OS or NetBSD system with the NRL
1612
 
   IPv6+IPsec software distribution. A Linux IPsec implementation supporting
1613
 
   this API will probably appear in the coming months.
 
1602
   Socket Interface Extensions for IPv6" (RFC 2133).
1614
1603
 
1615
1604
   The NRL IPv6+IPsec software distribution can be obtained from:
1616
1605
   http://web.mit.edu/network/isakmp
1617
1606
 
1618
 
   The inet6-apps kit can be obtained from
1619
 
   http://ftp.ps.pl/pub/linux/IPv6/inet6-apps/.
1620
 
 
1621
1607
   More information on using IPv6 with Linux can be obtained from:
1622
1608
     * http://www.bieringer.de/linux/IPv6/IPv6-HOWTO/IPv6-HOWTO.html
1623
 
     * http://www.ipv6.inner.net/ipv6 (via IPv6)
1624
 
     * http://www.inner.net/ipv6 (via IPv4)
1625
 
     _________________________________________________________________
1626
1609
 
1627
1610
K3. How can I get fetchmail to work with ssh?
1628
1611
 
1641
1624
   preauthenticated in this mode, so you'll actually have to ship your
1642
1625
   password. It will be under ssh encryption, though, so that shouldn't be a
1643
1626
   problem.
1644
 
     _________________________________________________________________
1645
1627
 
1646
1628
K4. What do I have to do to use the IMAP-GSS protocol?
1647
1629
 
1672
1654
 
1673
1655
   Now you don't have to worry about your password appearing in cleartext in
1674
1656
   your .fetchmailrc, or across the network.
1675
 
     _________________________________________________________________
1676
1657
 
1677
1658
K5. How can I use fetchmail with SSL?
1678
1659
 
1707
1688
   toolkit, something like this may work:
1708
1689
poll MYSERVER port 993 plugin "openssl s_client -connect %h:%p"
1709
1690
        protocol imap username MYUSERNAME password MYPASSWORD
 
1691
 
 
1692
   You should note that SSL is only secure against a "man-in-the-middle" attack
 
1693
   if the client is able to verify that the peer's public key is the correct
 
1694
   one, and has not been substituted by an attacker. fetchmail can do this in
 
1695
   one of two ways: by verifying the SSL certificate, or by checking the
 
1696
   fingerprint of the peer's public key.
 
1697
 
 
1698
   There are three parts to SSL certificate verification: checking that the
 
1699
   domain name in the certificate matches the hostname you asked to connect to;
 
1700
   checking that the certificate expiry date has not passed; and checking that
 
1701
   the certificate has been signed by a known Certificate Authority (CA). This
 
1702
   last step takes some preparation, as you need to install the root
 
1703
   certificates of all the CA's which you might come across.
 
1704
 
 
1705
   The easiest way to do this is using the root CA keys supplied in the OpenSSL
 
1706
   distribution, which means you need to download and unpack the source tarball
 
1707
   from www.openssl.org. Once you have done that:
 
1708
    1. mkdir /etc/ssl/certs
 
1709
    2. in the openssl-x.x.x/certs directory: cp *.pem /etc/ssl/certs/
 
1710
    3. in the openssl-x.x.x/tools directory: edit c_rehash and set
 
1711
       $dir="/etc/ssl"
 
1712
    4. run "perl c_rehash". This generates a number of symlinks within the
 
1713
       /etc/ssl/certs/ directory
 
1714
 
 
1715
   Now in .fetchmailrc, set option sslcertpath to point to this directory:
 
1716
poll pop3.example.com proto pop3 uidl no dns
 
1717
  user foobar@example.com password xyzzy is foobar ssl sslcertpath /etc/ssl/cer
 
1718
ts
 
1719
 
 
1720
   If the server certificate has not been signed by a known CA (e.g. it is a
 
1721
   self-signed certificate), then this certificate validation will always fail.
 
1722
 
 
1723
   Certificate verification is always attempted. If it fails, by default a
 
1724
   warning is printed but the connection carries on (which means you are not
 
1725
   protected against attack). If your server's certificate has been properly
 
1726
   set up and verifies correctly, then add the "sslcertck" option to enforce
 
1727
   validation. If your server doesn't have a valid certificate though (e.g. it
 
1728
   has a self-signed certificate) then it will never verify, and the only way
 
1729
   you can protect yourself is by checking the fingerprint.
 
1730
 
 
1731
   To check the peer fingerprint: first use fetchmail -v once to connect to the
 
1732
   host, at a time when you are pretty sure that there is no attack in progress
 
1733
   (e.g. you are not traversing any untrusted network to reach the server).
 
1734
   Make a note of the fingerprint shown. Now embed this in your .fetchmailrc
 
1735
   using the sslfingerprint option: e.g.
 
1736
poll pop3.example.com proto pop3 uidl no dns
 
1737
  user foobar@example.com password xyzzy is foobar
 
1738
  ssl sslfingerprint "67:3E:02:94:D3:5B:C3:16:86:71:37:01:B1:3B:BC:E2"
 
1739
 
 
1740
   When you next connect, the public key presented by the server will be
 
1741
   verified against the fingerprint given. If it's different, it may mean that
 
1742
   a man-in-the-middle attack is in progress - or it might just mean that the
 
1743
   server changed its key. It's up to you to determine which has happened.
 
1744
 
 
1745
K6. How can I tell fetchmail not to use TLS if the server advertises it?
 
1746
 
 
1747
   Some servers advertise STLS (POP3) or STARTTLS (IMAP), and fetchmail will
 
1748
   automatically attempt TLS negotiation if SSL was enabled at compile time.
 
1749
   This can however cause problems if the upstream didn't configure his
 
1750
   certificates properly.
 
1751
 
 
1752
   In order to prevent fetchmail from trying TLS (STLS, STARTTLS) negotiation,
 
1753
   add this option:
 
1754
sslproto ssl23
 
1755
 
 
1756
   This restricts fetchmail's SSL/TLS protocol choice from the default "SSLv2,
 
1757
   SSLv3, TLSv1" to the two SSL variants, disabling TLSv1. Note however that
 
1758
   this causes the connection to be unencrypted unless an encrypting "plugin"
 
1759
   is used or SSL is requested explicitly.
1710
1760
     _________________________________________________________________
1711
1761
 
1712
 
R1. Fetchmail isn't working, and -v shows `SMTP connect failed' messages.
 
1762
                             Runtime fatal errors
 
1763
 
 
1764
R1. Fetchmail isn't working, and -v shows 'SMTP connect failed' messages.
1713
1765
 
1714
1766
   Fetchmail itself is probably working, but your SMTP port 25 listener is down
1715
1767
   or inaccessible.
1716
1768
 
1717
1769
   The first thing to check is if you can telnet to port 25 on your smtp host
1718
 
   (which is normally `localhost' unless you've specified an smtp option in
 
1770
   (which is normally 'localhost' unless you've specified an smtp option in
1719
1771
   your .fetchmailrc or on the command line) and get a greeting line from the
1720
1772
   listener. If the SMTP host is inaccessible or the listener is down, fix that
1721
1773
   first.
1728
1780
   and typical problem is that the listener had a momentary seizure due to
1729
1781
   resource exhaustion while fetchmail was polling it -- process table full or
1730
1782
   some other problem that stopped the listener process from forking. If your
1731
 
   SMTP host is not `localhost' or something else in /etc/hosts, the fetchmail
 
1783
   SMTP host is not 'localhost' or something else in /etc/hosts, the fetchmail
1732
1784
   glitch could also have been caused by transient nameserver failure.
1733
1785
 
1734
1786
   Try running fetchmail -v again; if it succeeds, you had one of these kinds
1772
1824
   As of 2.2, the configure script has been hacked so the bind library is
1773
1825
   linked only if it is actually needed. So under Linux it won't be, and this
1774
1826
   particular cause should go away.
1775
 
     _________________________________________________________________
1776
1827
 
1777
1828
R2. When I try to configure an MDA, fetchmail doesn't work.
1778
1829
 
1780
1831
   X1.)
1781
1832
 
1782
1833
   Try sending yourself test mail and retrieving it using the command-line
1783
 
   options `-k -m cat'. This will dump exactly what fetchmail retrieves to
 
1834
   options '-k -m cat'. This will dump exactly what fetchmail retrieves to
1784
1835
   standard output (plus the Received line fetchmail itself adds to the
1785
1836
   headers).
1786
1837
 
1787
1838
   If the dump doesn't match what shows up in your mailbox when you configure
1788
1839
   an MDA, your MDA is mangling the message. If it doesn't match what you sent,
1789
1840
   then fetchmail or something on the server is broken.
1790
 
     _________________________________________________________________
1791
1841
 
1792
1842
R3. Fetchmail dumps core when given an invalid rc file.
1793
1843
 
1799
1849
 
1800
1850
   Fix: build and install the latest version of flex from the Free Software
1801
1851
   Foundation. An FSF mirror site will help you get it faster.
1802
 
     _________________________________________________________________
1803
1852
 
1804
1853
R4. Fetchmail dumps core in -V mode, but operates normally otherwise.
1805
1854
 
1814
1863
   doing gdb traces that whatever free() calls producing the problem are being
1815
1864
   made by the C library itself, not the fetchmail code (they're all from
1816
1865
   within fclose, and not an fclose called directly by fetchmail, either).
1817
 
     _________________________________________________________________
1818
1866
 
1819
1867
R5. Running fetchmail in daemon mode doesn't work.
1820
1868
 
1837
1885
   immediately, detaching fetchmail and making it child of PID 1). This is
1838
1886
   important when you start fetchmail interactively and than quit interactive
1839
1887
   shell. The line above makes sure fetchmail lives after that!
1840
 
     _________________________________________________________________
1841
1888
 
1842
1889
R6. Fetchmail randomly dies with socket errors.
1843
1890
 
1852
1899
   servers, so you get different IP addresses on different poll cycles. To work
1853
1900
   around this, change the poll name either to the real name of one of the
1854
1901
   servers in the ring or to a corresponding IP address.
1855
 
     _________________________________________________________________
1856
1902
 
1857
1903
R7. Fetchmail running as root stopped working after an OS upgrade
1858
1904
 
1860
1906
   /root to / as the result of a change in init. Move your .fetchmailrc or use
1861
1907
   a -f option to explicitly point at the file. (Oddly, a similar problem has
1862
1908
   been reported from Debian systems.)
1863
 
     _________________________________________________________________
1864
1909
 
1865
1910
R8. Fetchmail is timing out after fetching certain messages but before deleting
1866
1911
them
1882
1927
 
1883
1928
     I'm still unclear about the details of why this is happening. At least
1884
1929
     [now] I am now getting good performance and no queue blocking.
1885
 
     _________________________________________________________________
1886
1930
 
1887
1931
R9. Fetchmail is timing out during message fetches
1888
1932
 
1890
1934
   cause the server to start sending large amounts of data, which means large
1891
1935
   packets. If your networking layer has a packet-fragmentation problem, that's
1892
1936
   where you'll see it.
1893
 
     _________________________________________________________________
1894
1937
 
1895
1938
R10. Fetchmail is dying with SIGPIPE.
1896
1939
 
1903
1946
   Otherwise you will occasionally get mysterious delivery failures with a
1904
1947
   SIGPIPE as the sendmail instance dies. The problem is messages with a single
1905
1948
   dot at start of a text line.
1906
 
     _________________________________________________________________
1907
1949
 
1908
1950
R11. My server is hanging or emitting errors on CAPA.
1909
1951
 
1910
1952
   Your POP3 server is broken. You can work around this with the declaration
1911
1953
   auth password in your .fetchmailrc.
 
1954
 
 
1955
R12. Fetchmail isn't working and reports getaddrinfo errors.
 
1956
 
 
1957
    1. Make sure you haven't mistyped the host name or address, and that your
 
1958
       DNS is working. If you cannot fix DNS, give the numeric host literal,
 
1959
       for instance, 192.168.0.1
 
1960
    2. Make sure your /etc/services file (or other services database) contains
 
1961
       the necessary service entries. If you cannot fix the services database,
 
1962
       use the --service option and give the numeric port address. Common port
 
1963
       addresses are:
 
1964
 
 
1965
       service  port
 
1966
       IMAP     143
 
1967
       IMAP+SSL 993
 
1968
       POP3     110
 
1969
       POP3+SSL 995
1912
1970
     _________________________________________________________________
1913
1971
 
 
1972
                               Hangs and lockups
 
1973
 
1914
1974
H1. Fetchmail hangs when used with pppd.
1915
1975
 
1916
 
   Your problem may be with pppd's `demand' option. We have a report that
1917
 
   fetchmail doesn't play well with it, but works with pppd if `demand' is
 
1976
   Your problem may be with pppd's 'demand' option. We have a report that
 
1977
   fetchmail doesn't play well with it, but works with pppd if 'demand' is
1918
1978
   turned off. We have no idea why this is.
1919
 
     _________________________________________________________________
1920
1979
 
1921
1980
H2. Fetchmail hangs during the MAIL FROM exchange.
1922
1981
 
1939
1998
    5. Restart sendmail.
1940
1999
 
1941
2000
   For more details consult the file /usr/share/sendmail-cf/README.
1942
 
     _________________________________________________________________
1943
2001
 
1944
2002
H3. Fetchmail hangs while fetching mail.
1945
2003
 
1957
2015
   Adding 'sendmail : 127.0.0.1' to /etc/hosts.allow could solve this problem.
1958
2016
     _________________________________________________________________
1959
2017
 
 
2018
                               Disappearing mail
 
2019
 
1960
2020
D1. I think I've set up fetchmail correctly, but I'm not getting any mail.
1961
2021
 
1962
2022
   Maybe you have a .forward or alias set up that you've forgotten about. You
1973
2033
        user 'remoteuser' there with password '*' is 'localuser' here
1974
2034
 
1975
2035
   make sure that 'localuser' does exist and can receive mail.
1976
 
     _________________________________________________________________
1977
2036
 
1978
2037
D2. All my mail seems to disappear after a dropped connection.
1979
2038
 
1999
2058
   good idea in a world of flaky phone lines). Then it will re-queue any
2000
2059
   message that was being downloaded at hangup time. Still, qpopper may require
2001
2060
   a noticeable amount of time to do deletions and clean up its queue.
2002
 
   (Fetchmail waits a bit before retrying in order to avoid a `lock busy'
 
2061
   (Fetchmail waits a bit before retrying in order to avoid a 'lock busy'
2003
2062
   error.)
2004
 
     _________________________________________________________________
2005
2063
 
2006
2064
D3. Mail that was being fetched when I interrupted my fetchmail seems to have
2007
2065
been vanished.
2012
2070
   option) from the listener. No interrupt can cause it to lose mail.
2013
2071
 
2014
2072
   However, IMAP2bis has a design problem in that its normal fetch command
2015
 
   marks a message `seen' as soon as the fetch command to get it is sent down.
 
2073
   marks a message 'seen' as soon as the fetch command to get it is sent down.
2016
2074
   If for some reason the message isn't actually delivered (you take a line hit
2017
2075
   during the download, or your port 25 listener can't find enough free disk
2018
 
   space, or you interrupt the delivery in mid-message) that `seen' message can
 
2076
   space, or you interrupt the delivery in mid-message) that 'seen' message can
2019
2077
   lurk invisibly in your server mailbox forever.
2020
2078
 
2021
 
   Workaround: add the `fetchall' keyword to your fetch options.
 
2079
   Workaround: add the 'fetchall' keyword to your fetch options.
2022
2080
 
2023
2081
   Solution: switch to an IMAP4 server.
2024
2082
     _________________________________________________________________
2025
2083
 
 
2084
                            Multidrop-mode problems
 
2085
 
2026
2086
M1. I've declared local names, but all my multidrop mail is going to root
2027
2087
anyway.
2028
2088
 
2029
2089
   Somehow your fetchmail is never recognizing the hostname part of recipient
2030
2090
   names it parses out of To/Cc/envelope-header lines as matching the name of
2031
2091
   the mailserver machine. To check this, run fetchmail in foreground with -v
2032
 
   -v on. You will probably see a lot of messages with the format ``line
2033
 
   rejected, %s is not an alias of the mailserver'' or ``no address matches;
2034
 
   forwarding to %s.''
 
2092
   -v on. You will probably see a lot of messages with the format "line
 
2093
   rejected, %s is not an alias of the mailserver" or "no address matches;
 
2094
   forwarding to %s."
2035
2095
 
2036
2096
   These errors usually indicate some kind of DNS configuration problem either
2037
2097
   on the server or your client machine.
2038
2098
 
2039
 
   The easiest workaround is to add a `via' option (if necessary) and add
 
2099
   The easiest workaround is to add a 'via' option (if necessary) and add
2040
2100
   enough aka declarations to cover all of your mailserver's aliases, then say
2041
 
   `no dns'. This will take DNS out of the picture (though it means mail may be
 
2101
   'no dns'. This will take DNS out of the picture (though it means mail may be
2042
2102
   uncollected if it's sent to an alias of the mailserver that you don't have
2043
2103
   listed).
2044
2104
 
2048
2108
 
2049
2109
   Occasionally these errors indicate the sort of header-parsing problem
2050
2110
   described in M7.
2051
 
     _________________________________________________________________
2052
2111
 
2053
2112
M2. I can't seem to get fetchmail to route to a local domain properly.
2054
2113
 
2065
2124
   If neither of these alternatives is available, multidrop mode may do (though
2066
2125
   you are going to get hurt by some mailing list software; see the caveats
2067
2126
   under THE USE AND ABUSE OF MULTIDROP MAILBOXES on the man page). If you want
2068
 
   to try it, the way to do it is with the `localdomains' option.
 
2127
   to try it, the way to do it is with the 'localdomains' option.
2069
2128
 
2070
2129
   In general, if you use localdomains you need to make sure of two other
2071
2130
   things:
2072
2131
 
2073
2132
   1. You've actually set up your .fetchmailrc entry to invoke multidrop mode.
2074
2133
 
2075
 
   Many people set a `localdomains' list and then forget that fetchmail wants
2076
 
   to see more than one name (or the wildcard `*') in a `here' list before it
 
2134
   Many people set a 'localdomains' list and then forget that fetchmail wants
 
2135
   to see more than one name (or the wildcard '*') in a 'here' list before it
2077
2136
   will do multidrop routing.
2078
2137
 
2079
 
   2. You may have to set `no envelope'.
 
2138
   2. You may have to set 'no envelope'.
2080
2139
 
2081
2140
   Normally, multidrop mode tries to deduce an envelope address from a message
2082
2141
   before parsing the To/Cc/Bcc lines (this enables it to avoid losing to
2084
2143
 
2085
2144
   Some ways of accumulating a whole domain's messages in a single server
2086
2145
   mailbox mean it all ends up with a single envelope address that is useless
2087
 
   for rerouting purposes. You may have to set `no envelope' to prevent
 
2146
   for rerouting purposes. You may have to set 'no envelope' to prevent
2088
2147
   fetchmail from being bamboozled by this.
2089
2148
 
2090
2149
   Check also answer T1 on a reliable way to do multidrop delivery if your ISP
2091
2150
   (or your mail redirection provider) is using qmail.
2092
 
     _________________________________________________________________
2093
2151
 
2094
2152
M3. I tried to run a mailing list using multidrop, and I have a mail loop!
2095
2153
 
2099
2157
   local addresses in the list.
2100
2158
 
2101
2159
   If you use sendmail, you can check the list expansion with sendmail -bv.
2102
 
     _________________________________________________________________
2103
2160
 
2104
2161
M4. My multidrop fetchmail seems to be having DNS problems.
2105
2162
 
2111
2168
   As of 2.2, the configure script has been hacked so the bind library is
2112
2169
   linked only if it is actually needed. So under Linux it won't be, and this
2113
2170
   problem should go away.
2114
 
     _________________________________________________________________
2115
2171
 
2116
2172
M5. I'm seeing long DNS delays before each message is processed.
2117
2173
 
2118
 
   Use the `aka' option to pre-declare as many of your mailserver's DNS names
 
2174
   Use the 'aka' option to pre-declare as many of your mailserver's DNS names
2119
2175
   as you can. When an address's host part matches an aka name, no DNS lookup
2120
2176
   needs to be done to check it.
2121
2177
 
2122
2178
   If you're sure you've pre-declared all of your mailserver's DNS names, you
2123
 
   can use the `no dns' option to prevent other hostname parts from being
 
2179
   can use the 'no dns' option to prevent other hostname parts from being
2124
2180
   looked up at all.
2125
2181
 
2126
2182
   Sometimes delays are unavoidable. Some SMTP listeners try to call DNS on the
2127
2183
   From-address hostname as a way of checking that the address is valid.
2128
 
     _________________________________________________________________
2129
2184
 
2130
2185
M6. How do I get multidrop mode to work with majordomo?
2131
2186
 
2168
2223
     I use this scheme with 2 virtual domains and the default ISP user+domain
2169
2224
     and service about 30 mail accounts + majordomo on my inside pop3 server
2170
2225
     with fetchmail and sendmail 8.83
2171
 
     _________________________________________________________________
2172
2226
 
2173
2227
M7. Multidrop mode isn't parsing envelope addresses from my Received headers as
2174
2228
it should.
2186
2240
 
2187
2241
   Some (unusual) mailserver configurations will generate extra Received lines
2188
2242
   which you need to skip. To arrange this, use the optional skip prefix
2189
 
   argument of the `envelope' option; you may need to say something like
2190
 
   `envelope 1 Received' or `envelope 2 Received'.
 
2243
   argument of the 'envelope' option; you may need to say something like
 
2244
   'envelope 1 Received' or 'envelope 2 Received'.
2191
2245
 
2192
 
  The `by' clause doesn't contain a mailserver alias:
 
2246
  The 'by' clause doesn't contain a mailserver alias:
2193
2247
 
2194
2248
   When fetchmail parses a Received line that looks like
2195
2249
Received: from send103.yahoomail.com (send103.yahoomail.com [205.180.60.92])
2196
2250
    by iserv.ttns.net (8.8.5/8.8.5) with SMTP id RAA10088
2197
2251
    for <ksturgeon@fbceg.org>; Wed, 9 Sep 1998 17:01:59 -0700
2198
2252
 
2199
 
   it checks to see if `iserv.ttns.net' is a DNS alias of your mailserver
2200
 
   before accepting `ksturgeon@fbceg.org' as an envelope address. This check
2201
 
   might fail if your DNS were misconfigured, or if you were using `no dns' and
 
2253
   it checks to see if 'iserv.ttns.net' is a DNS alias of your mailserver
 
2254
   before accepting 'ksturgeon@fbceg.org' as an envelope address. This check
 
2255
   might fail if your DNS were misconfigured, or if you were using 'no dns' and
2202
2256
   had failed to declare iserv.ttns.net as an alias of your server.
2203
 
     _________________________________________________________________
2204
2257
 
2205
2258
M8. Users are getting multiple copies of messages.
2206
2259
 
2222
2275
   slow down the retrieval of large mail batches.
2223
2276
     _________________________________________________________________
2224
2277
 
 
2278
                                 Mangled mail
 
2279
 
2225
2280
X1. Spurious blank lines are appearing in the headers of fetched mail.
2226
2281
 
2227
2282
   What's probably happening is that the POP/IMAP daemon on your mailserver is
2234
2289
   current version of deliver. If this doesn't work, try to figure out which
2235
2290
   other program in your mail path is inserting the blank line and replace
2236
2291
   that. If you can't do either of these things, pick a different MDA (such as
2237
 
   procmail) and declare it with the `mda' option.
2238
 
     _________________________________________________________________
 
2292
   maildrop) and declare it with the 'mda' option.
2239
2293
 
2240
2294
X2. My mail client can't see a Subject line.
2241
2295
 
2246
2300
   The O'Reilly sendmail book does warn that IDA sendmail doesn't process X-
2247
2301
   headers correctly. If this is your problem, all I can suggest is replacing
2248
2302
   IDA sendmail, because it's broken and not RFC822 conformant.
2249
 
     _________________________________________________________________
2250
2303
 
2251
2304
X3. Messages containing "From" at start of line are being split.
2252
2305
 
2258
2311
   From lines. We have one report that the 2.1 version of the BSD popper
2259
2312
   program (as distributed on Solaris 2.5 and elsewhere) is broken this way.
2260
2313
 
2261
 
   You can test this. Declare an mda of `cat' and send yourself one piece of
 
2314
   You can test this. Declare an mda of 'cat' and send yourself one piece of
2262
2315
   mail containing "From" at start of a line. If you see a split message, your
2263
2316
   POP/IMAP server is at fault. Upgrade to a more recent version.
2264
2317
 
2274
2327
   file. There will likely be a line something like
2275
2328
Mlocal, P=/usr/bin/procmail, F=lsDFMShP, S=10, R=20/40, A=procmail -Y -d $u
2276
2329
 
2277
 
   describing your local delivery agent. Try inserting the `E' option in the
 
2330
   describing your local delivery agent. Try inserting the 'E' option in the
2278
2331
   flags part (the F= string). This will make sendmail turn each dangerous
2279
2332
   start-of-line From into a >From, preventing programs further downstream from
2280
2333
   acting up.
2281
 
     _________________________________________________________________
2282
2334
 
2283
 
X4.My mail is being mangled in a new and different way
 
2335
X4. My mail is being mangled in a new and different way
2284
2336
 
2285
2337
   The first thing you need to do is pin down what program is doing the
2286
2338
   mangling. We don't like getting bug reports about fetchmail that are
2347
2399
   rare thing these days. Complain to us and we'll fix it. Please include the
2348
2400
   session transcript of your manual fetchmail simulation along with the other
2349
2401
   things described in the FAQ entry on reporting bugs.
2350
 
     _________________________________________________________________
2351
2402
 
2352
2403
X5. Using POP3, retrievals seems to be fetching too much!
2353
2404
 
2365
2416
 
2366
2417
   Workaround: set the fetchall option. Under POP3 this has the side effect of
2367
2418
   forcing RETR use.
2368
 
     _________________________________________________________________
2369
2419
 
2370
2420
X6. My mail attachments are being dropped or mangled.
2371
2421
 
2472
2522
   most of the world doesn't understand its attachments, so it really shouldn't
2473
2523
   be used at all), and make sure dtmail is set to use MIME rather than
2474
2524
   mailtool's format.
2475
 
     _________________________________________________________________
2476
2525
 
2477
2526
X7. Some mail attachments are hanging fetchmail.
2478
2527
 
2493
2542
   also be caused by malfunctioning path-MTU discovery on the mailserver. Or,
2494
2543
   if there's a modem in the link, it may be because the attachment contains
2495
2544
   the Hayes mode escape "+++".
2496
 
     _________________________________________________________________
2497
2545
 
2498
2546
X8. A spurious ) is being appended to my messages.
2499
2547
 
2536
2584
   the time.
2537
2585
     _________________________________________________________________
2538
2586
 
 
2587
                                Other problems
 
2588
 
2539
2589
O1. The --logfile option doesn't work if the logfile doesn't exist.
2540
2590
 
2541
2591
   This is a feature, not a bug. It's in line with normal practice for system
2543
2593
   hacking potentially fragile startup scripts. To get around it, just touch(1)
2544
2594
   the logfile before you run fetchmail (this will have no effect on the
2545
2595
   contents of the logfile if it already exists).
2546
 
     _________________________________________________________________
2547
2596
 
2548
2597
O2. Every time I get a POP or IMAP message the header is dumped to all my
2549
2598
terminal sessions.
2550
2599
 
2551
2600
   Fetchmail uses the local sendmail to perform final delivery, which Netscape
2552
2601
   and other clients doesn't do; the announcement of new messages is done by a
2553
 
   daemon that sendmail pokes. There should be a ``biff'' command to control
 
2602
   daemon that sendmail pokes. There should be a "biff" command to control
2554
2603
   this. Type
2555
2604
biff n
2556
2605
 
2557
2606
   to turn it off. If this doesn't work, try the command
2558
 
chmod -x `tty`
 
2607
chmod -x $(tty)
2559
2608
 
2560
2609
   which is essentially what biff -n will do. If this doesn't work, comment out
2561
 
   any reference to ``comsat'' in your /etc/inetd.conf file and restart inetd.
 
2610
   any reference to "comsat" in your /etc/inetd.conf file and restart inetd.
2562
2611
 
2563
2612
   In Slackware Linux distributions, the last line in /etc/profile is
2564
2613
biff y
2567
2616
biff n
2568
2617
 
2569
2618
   to solve the problem system-wide.
2570
 
     _________________________________________________________________
2571
2619
 
2572
2620
O3. Does fetchmail reread its rc file every poll cycle?
2573
2621
 
2574
2622
   No, but versions 5.2.2 and later will notice when you modify your rc file
2575
2623
   and restart, reading it.
2576
 
     _________________________________________________________________
2577
2624
 
2578
2625
O4. Why do deleted messages show up again when I take a line hit while
2579
2626
downloading?
2599
2646
   delete and the expunge. If you've set a longer expunge interval, the window
2600
2647
   gets wider. This problem should correct itself the next time you complete a
2601
2648
   successful query.
2602
 
     _________________________________________________________________
2603
2649
 
2604
2650
O5. Why is fetched mail being logged with my name, not the real From address?
2605
2651
 
2619
2665
   Versions 2.1 and up try the header From address first and fall back to the
2620
2666
   calling-user ID. So if your SMTP listener isn't picky, the log will look
2621
2667
   right.
2622
 
     _________________________________________________________________
2623
2668
 
2624
2669
O6. I'm seeing long sendmail delays or hangs near the start of each poll cycle.
2625
2670
 
2638
2683
   Configuring your bind library to cache DNS lookups locally may help, and is
2639
2684
   a good idea for speeding up other services as well. Switching to a faster
2640
2685
   MTA like qmail or exim might help.
2641
 
     _________________________________________________________________
2642
2686
 
2643
2687
O7. Why doesn't fetchmail deliver mail in date-sorted order?
2644
2688
 
2655
2699
   protocols it uses.
2656
2700
 
2657
2701
   Re-ordering messages is a user-agent function, anyway.
2658
 
     _________________________________________________________________
2659
2702
 
2660
2703
O8. I'm using pppd. Why isn't my monitor option working?
2661
2704
 
2666
2709
   counters that fetchmail relies upon, triggering fetchmail into polling after
2667
2710
   its own delay interval and thus preventing the pppd link from ever reaching
2668
2711
   its inactivity timeout.
2669
 
     _________________________________________________________________
2670
2712
 
2671
2713
O9. Why does fetchmail keep retrieving the same messages over and over?
2672
2714
 
2717
2759
   Unfortunately, this is exactly the way POP3 servers are supposed to behave
2718
2760
   on a line drop, according to the RFCs. I recommend switching to IMAP and
2719
2761
   using a short expunge interval.
2720
 
     _________________________________________________________________
2721
2762
 
2722
2763
O10. Why is the received date on all my messages the same?
2723
2764
 
2724
2765
   This is a design choice in your MTA, not fetchmail. It's taking the received
2725
2766
   date from the last Received header.
2726
 
     _________________________________________________________________
2727
2767
 
2728
2768
O11. I keep getting messages that say "Repoll immediately" in my logs.
2729
2769
 
2730
2770
   This is your server barfing on the CAPA probe that fetchmail sends.
 
2771
 
2731
2772
   If you run fetchmail in daemon mode (say "set daemon 600"), you will get the
2732
2773
   message only once per run.
2733
2774
 
2734
2775
   If you set an authentication method explicitly (say, with auth password),
2735
2776
   you will never get the message.
2736
 
     _________________________________________________________________
2737
2777
 
2738
2778
O12. Fetchmail no longer expunges mail on a 451 SMTP response.
2739
2779
 
2750
2790
   keen on checking the sender addresses. This problem typically occurs if your
2751
2791
   mail server is not checking the sender addresses, but your local server is.
2752
2792
 
2753
 
   Or you could declare antispam 451
 
2793
   Or you could declare antispam 451.
2754
2794
 
2755
2795
   Or, you could check your nameserver configuration and query logs for dns
2756
2796
   errors.
2757
2797
 
2758
2798
   All these issues are not related to fetchmail directly.
2759
 
     _________________________________________________________________
2760
2799
 
2761
2800
O13. I want timestamp information in my fetchmail logs.
2762
2801
 
2763
2802
   Write a preconnect command in your configuration file that does something
2764
2803
   like "date >> $HOME/Procmail/fetchmail.log".
 
2804
 
 
2805
O14. Fetchmail no longer deletes oversized mails with --flush.
 
2806
 
 
2807
   Use --limitflush (available since release 6.3.0) to delete oversized mails
 
2808
   along with the --limit option. If you are already having flush in your
 
2809
   rcfile to delete oversized mails, replace it with limitflush to avoid losing
 
2810
   mails unintentionally.
 
2811
 
 
2812
   The --flush option is primarily designed to delete mails which have been
 
2813
   read/downloaded but not deleted yet. This option cannot be overloaded to
 
2814
   delete oversized mails as it cannot be guessed whether the user wants to
 
2815
   delete only read/downloaded mails or only oversized mails or both when a
 
2816
   user specifies both --limit and --flush. Hence, a separate --limitflush has
 
2817
   been added to resolve the ambiguity.
 
2818
 
 
2819
O15. Fetchmail always retains the first message in the mailbox.
 
2820
 
 
2821
   This happens when fetchmail sees an "X-IMAP:" header in the very first
 
2822
   message in your mailbox. This usually stems from a message like the one
 
2823
   shown below, which is automatically created on your server. This message
 
2824
   shows up if the University of Washington IMAP or PINE software is used on
 
2825
   the server together with a POP2 or POP3 daemon that is not aware of these
 
2826
   messages, such as some versions of Qualcomm Popper (QPOP):
 
2827
 
 
2828
From MAILER-DAEMON Wed Nov 23 11:38:42 2005
 
2829
Date: 23 Nov 2005 11:38:42 +0100
 
2830
From: Mail System Internal Data <MAILER-DAEMON@imap.example.org>
 
2831
Subject: DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA
 
2832
Message-ID: <1132742322@imap.example.org>
 
2833
X-IMAP: 1132742306 0000000001
 
2834
Status: RO
 
2835
 
 
2836
This text is part of the internal format of your mail folder, and is not
 
2837
a real message.  It is created automatically by the mail system software.
 
2838
If deleted, important folder data will be lost, and it will be re-created
 
2839
with the data reset to initial values.
 
2840
 
 
2841
   As this message does not contain useful information, fetchmail is not
 
2842
   retrieving it. And deleting it might slow down the server if you are keeping
 
2843
   messages on the server, and the server would recreate it anyways, that's why
 
2844
   fetchmail does not bother to delete it either.
 
2845
 
 
2846
O16. Why is the Fetchmail FAQ only available in ISO-216 A4 format? How do I get
 
2847
the FAQ in Letter format?
 
2848
 
 
2849
   All the world uses ISO-216:1975 "A4" paper except for North America. Using
 
2850
   A4 format reaches far more people than (formerly known as DIN A4, from
 
2851
   DIN 476) format. Besides that, A4 paper is available in North America. For
 
2852
   further information on the Letter-vs-A4 story, see:
 
2853
     * Markus Kuhn: "International standard paper sizes"
 
2854
     * Brian Forte: "A4 vs US Letter"
 
2855
 
 
2856
   Offering the document formatted for two different paper sizes would bloat
 
2857
   the package beyond reason, and formatting in a way that fits A4 and Letter
 
2858
   paper formats would be a waste of paper in most parts of the world. For that
 
2859
   reason, fetchmail only ships with an A4 formatted PDF document.
 
2860
 
 
2861
   To create a letter-sized PDF, install HTMLDOC, edit fetchmail-FAQ.book in
 
2862
   the source directory with your favorite text editor, replace --size A4 by
 
2863
   --size letter, and type:
 
2864
make fetchmail-FAQ.pdf
2765
2865
     _________________________________________________________________
2766
2866
 
2767
 
   Back to Fetchmail Home Page To Site Map $Date: 2003/10/10 19:10:29 $
2768
 
 
2769
2867
 
2770
2868
    Eric S. Raymond <esr@thyrsus.com>
 
2869
    Matthias Andree