aboutsummaryrefslogtreecommitdiffstats
pre { line-height: 125%; } td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } .highlight .hll { background-color: #ffffcc } .highlight .c { color: #888888 } /* Comment */ .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ .highlight .k { color: #008800; font-weight: bold } /* Keyword */ .highlight .ch { color: #888888 } /* Comment.Hashbang */ .highlight .cm { color: #888888 } /* Comment.Multiline */ .highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ .highlight .cpf { color: #888888 } /* Comment.PreprocFile */ .highlight .c1 { color: #888888 } /* Comment.Single */ .highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ .highlight .ge { font-style: italic } /* Generic.Emph */ .highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */ .highlight .gr { color: #aa0000 } /* Generic.Error */ .highlight .gh { color: #333333 } /* Generic.Heading */ .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ .highlight .go { color: #888888 } /* Generic.Output */ .highlight .gp { color: #555555 } /* Generic.Prompt */ .highlight .gs { font-weight: bold } /* Generic.Strong */ .highlight .gu { color: #666666 } /* Generic.Subheading */ .highlight .gt { color: #aa0000 } /* Generic.Traceback */ .highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ .highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ .highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ .highlight .kp { color: #008800 } /* Keyword.Pseudo */ .highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ .highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ .highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ .highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ .highlight .na { color: #336699 } /* Name.Attribute */ .highlight .nb { color: #003388 } /* Name.Builtin */ .highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ .highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ .highlight .nd { color: #555555 } /* Name.Decorator */ .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #
Commit message (Expand)AuthorAgeFilesLines
...
* Now we can overwrite the .fetchmailrcEric S. Raymond1998-05-261-4/+14
* Stay synchronized.Eric S. Raymond1998-05-261-1/+1
* Stay synchronized.Eric S. Raymond1998-05-262-2/+2
* Cleanup.Eric S. Raymond1998-05-261-17/+20
* Done with fetch/post abstraction.Eric S. Raymond1998-05-261-11/+1
* Almost done with fetch/post abstraction.Eric S. Raymond1998-05-261-32/+33
* post/gather abstraction, part 2.Eric S. Raymond1998-05-261-25/+3
* First step towards abstracting out post/gather.Eric S. Raymond1998-05-261-27/+26
* Turn typemap static.Eric S. Raymond1998-05-261-6/+6
* Initialization now completely separated from editing.Eric S. Raymond1998-05-261-13/+14
* Separate initialization from editing.Eric S. Raymond1998-05-261-22/+24
* Currying eliminates a method declaration.Eric S. Raymond1998-05-261-4/+3
* 1-0/+10
* Two XXXs gone.Eric S. Raymond1998-05-251-5/+6
* We can get down to user level and edit now.Eric S. Raymond1998-05-252-9/+9
* A significant step forward -- we can get down to user level now!Eric S. Raymond1998-05-251-27/+17
* Fix the idfile option.Eric S. Raymond1998-05-252-1/+2
* We can read and dump the fetchmail --configdump output now.Eric S. Raymond1998-05-251-14/+15
* This version can read a configuration into an object tree and dump it.Eric S. Raymond1998-05-252-41/+82
* Kok Seng's package to prevent UID lossage.Eric S. Raymond1998-05-252-3/+15
* Cleanup.Eric S. Raymond1998-05-251-0/+2
* Don't <-enclose MAIL FROM name if it already contains one.Eric S. Raymond1998-05-251-11/+14
* Gunter's command-line fixes.Eric S. Raymond1998-05-254-28/+92
* Before Gunther's patches.Eric S. Raymond1998-05-252-70/+70
* Top-level copy is working.Eric S. Raymond1998-05-241-49/+72
* Fix syntax error.Eric S. Raymond1998-05-241-1/+1
* Another step forward.Eric S. Raymond1998-05-241-18/+139
* Added idfile.Eric S. Raymond1998-05-241-0/+14
* Added envskip query.Eric S. Raymond1998-05-241-2/+9
* Added antispam and smtpaddress fields.Eric S. Raymond1998-05-241-1/+9
* Added mimedecode.Eric S. Raymond1998-05-241-2/+9
* Cleanup.Eric S. Raymond1998-05-241-2/+4
* This code yields a syntactically correct Python initializer thatEric S. Raymond1998-05-231-10/+26
* We can utter a Python initializer now.Eric S. Raymond1998-05-232-160/+193
* Initial revisionEric S. Raymond1998-05-231-0/+227
* Remove the fetchall kluge.Eric S. Raymond1998-05-234-35/+24
* Added configuration dumper.Eric S. Raymond1998-05-234-11/+14
* Preserve interface string through parsing.Eric S. Raymond1998-05-231-2/+14
> &ndash; and that is exactly what we need to do.</p> <p>If fetchmail is supposed to retrieve all mail from a mailbox reliably, without being disturbed by someone occasionally using another client on another host, or a webmailer, or similar, then <em>client</em>-side tracking of the state is indispensable. This is also needed to match behavior to ETRN and ODMR or to support read-only mailboxes in --keep mode.</p> <h3>Present and future</h3> <p>Fetchmail supports client-side state in POP3 if the UIDL option is used (which is strongly recommended). Similar effort needs to be made to track IMAP state by means of UIDVALIDITY and UID.</p> <p>This will also mean that the UID handling code be revised an perhaps use one file per account or per folder.</p> <h2>Concurrent queries/concurrent fetchmail instances</h2> <p>ESR refused to make fetchmail query multiple hosts or accounts concurrently, on the grounds that finer-grained locks would be hard to implement portably.</p> <p>The idea of using one file per folder or account to track UIDs on the client-side will make solving this locking problem easy &ndash; the lock can be placed on the UID file instead.</p> <h2>Multidrop issues</h2> <p>Fetchmail tries to guess recipients from headers that are not routing relevant, for instance, To:, Cc:, or Resent-headers (which are rare anyways). It is important that fetchmail insists on the real envelope operation for multidrop. This is detailed in <a href="http://home.pages.de/~mandree/mail/multidrop">my article &quot;Requisites for working multidrop mailboxes&quot;</a>.</p> <p>As Terry Lambert pointed out in the FreeBSD-arch mailing list on 2001-02-17 under the subject "UUCP must stay; fetchmail sucks", fetchmail performs DNS MX lookups to determine domains for which multidrop is valid, on the assumption that the receiving SMTP host upstream were the same as the IMAP or POP3 server.</p> <hr /> <table width="100%" cellpadding="0" summary="Canned page footer"> <tr> <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a></td> <td width="30%" align="right">$Date$</td> </tr> </table> <br clear="left" /> <address>Matthias Andree <a href="mailto:matthias.andree@gmx.de">&lt;matthias.andree@gmx.de&gt;</a></address> </body> </html>