From 4fc9ec0dacd4fd35c469446a714281a330281748 Mon Sep 17 00:00:00 2001
From: Matthias Andree
If you have the option, we recommend using or installing an IMAP4rev1 server; it has the best facilities for tracking message -`seen' states. It also recovers from interrupted connections more +'seen' states. It also recovers from interrupted connections more gracefully than POP3, and enables some significant performance optimizations. The new IMAP 2000 @@ -682,11 +682,11 @@ mail to the wrong machine!
Use the smtpaddress
option to force the appended
hostname to one with a (fixed) IP address of 127.0.0.1 in your
-/etc/hosts
. (The name `localhost' will usually work;
+/etc/hosts
. (The name 'localhost' will usually work;
or you can use the IP address itself).
Only one fetchmail option interacts directly with your IP
-address, `interface
'. This option can be used to set
+address, 'interface
'. This option can be used to set
the gateway device and restrict the IP address range fetchmail will
use. Such a restriction is sometimes useful for security reasons,
especially on multihomed sites. See C3.
In the immortal words of Alan Cox the last time this came up: -``Take the Solaris lex and stick it up the backside of a passing +"Take the Solaris lex and stick it up the backside of a passing Sun salesman, then install flex and use that. -All will be happier.''
+All will be happier."I couldn't have put it better myself, and ain't going to try now.
@@ -841,28 +841,28 @@ build fetchmail.If you get errors resembling these
-mxget.o(.text+0x35): undefined referenceto `__res_search' -mxget.o(.text+0x99): undefined reference to`__dn_skipname' -mxget.o(.text+0x11c): undefined reference to`__dn_expand' -mxget.o(.text+0x187): undefined reference to`__dn_expand' +mxget.o(.text+0x35): undefined referenceto '__res_search' +mxget.o(.text+0x99): undefined reference to '__dn_skipname' +mxget.o(.text+0x11c): undefined reference to '__dn_expand' +mxget.o(.text+0x187): undefined reference to '__dn_expand' make: *** [fetchmail] Error 1
then you must add "-lresolv" to the LOADLIBS line in your -Makefile once you have installed the `bind' package.
+Makefile once you have installed the 'bind' package.If you get link errors involving dcgettext, like this:
-rcfile_y.o: In function `yyparse': -rcfile_y.o(.text+0x3aa): undefined reference to `dcgettext__' -rcfile_y.o(.text+0x4f2): undefined reference to `dcgettext__' -rcfile_y.o(.text+0x5ee): undefined reference to `dcgettext__' -rcfile_y.o: In function `yyerror': -rcfile_y.o(.text+0xc7c): undefined reference to `dcgettext__' -rcfile_y.o(.text+0xcc8): undefined reference to `dcgettext__' -rcfile_y.o(.text+0xdf9): more undefined references to `dcgettext__' follow +rcfile_y.o: In function 'yyparse': +rcfile_y.o(.text+0x3aa): undefined reference to 'dcgettext__' +rcfile_y.o(.text+0x4f2): undefined reference to 'dcgettext__' +rcfile_y.o(.text+0x5ee): undefined reference to 'dcgettext__' +rcfile_y.o: In function 'yyerror': +rcfile_y.o(.text+0xc7c): undefined reference to 'dcgettext__' +rcfile_y.o(.text+0xcc8): undefined reference to 'dcgettext__' +rcfile_y.o(.text+0xdf9): more undefined references to 'dcgettext__' follow
reconfigure with configure --with-included-gettext. @@ -890,7 +890,7 @@ option to a fetchdomains option.
The `via localhost' special case for use with ssh tunnelling is +
The 'via localhost' special case for use with ssh tunnelling is gone. Use the %h feature of plugin instead.
Setting the preauth option to any value other than -`password' will prevent from looking for a password in your +'password' will prevent from looking for a password in your .netrc file or querying for it at startup time.
Just after the `via
' option was introduced, I
-realized that the interactions between the `via
',
-`aka
', and `localdomains
' options were
+
Just after the 'via
' option was introduced, I
+realized that the interactions between the 'via
',
+'aka
', and 'localdomains
' options were
out of control. Their behavior had become complex and confusing, so
much so that I was no longer sure I understood it myself. Users
were being unpleasantly surprised.
Any multidrop configurations that depended on the name just
-after the `poll
' or `skip
' keyword being
+after the 'poll
' or 'skip
' keyword being
still interpreted as a DNS name for address-matching purposes, even
-in the presence of a `via
' option, will break.
via
' option, will break.
It is theoretically possible that other unusual configurations (such as those using a non-FQDN poll name to generate Kerberos IV @@ -958,19 +958,19 @@ contact the maintainer.
The `remote
' keyword has been changed to
-`folder
'. If you try to use the old keyword, the
+
The 'remote
' keyword has been changed to
+'folder
'. If you try to use the old keyword, the
parser will utter a warning.
It could be because you're using a .fetchmailrc that's written
in the old popclient syntax without an explicit
-`username
' keyword leading the first user entry
+'username
' keyword leading the first user entry
attached to a server entry.
This error can be triggered by having a user option such as
-`keep
' or `fetchall
' before the first
+'keep
' or 'fetchall
' before the first
explicit username. For example, if you write
@@ -978,7 +978,7 @@ poll openmail protocol pop3 keep user "Hal DeVore" there is hdevore here-
the `keep
' option will generate an entire user
+
the 'keep
' option will generate an entire user
entry with the default username (the name of fetchmail's invoking
user).
The `interface
', `monitor
' and
-`batchlimit
' options changed after 2.8.
The 'interface
', 'monitor
' and
+'batchlimit
' options changed after 2.8.
They used to be global options with `set
' syntax
+
They used to be global options with 'set
' syntax
like the batchlimit and logfile options. Now they're per-server
-options, like `protocol
'.
protocol
'.
If you had something like
@@ -1001,11 +1001,11 @@ options, like `protocol
'.
in your .fetchmailrc file, simply delete that line and insert -`interface sl0/10.0.2.15' in the server options part of your -`defaults' declaration.
+'interface sl0/10.0.2.15' in the server options part of your +'defaults' declaration. -Do similarly for any `monitor
' or
-`batchlimit
' options.
Do similarly for any 'monitor
' or
+'batchlimit
' options.
See F2. You're caught in an unfortunate crack -between the newer-style syntax for negated options (`no keep', `no -rewrite' etc.) and the older style run-on syntax (`nokeep', -`norewrite' etc.).
+between the newer-style syntax for negated options ('no keep', 'no +rewrite' etc.) and the older style run-on syntax ('nokeep', +'norewrite' etc.).Upgrade to a 5.0.6 or later fetchmail, or put string quotes around your token.
The most common cause of mysterious parse errors is putting a server option after a user option. Check the manual page; you'll probably find that by moving one or more options closer to the -`poll' keyword you can eliminate the problem.
+'poll' keyword you can eliminate the problem.Yes, I know these ordering restrictions are hard to understand. -Unfortunately, they're necessary in order to allow the `defaults' +Unfortunately, they're necessary in order to allow the 'defaults' feature to work.
It won't work if the second line is just "user
itz
". This is silly.
It seems fetchmail decides to RECP the `default local user' +
It seems fetchmail decides to RECP the 'default local user' (i.e. the uid running fetchmail) unless there are local aliases, -and the `default' aliases (itz->itz) don't count. They +and the 'default' aliases (itz->itz) don't count. They should.
Answer:
@@ -1084,7 +1084,7 @@ should.No they shouldn't. I thought about this for a while, and I don't much like the conclusion I reached, but it's unavoidable. The problem is that fetchmail has no way to know, in general, that a -local user `itz' actually exists.
+local user 'itz' actually exists."Ah!" you say, "Why doesn't it check the password file to see if the remote name matches a local one?" Well, there are two @@ -1111,9 +1111,9 @@ daemon to get killed when I log out?
The easiest way to dispatch fetchmail on logout (which will work reliably only if you have just one login going at any time) is to -arrange for the command `fetchmail -q' to be called on logout. -Under bash, you can arrange this by putting `fetchmail -q' in the -file `~/.bash_logout'. Most csh variants execute `~/.logout' on +arrange for the command 'fetchmail -q' to be called on logout. +Under bash, you can arrange this by putting 'fetchmail -q' in the +file '~/.bash_logout'. Most csh variants execute '~/.logout' on logout. For other shells, consult your shell manual page.
Automatic startup/shutdown of fetchmail is a little harder to @@ -1163,9 +1163,9 @@ sl0. ppp0.
FEATURE(always_add_domain)
is
included in sendmail's configuration, you can leave the
rewrite
option off.
-If your sendmail complains ``sendmail does not relay'', make +
If your sendmail complains "sendmail does not relay", make
sure your sendmail.cf file says Cwlocalhost
so that
-sendmail recognizes `localhost' as a name of its host.
If you're mailing from another machine on your local network, also ensure that its IP address is listed in ip_allow or name in name_allow (usually in /etc/mail/)
If you find that your sendmail doesn't like the address
-`FETCHMAIL-DAEMON@localhost' (which is used in the bouncemail that
+'FETCHMAIL-DAEMON@localhost' (which is used in the bouncemail that
fetchmail generates), you may have to set
FEATURE(accept_unqualified_senders)
.
For both hacks, you have to declare ` For both hacks, you have to declare ' You will notice that if the mail already has a Delivered-To
header, sendmail will not add another. Further, editing
sendmail.cf directly is not very comfortable. Solutions for
-both problems can be found in Peter `Rattacresh' Backes' `hybrid'
+both problems can be found in Peter 'Rattacresh' Backes' 'hybrid'
patch against sendmail. Have a look at it, you can find it in
the contrib subdirectory.envelope
+
envelope
"Delivered-To:"
' on the fetchmail side, to put the virtual
-domain (e.g. `domain.com') with RELAY permission into your access
-file and to add a line reading `domain.com
-local:local-pop-user
' for the first and `domain.com
+domain (e.g. 'domain.com') with RELAY permission into your access
+file and to add a line reading '
domain.com
+local:local-pop-user
' for the first and 'domain.com
mdrop:local-pop-user
' for the second hack to your
mailertable.
One of the basic features of qmail is the `Delivered-To:' +
One of the basic features of qmail is the 'Delivered-To:' message header. Whenever qmail delivers a message to a local mailbox it puts the username and hostname of the envelope recipient on this line. The major reason for this is to prevent mail loops.
To set up qmail to batch mail for a disconnected site the -ISP-mailhost will have normally put that site in its `virtualhosts' +ISP-mailhost will have normally put that site in its 'virtualhosts' control file so it will add a prefix to all mail addresses for this site. This results in mail sent to 'username@userhost.userdom.dom.com' having a 'Delivered-To:' line @@ -1427,11 +1427,11 @@ but a string matching the user host name is likely.
To use this line you must:
So far this reliably delivers messages to the correct machine of @@ -1450,17 +1450,17 @@ local machine. Simply create a dot-qmail file called
Peter Wilson adds:
-``My ISP uses "alias-unzzippedcom-" as the prefix, which means +
"My ISP uses "alias-unzzippedcom-" as the prefix, which means that I need to name my file ".qmail-unzzippedcom-default". This is due to qmail's assumption that a message sent to user-xyz is handled by the file ~user/.qmail-xyz (or -~user/.qmail-default).''
+~user/.qmail-default)."Luca Olivetti adds:
If you aren't using qmail locally, or you don't want to set up
the alias mechanism described above, you can use the option
-`qvirtual "mbox-userstr-"
' in your fetchmail config
+'qvirtual "mbox-userstr-"
' in your fetchmail config
file to strip the prefix from the local user name.
In exim.conf, add `localhost' to your local_domains declaration +
In exim.conf, add 'localhost' to your local_domains declaration if it's not already present. For example, the author's site at thyrsus.com would have a line reading:
@@ -1523,7 +1523,7 @@ work fine out of the box. single fetchmail session, smail sometimes delivers them in an order other than received-date order. This can be annoying because it scrambles conversational threads. This is not fetchmail's problem, -it is an smail `feature' and has been reported to the maintainers +it is an smail 'feature' and has been reported to the maintainers as a bug.Very recent smail versions require an @@ -1556,7 +1556,7 @@ Notes?
The Lotus Notes SMTP gateway tries to deduce when it should convert \n to \r\n, but its rules are not the intuitive and -correct-for-RFC822 ones. Use `forcecr'.
+correct-for-RFC822 ones. Use 'forcecr'.Fetchmail using IMAP supports the proprietary NTLM mode used with M$ Exchange servers. To enable this, configure fetchmail with the --enable-NTLM option and recompile it. Specify a user option -value that looks like `user@domain': the part to the left of the @ +value that looks like 'user@domain': the part to the left of the @ will be passed as the username and the part to the right as the NTLM domain.
@@ -1821,12 +1821,12 @@ good to go, otherwise you'll have to build your own from sources directions).Give your CompuServe pass-phrase in lower case as your password. -Add `@compuserve.com' to your user ID so that it looks like `user +Add '@compuserve.com' to your user ID so that it looks like 'user <UserID>@compuserve.com', where <UserID> can be either your numerical userID or your E-mail nickname. An RPA-enabled fetchmail will automatically check for csi.com in the POP server's greeting line. If that's found, and your user ID ends with -`@compuserve.com', it will query the server to see if it is +'@compuserve.com', it will query the server to see if it is RPA-capable, and if so do an RPA transaction rather than a plain-text password handshake.
@@ -1925,9 +1925,9 @@ it may fail. To force SDPS mode, pick "sdps" as your protocol.Enable `fetchall
'. A user reports that the 2.2
+
Enable 'fetchall
'. A user reports that the 2.2
version of USA.NET's POP server reports that you must use the
-`fetchall
' option to make sure that all of the mail is
+'fetchall
' option to make sure that all of the mail is
retrieved, otherwise some may be left on the server. This is almost
certainly a server bug.
fetchall
' forces
+to avoid marking messages seen, but 'fetchall
' forces
it to use RETR instead.
Also, we're told USA.NET adds a ton of hops to your messages. @@ -2031,7 +2031,7 @@ fetchmail bug. (Reported July 2003.)
Giuseppe Guerini added a --with-socks option that supports linking with socks library. If you specify the value of this option -as ``yes'', the configure script will try to find the Rconnect +as "yes", the configure script will try to find the Rconnect library and set the makefile up to link it. You can also specify a directory containing the Rconnect library.
@@ -2250,13 +2250,13 @@ encrypting "plugin" is used or SSL is requested explicitly.Fetchmail itself is probably working, but your SMTP port 25 listener is down or inaccessible.
The first thing to check is if you can telnet to port 25 on your -smtp host (which is normally `localhost' unless you've specified an +smtp host (which is normally 'localhost' unless you've specified an smtp option in your .fetchmailrc or on the command line) and get a greeting line from the listener. If the SMTP host is inaccessible or the listener is down, fix that first.
@@ -2270,7 +2270,7 @@ most benign and typical problem is that the listener had a momentary seizure due to resource exhaustion while fetchmail was polling it -- process table full or some other problem that stopped the listener process from forking. If your SMTP host is not -`localhost' or something else in /etc/hosts, the fetchmail glitch +'localhost' or something else in /etc/hosts, the fetchmail glitch could also have been caused by transient nameserver failure.Try running fetchmail -v again; if it succeeds, you had one of @@ -2335,7 +2335,7 @@ fetchmail doesn't work. problem in X1.)
Try sending yourself test mail and retrieving it using the
-command-line options `-k -m cat
'. This will dump
+command-line options '-k -m cat
'. This will dump
exactly what fetchmail retrieves to standard output (plus the
Received line fetchmail itself adds to the headers).
Your problem may be with pppd's `demand' option. We have a +
Your problem may be with pppd's 'demand' option. We have a report that fetchmail doesn't play well with it, but works with -pppd if `demand' is turned off. We have no idea why this is.
+pppd if 'demand' is turned off. We have no idea why this is.antispam>
option) from the
listener. No interrupt can cause it to lose mail.
However, IMAP2bis has a design problem in that its normal fetch -command marks a message `seen' as soon as the fetch command to get +command marks a message 'seen' as soon as the fetch command to get it is sent down. If for some reason the message isn't actually delivered (you take a line hit during the download, or your port 25 listener can't find enough free disk space, or you interrupt the -delivery in mid-message) that `seen' message can lurk invisibly in +delivery in mid-message) that 'seen' message can lurk invisibly in your server mailbox forever.
-Workaround: add the `fetchall
' keyword to your
+
Workaround: add the 'fetchall
' keyword to your
fetch options.
Solution: switch to an IMAP4 @@ -2661,15 +2661,15 @@ multidrop mail is going to root anyway.
These errors usually indicate some kind of DNS configuration problem either on the server or your client machine.
-The easiest workaround is to add a `via
' option (if
+
The easiest workaround is to add a 'via
' option (if
necessary) and add enough aka declarations to cover all of your
-mailserver's aliases, then say `no dns
'. This will
+mailserver's aliases, then say 'no dns
'. This will
take DNS out of the picture (though it means mail may be
uncollected if it's sent to an alias of the mailserver that you
don't have listed).
localdomains
' option.
+is with the 'localdomains
' option.
In general, if you use localdomains you need to make sure of two other things:
@@ -2710,12 +2710,12 @@ other things:1. You've actually set up your .fetchmailrc entry to invoke multidrop mode.
-Many people set a `localdomains
' list and then
+
Many people set a 'localdomains
' list and then
forget that fetchmail wants to see more than one name (or the
-wildcard `*') in a `here
' list before it will do
+wildcard '*') in a 'here
' list before it will do
multidrop routing.
2. You may have to set `no envelope'.
+2. You may have to set 'no envelope'.
Normally, multidrop mode tries to deduce an envelope address from a message before parsing the To/Cc/Bcc lines (this enables it @@ -2725,7 +2725,7 @@ recipient address in the To lines).
Some ways of accumulating a whole domain's messages in a single
server mailbox mean it all ends up with a single envelope address
that is useless for rerouting purposes. You may have to set
-`no envelope
' to prevent fetchmail from being
+'no envelope
' to prevent fetchmail from being
bamboozled by this.
Check also answer T1 on a reliable way to do @@ -2762,13 +2762,13 @@ won't be, and this problem should go away.
Use the `aka
' option to pre-declare as many of your
+
Use the 'aka
' option to pre-declare as many of your
mailserver's DNS names as you can. When an address's host part
matches an aka name, no DNS lookup needs to be done to check
it.
If you're sure you've pre-declared all of your mailserver's DNS
-names, you can use the `no dns
' option to prevent
+names, you can use the 'no dns
' option to prevent
other hostname parts from being looked up at all.
Sometimes delays are unavoidable. Some SMTP listeners try to @@ -2845,11 +2845,11 @@ mailserver's theory of who the message was addressed to.
Some (unusual) mailserver configurations will generate extra
Received lines which you need to skip. To arrange this, use the
-optional skip prefix argument of the `envelope' option; you may
-need to say something like `envelope 1 Received
' or
-`envelope 2 Received
'.
envelope 1 Received
' or
+'envelope 2 Received
'.
-When fetchmail parses a Received line that looks like
@@ -2859,10 +2859,10 @@ Received: from send103.yahoomail.com (send103.yahoomail.com [205.180.60.92]) for <ksturgeon@fbceg.org>; Wed, 9 Sep 1998 17:01:59 -0700 -it checks to see if `iserv.ttns.net' is a DNS alias of your -mailserver before accepting `ksturgeon@fbceg.org' as an envelope +
it checks to see if 'iserv.ttns.net' is a DNS alias of your +mailserver before accepting 'ksturgeon@fbceg.org' as an envelope address. This check might fail if your DNS were misconfigured, or -if you were using `no dns' and had failed to declare iserv.ttns.net +if you were using 'no dns' and had failed to declare iserv.ttns.net as an alias of your server.
mda
' option.
+declare it with the 'mda
' option.
You can test this. Declare an mda of `cat' and send yourself one +
You can test this. Declare an mda of 'cat' and send yourself one piece of mail containing "From" at start of a line. If you see a split message, your POP/IMAP server is at fault. Upgrade to a more recent version.
@@ -2955,7 +2955,7 @@ sendmail.cf file. There will likely be a line something like Mlocal, P=/usr/bin/procmail, F=lsDFMShP, S=10, R=20/40, A=procmail -Y -d $u -describing your local delivery agent. Try inserting the `E' +
describing your local delivery agent. Try inserting the 'E' option in the flags part (the F= string). This will make sendmail turn each dangerous start-of-line From into a >From, preventing programs further downstream from acting up.
@@ -3297,7 +3297,7 @@ the header is dumped to all my terminal sessions.Fetchmail uses the local sendmail to perform final delivery, which Netscape and other clients doesn't do; the announcement of new messages is done by a daemon that sendmail pokes. There should -be a ``biff'' command to control this. Type
+be a "biff" command to control this. Typebiff n @@ -3306,11 +3306,11 @@ biff nto turn it off. If this doesn't work, try the command
-chmod -x `tty` +chmod -x $(tty)which is essentially what
biff -n
will do. If this -doesn't work, comment out any reference to ``comsat'' in your +doesn't work, comment out any reference to "comsat" in your /etc/inetd.conf file and restart inetd.In Slackware Linux distributions, the last line in /etc/profile -- cgit v1.2.3