]> git.llucax.com Git - software/mutt-debian.git/blob - doc/optionalfeatures.html
upstream/544794-smtp-batch.patch: mutt won't ask for a password if smtp_user and...
[software/mutt-debian.git] / doc / optionalfeatures.html
1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 6. Optional Features</title><meta name="generator" content="DocBook XSL Stylesheets V1.74.3" /><link rel="home" href="index.html" title="The Mutt E-Mail Client" /><link rel="up" href="index.html" title="The Mutt E-Mail Client" /><link rel="prev" href="mimesupport.html" title="Chapter 5. Mutt's MIME Support" /><link rel="next" href="security.html" title="Chapter 7. Security Considerations" /><style xmlns="" type="text/css">
4       body { margin-left:2%; margin-right:2%; font-family:serif; }
5 .toc, .list-of-tables, .list-of-examples { font-family:sans-serif; }
6 h1, h2, h3, h4, h5, h6 { font-family:sans-serif; }
7 p { text-align:justify; }
8 div.table p.title, div.example p.title { font-size:smaller; font-family:sans-serif; }
9 .email, .email a { font-family:monospace; }
10 div.table-contents table, div.informaltable table { border-collapse:collapse; border:1px solid #c0c0c0; }
11 div.table-contents table td, div.informaltable td, div.table-contents table th, div.informaltable table th { padding:5px; text-align:left; }
12 div.table-contents table th, div.informaltable table th {
13     font-family:sans-serif;
14     background:#d0d0d0;
15     font-weight:normal;
16     vertical-align:top;
17 }
18 div.cmdsynopsis { border-left:1px solid #707070; padding-left:5px; }
19 li div.cmdsynopsis { border-left:none; padding-left:0px; }
20 pre.screen, div.note { background:#f0f0f0; border:1px solid #c0c0c0; padding:5px; margin-left:2%; margin-right:2%; }
21 div.example p.title { margin-left:2%; }
22 div.note h3 { font-size:small; font-style:italic; font-variant: small-caps; }
23 div.note h3:after { content: ":" }
24 div.note { margin-bottom: 5px; }
25 strong.command { font-family: monospace; font-weight: normal; }
26 tr { vertical-align: top; }
27
28     </style></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 6. Optional Features</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="mimesupport.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="security.html">Next</a></td></tr></table><hr /></div><div class="chapter" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="optionalfeatures"></a>Chapter 6. Optional Features</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="optionalfeatures.html#optionalfeatures-notes">1. General Notes</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#compile-time-features">1.1. Enabling/Disabling Features</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#url-syntax">1.2. URL Syntax</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#ssl">2. SSL/TLS Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#pop">3. POP3 Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#imap">4. IMAP Support</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#imap-browser">4.1. The IMAP Folder Browser</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#imap-authentication">4.2. Authentication</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#smtp">5. SMTP Support</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#account-hook">6. Managing Multiple Accounts</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#caching">7. Local Caching</a></span></dt><dd><dl><dt><span class="sect2"><a href="optionalfeatures.html#header-caching">7.1. Header Caching</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#body-caching">7.2. Body Caching</a></span></dt><dt><span class="sect2"><a href="optionalfeatures.html#maint-cache">7.3. Maintenance</a></span></dt></dl></dd><dt><span class="sect1"><a href="optionalfeatures.html#exact-address">8. Exact Address Generation</a></span></dt><dt><span class="sect1"><a href="optionalfeatures.html#sending-mixmaster">9. Sending Anonymous Messages via Mixmaster</a></span></dt></dl></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="optionalfeatures-notes"></a>1. General Notes</h2></div></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="compile-time-features"></a>1.1. Enabling/Disabling Features</h3></div></div></div><p>
29 Mutt supports several of optional features which can be enabled or
30 disabled at compile-time by giving the <span class="emphasis"><em>configure</em></span> script
31 certain arguments. These are listed in the “<span class="quote">Optional features</span>” section of
32 the <span class="emphasis"><em>configure --help</em></span> output.
33 </p><p>
34 Which features are enabled or disabled can later be determined from the
35 output of <code class="literal">mutt -v</code>. If a compile option starts with
36 “<span class="quote">+</span>” it is enabled and disabled if prefixed with “<span class="quote">-</span>”. For example, if
37 Mutt was compiled using GnuTLS for encrypted communication instead of
38 OpenSSL, <code class="literal">mutt -v</code> would contain:
39 </p><pre class="screen">
40 -USE_SSL_OPENSSL +USE_SSL_GNUTLS</pre></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="url-syntax"></a>1.2. URL Syntax</h3></div></div></div><p>
41 Mutt optionally supports the IMAP, POP3 and SMTP protocols which require
42 to access servers using URLs. The canonical syntax for specifying URLs
43 in Mutt is (an item enclosed in <code class="literal">[]</code> means it is optional and
44 may be omitted):
45 </p><pre class="screen">
46 proto[s]://[username[:password]@]server[:port]/[path]
47 </pre><p>
48 <span class="emphasis"><em>proto</em></span> is the communication protocol:
49 <code class="literal">imap</code> for IMAP, <code class="literal">pop</code> for POP3 and
50 <code class="literal">smtp</code> for SMTP. If “<span class="quote">s</span>” for “<span class="quote">secure
51 communication</span>” is appended, Mutt will attempt to establish an
52 encrypted communication using SSL or TLS.
53 </p><p>
54 Since all protocols supported by Mutt support/require authentication,
55 login credentials may be specified in the URL. This has the advantage
56 that multiple IMAP, POP3 or SMTP servers may be specified (which isn't
57 possible using, for example,
58 <a class="link" href="reference.html#imap-user" title="3.109. imap_user">$imap_user</a>). The username
59 may contain the “<span class="quote">@</span>” symbol being used by many mail systems
60 as part of the login name. A password can be given, too but is not
61 recommended if the URL is specified in a configuration file on disk.
62 </p><p>
63 If no port number is given, Mutt will use the system's default for the
64 given protocol (usually consulting <code class="literal">/etc/services</code>).
65 </p><p>
66 The optional path is only relevant for IMAP.
67 </p><div class="example"><a id="ex-url"></a><p class="title"><b>Example 6.1. URLs</b></p><div class="example-contents"><pre class="screen">
68 pops://host/
69 imaps://user@host/INBOX/Sent
70 smtp://user@host:587/
71 </pre></div></div><br class="example-break" /></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="ssl"></a>2. SSL/TLS Support</h2></div></div></div><p>
72 If Mutt is compiled with IMAP, POP3 and/or SMTP support, it can also be
73 compiled with support for SSL or TLS using either OpenSSL or GnuTLS (
74 by running the <span class="emphasis"><em>configure</em></span> script with the
75 <span class="emphasis"><em>--enable-ssl=...</em></span> option for OpenSSL or
76 <span class="emphasis"><em>--enable-gnutls=...</em></span> for GnuTLS). Mutt can then
77 attempt to encrypt communication with remote servers if these protocols
78 are suffixed with “<span class="quote">s</span>” for “<span class="quote">secure communication</span>”.
79 </p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="pop"></a>3. POP3 Support</h2></div></div></div><p>
80 If Mutt is compiled with POP3 support (by running the <span class="emphasis"><em>configure</em></span>
81 script with the <span class="emphasis"><em>--enable-pop</em></span> flag), it has the ability to work
82 with mailboxes located on a remote POP3 server and fetch mail for local
83 browsing.
84 </p><p>
85 Remote POP3 servers can be accessed using URLs with the <code class="literal">pop</code> protocol
86 for unencrypted and <code class="literal">pops</code> for encrypted
87 communication, see <a class="xref" href="optionalfeatures.html#url-syntax" title="1.2. URL Syntax">Section 1.2, “URL Syntax”</a> for details.
88 </p><p>
89 Polling for new mail is more expensive over POP3 than locally. For this
90 reason the frequency at which Mutt will check for mail remotely can be
91 controlled by the
92 <a class="link" href="reference.html#pop-checkinterval" title="3.187. pop_checkinterval">$pop_checkinterval</a>
93 variable, which defaults to every 60 seconds.
94 </p><p>
95 POP is read-only which doesn't allow for some features like editing
96 messages or changing flags. However, using
97 <a class="xref" href="optionalfeatures.html#header-caching" title="7.1. Header Caching">Section 7.1, “Header Caching”</a> and <a class="xref" href="optionalfeatures.html#body-caching" title="7.2. Body Caching">Section 7.2, “Body Caching”</a>
98 Mutt simulates the new/old/read flags as well as flagged and replied.
99 Mutt applies some logic on top of remote messages but cannot change
100 them so that modifications of flags are lost when
101 messages are downloaded from the POP server (either by Mutt or other
102 tools).
103 </p><a id="fetch-mail"></a><p>
104 Another way to access your POP3 mail is the <code class="literal">&lt;fetch-mail&gt;</code> function
105 (default: G).  It allows to connect to <a class="link" href="reference.html#pop-host" title="3.189. pop_host">$pop_host</a>, fetch all your new mail and place it in the
106 local <a class="link" href="reference.html#spoolfile" title="3.269. spoolfile">$spoolfile</a>.  After this
107 point, Mutt runs exactly as if the mail had always been local.
108 </p><div class="note"><h3 class="title">Note</h3><p>
109 If you only need to fetch all messages to a
110 local mailbox you should consider using a specialized program, such as
111 <code class="literal">fetchmail(1)</code>, <code class="literal">getmail(1)</code> or similar.
112 </p></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="imap"></a>4. IMAP Support</h2></div></div></div><p>
113 If Mutt was compiled with IMAP support (by running the <span class="emphasis"><em>configure</em></span>
114 script with the <span class="emphasis"><em>--enable-imap</em></span> flag), it has the ability to work
115 with folders located on a remote IMAP server.
116 </p><p>
117 You can access the remote inbox by selecting the folder by its URL
118 (see <a class="xref" href="optionalfeatures.html#url-syntax" title="1.2. URL Syntax">Section 1.2, “URL Syntax”</a> for details) using the
119 <code class="literal">imap</code> or <code class="literal">imaps</code> protocol.
120 Alternatively, a pine-compatible notation is also supported, ie
121 <code class="literal">{[username@]imapserver[:port][/ssl]}path/to/folder</code>
122 </p><p>
123 Note that not all servers use “<span class="quote">/</span>” as the hierarchy separator.  Mutt should
124 correctly notice which separator is being used by the server and convert
125 paths accordingly.
126 </p><p>
127 When browsing folders on an IMAP server, you can toggle whether to look
128 at only the folders you are subscribed to, or all folders with the
129 <span class="emphasis"><em>toggle-subscribed</em></span> command.  See also the
130 <a class="link" href="reference.html#imap-list-subscribed" title="3.102. imap_list_subscribed">$imap_list_subscribed</a> variable.
131 </p><p>
132 Polling for new mail on an IMAP server can cause noticeable delays. So, you'll
133 want to carefully tune the
134 <a class="link" href="reference.html#mail-check" title="3.118. mail_check">$mail_check</a>
135 and
136 <a class="link" href="reference.html#timeout" title="3.291. timeout">$timeout</a>
137 variables. Reasonable values are:
138 </p><pre class="screen">
139 set mail_check=90
140 set timeout=15
141 </pre><p>
142 with relatively good results even over slow modem lines.
143 </p><div class="note"><h3 class="title">Note</h3><p>
144 Note that if you are using mbox as the mail store on UW servers prior to
145 v12.250, the server has been reported to disconnect a client if another client
146 selects the same folder.
147 </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="imap-browser"></a>4.1. The IMAP Folder Browser</h3></div></div></div><p>
148 As of version 1.2, Mutt supports browsing mailboxes on an IMAP
149 server. This is mostly the same as the local file browser, with the
150 following differences:
151 </p><div class="itemizedlist"><ul type="disc"><li><p>
152 In lieu of file permissions, Mutt displays the string “<span class="quote">IMAP</span>”,
153 possibly followed by the symbol “<span class="quote">+</span>”, indicating
154 that the entry contains both messages and subfolders. On
155 Cyrus-like servers folders will often contain both messages and
156 subfolders.
157 </p></li><li><p>
158 For the case where an entry can contain both messages and
159 subfolders, the selection key (bound to <code class="literal">enter</code> by default)
160 will choose to descend into the subfolder view. If you wish to view
161 the messages in that folder, you must use <code class="literal">view-file</code> instead
162 (bound to <code class="literal">space</code> by default).
163 </p></li><li><p>
164 You can create, delete and rename mailboxes with the
165 <code class="literal">&lt;create-mailbox&gt;</code>, <code class="literal">&lt;delete-mailbox&gt;</code>, and
166 <code class="literal">&lt;rename-mailbox&gt;</code> commands (default bindings: <code class="literal">C</code>,
167 <code class="literal">d</code> and <code class="literal">r</code>, respectively). You may also
168 <code class="literal">&lt;subscribe&gt;</code> and <code class="literal">&lt;unsubscribe&gt;</code> to mailboxes (normally
169 these are bound to <code class="literal">s</code> and <code class="literal">u</code>, respectively).
170 </p></li></ul></div></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="imap-authentication"></a>4.2. Authentication</h3></div></div></div><p>
171 Mutt supports four authentication methods with IMAP servers: SASL,
172 GSSAPI, CRAM-MD5, and LOGIN (there is a patch by Grant Edwards to add
173 NTLM authentication for you poor exchange users out there, but it has
174 yet to be integrated into the main tree). There is also support for
175 the pseudo-protocol ANONYMOUS, which allows you to log in to a public
176 IMAP server without having an account. To use ANONYMOUS, simply make
177 your username blank or “<span class="quote">anonymous</span>”.
178 </p><p>
179 SASL is a special super-authenticator, which selects among several protocols
180 (including GSSAPI, CRAM-MD5, ANONYMOUS, and DIGEST-MD5) the most secure
181 method available on your host and the server. Using some of these methods
182 (including DIGEST-MD5 and possibly GSSAPI), your entire session will be
183 encrypted and invisible to those teeming network snoops. It is the best
184 option if you have it. To use it, you must have the Cyrus SASL library
185 installed on your system and compile Mutt with the <span class="emphasis"><em>--with-sasl</em></span> flag.
186 </p><p>
187 Mutt will try whichever methods are compiled in and available on the server,
188 in the following order: SASL, ANONYMOUS, GSSAPI, CRAM-MD5, LOGIN.
189 </p><p>
190 There are a few variables which control authentication:
191 </p><div class="itemizedlist"><ul type="disc"><li><p>
192 <a class="link" href="reference.html#imap-user" title="3.109. imap_user">$imap_user</a> - controls
193 the username under which you request authentication on the IMAP server,
194 for all authenticators. This is overridden by an explicit username in
195 the mailbox path (ie by using a mailbox name of the form
196 <code class="literal">{user@host}</code>).
197 </p></li><li><p>
198 <a class="link" href="reference.html#imap-pass" title="3.104. imap_pass">$imap_pass</a> - a
199 password which you may preset, used by all authentication methods where
200 a password is needed.
201 </p></li><li><p>
202 <a class="link" href="reference.html#imap-authenticators" title="3.96. imap_authenticators">$imap_authenticators</a> - a colon-delimited list of IMAP
203 authentication methods to try, in the order you wish to try them. If
204 specified, this overrides Mutt's default (attempt everything, in the order
205 listed above).
206 </p></li></ul></div></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="smtp"></a>5. SMTP Support</h2></div></div></div><p>
207 Besides supporting traditional mail delivery through a
208 sendmail-compatible program, Mutt supports delivery through SMTP if it
209 was configured and built with <code class="literal">--enable-smtp</code>.
210 </p><p>
211 If the configuration variable
212 <a class="link" href="reference.html#smtp-url" title="3.262. smtp_url">$smtp_url</a> is set, Mutt
213 will contact the given SMTP server to deliver messages; if it is unset,
214 Mutt will use the program specified by <a class="link" href="reference.html#sendmail" title="3.230. sendmail">$sendmail</a>.
215 </p><p>
216 For details on the URL syntax, please see <a class="xref" href="optionalfeatures.html#url-syntax" title="1.2. URL Syntax">Section 1.2, “URL Syntax”</a>.
217 </p><p>
218 The built-in SMTP support supports encryption (the <code class="literal">smtps</code> protocol
219 using SSL or TLS) as well as SMTP authentication using SASL. The authentication mechanisms
220 for SASL are specified in <a class="link" href="reference.html#smtp-authenticators" title="3.260. smtp_authenticators">$smtp_authenticators</a>
221 defaulting to an empty list which makes Mutt try all available methods
222 from most-secure to least-secure.
223 </p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="account-hook"></a>6. Managing Multiple Accounts</h2></div></div></div><p>
224 Usage:
225 </p><div class="cmdsynopsis"><p><code class="command">account-hook</code>   
226 <em class="replaceable"><code>pattern</code></em>
227    
228 <em class="replaceable"><code>command</code></em>
229  </p></div><p>
230 If you happen to have accounts on multiple IMAP, POP and/or SMTP servers,
231 you may find managing all the authentication settings inconvenient and
232 error-prone. The <a class="link" href="optionalfeatures.html#account-hook" title="6. Managing Multiple Accounts"><span class="command"><strong>account-hook</strong></span></a> command may help. This hook works like
233 <a class="link" href="configuration.html#folder-hook" title="7. Setting Variables Based Upon Mailbox"><span class="command"><strong>folder-hook</strong></span></a> but is invoked whenever Mutt needs to access a remote mailbox
234 (including inside the folder browser), not just when you open the
235 mailbox. This includes (for example) polling for new mail, storing Fcc
236 messages and saving messages to a folder. As a consequence,
237 <a class="link" href="optionalfeatures.html#account-hook" title="6. Managing Multiple Accounts"><span class="command"><strong>account-hook</strong></span></a> should only be used to set connection-related settings such
238 as passwords or tunnel commands but not settings such as sender
239 address or name (because in general it should be considered unpredictable
240 which <a class="link" href="optionalfeatures.html#account-hook" title="6. Managing Multiple Accounts"><span class="command"><strong>account-hook</strong></span></a> was last used).
241 </p><p>
242 Some examples:
243 </p><pre class="screen">
244 account-hook . 'unset imap_user; unset imap_pass; unset tunnel'
245 account-hook imap://host1/ 'set imap_user=me1 imap_pass=foo'
246 account-hook imap://host2/ 'set tunnel="ssh host2 /usr/libexec/imapd"'
247 account-hook smtp://user@host3/ 'set tunnel="ssh host3 /usr/libexec/smtpd"'
248 </pre><p>
249 To manage multiple accounts with, for example, different values of
250 <a class="link" href="reference.html#record" title="3.211. record">$record</a> or sender addresses,
251 <a class="link" href="configuration.html#folder-hook" title="7. Setting Variables Based Upon Mailbox"><span class="command"><strong>folder-hook</strong></span></a>
252 has to be be used together with
253 the <a class="link" href="configuration.html#mailboxes" title="14. Monitoring Incoming Mail"><span class="command"><strong>mailboxes</strong></span></a> command.
254 </p><div class="example"><a id="ex-multiaccount"></a><p class="title"><b>Example 6.2. Managing multiple accounts</b></p><div class="example-contents"><pre class="screen">
255 mailboxes imap://user@host1/INBOX
256 folder-hook imap://user@host1/ 'set folder=imap://host1/ ; set record=+INBOX/Sent'
257
258 mailboxes imap://user@host2/INBOX
259 folder-hook imap://user@host2/ 'set folder=imap://host2/ ; set record=+INBOX/Sent'
260 </pre></div></div><br class="example-break" /><p>
261 In example
262 <a class="xref" href="optionalfeatures.html#ex-multiaccount" title="Example 6.2. Managing multiple accounts">Example 6.2, “Managing multiple accounts”</a> the folders are defined using
263 <a class="link" href="configuration.html#mailboxes" title="14. Monitoring Incoming Mail"><span class="command"><strong>mailboxes</strong></span></a> so Mutt polls them for new
264 mail. Each <a class="link" href="configuration.html#folder-hook" title="7. Setting Variables Based Upon Mailbox"><span class="command"><strong>folder-hook</strong></span></a> triggers when
265 one mailbox below each IMAP account is opened and sets
266 <a class="link" href="reference.html#folder" title="3.66. folder">$folder</a> to the account's root
267 folder. Next, it sets <a class="link" href="reference.html#record" title="3.211. record">$record</a> to
268 the <span class="emphasis"><em>INBOX/Sent</em></span> folder below the newly
269 set <a class="link" href="reference.html#folder" title="3.66. folder">$folder</a>. Please notice that the
270 value the “<span class="quote">+</span>”
271 <a class="link" href="advancedusage.html#shortcuts" title="7. Mailbox Shortcuts">mailbox shortcut</a> refers to depends on
272 the <span class="emphasis"><em>current</em></span> value
273 of <a class="link" href="reference.html#folder" title="3.66. folder">$folder</a> and therefore has to be set
274 separatedly per account. Setting other values
275 like <a class="link" href="reference.html#from" title="3.75. from">$from</a>
276 or <a class="link" href="reference.html#signature" title="3.235. signature">$signature</a> is analogous to setting
277 <a class="link" href="reference.html#record" title="3.211. record">$record</a>.
278 </p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="caching"></a>7. Local Caching</h2></div></div></div><p>
279 Mutt contains two types of local caching: <span class="emphasis"><em>(1)</em></span>
280 the so-called “<span class="quote">header caching</span>” and <span class="emphasis"><em>(2)</em></span> the
281 so-called “<span class="quote">body caching</span>” which are both described in this section.
282 </p><p>
283 Header caching is optional as it depends on external libraries, body
284 caching is always enabled if Mutt is compiled with POP and/or IMAP
285 support as these use it (body caching requires no external library).
286 </p><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="header-caching"></a>7.1. Header Caching</h3></div></div></div><p>
287 Mutt provides optional support for caching message headers for the
288 following types of folders: IMAP, POP, Maildir and MH. Header caching
289 greatly improves speed because for remote folders, headers
290 usually only need to be downloaded once. For Maildir and MH, reading the
291 headers from a single file is much faster than looking at possibly
292 thousands of single files (since Maildir and MH use one file per message.)
293 </p><p>
294 Header caching can be enabled via the configure script and the
295 <span class="emphasis"><em>--enable-hcache</em></span> option. It's not turned on
296 by default because external database libraries are required: one
297 of tokyocabinet, qdbm, gdbm or bdb must be present.
298 </p><p>
299 If enabled, <a class="link" href="reference.html#header-cache" title="3.79. header_cache">$header_cache</a> can be
300 used to either point to a file or a directory. If set to point to
301 a file, one database file for all folders will be used (which may
302 result in lower performance), but one file per folder if it points
303 to a directory.
304 </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="body-caching"></a>7.2. Body Caching</h3></div></div></div><p>
305 Both cache methods can be combined using the same directory for storage
306 (and for IMAP/POP even provide meaningful file names) which simplifies
307 manual maintenance tasks.
308 </p><p>
309 In addition to caching message headers only, Mutt can also cache
310 whole message bodies. This results in faster display of messages
311 for POP and IMAP folders because messages usually have to be
312 downloaded only once.
313 </p><p>
314 For configuration, the variable <a class="link" href="reference.html#message-cachedir" title="3.132. message_cachedir">$message_cachedir</a> must point to a
315 directory. There, Mutt will create a hierarchy of subdirectories
316 named like: <code class="literal">proto:user@hostname</code> where
317 <code class="literal">proto</code> is either “<span class="quote">pop</span>” or “<span class="quote">imap.</span>” Within
318 there for each folder, Mutt stores messages in single files.
319 All files can be removed as needed if the consumed disk space
320 becomes an issue as Mutt will silently fetch missing items again.
321 </p></div><div class="sect2" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="maint-cache"></a>7.3. Maintenance</h3></div></div></div><p>
322 Mutt does not (yet) support maintenance features for header cache
323 database files so that files have to be removed in case they grow too
324 big. It depends on the database library used for header caching whether
325 disk space freed by removing messages is re-used.
326 </p><p>
327 For body caches, Mutt can keep the local cache in sync with the
328 remote mailbox if the
329 <a class="link" href="reference.html#message-cache-clean" title="3.131. message_cache_clean">$message_cache_clean</a>
330 variable is set. Cleaning means to remove messages from the cache which
331 are no longer present in the mailbox which only happens when other mail
332 clients or instances of Mutt using a different body cache location
333 delete messages (Mutt itself removes deleted messages from the cache
334 when syncing a mailbox). As cleaning can take a noticeable amount of time,
335 it should not be set in general but only occasionally.
336 </p></div></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="exact-address"></a>8. Exact Address Generation</h2></div></div></div><p>
337 Mutt supports the “<span class="quote">Name &lt;user@host&gt;</span>” address syntax for reading and
338 writing messages, the older “<span class="quote">user@host (Name)</span>” syntax is only supported when
339 reading messages. The <span class="emphasis"><em>--enable-exact-address</em></span>
340 switch can be given to configure to build it with write-support
341 for the latter syntax. <code class="literal">EXACT_ADDRESS</code> in the output of
342 <code class="literal">mutt -v</code> indicates whether it's supported.
343 </p></div><div class="sect1" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="sending-mixmaster"></a>9. Sending Anonymous Messages via Mixmaster</h2></div></div></div><p>
344 You may also have compiled Mutt to co-operate with Mixmaster, an
345 anonymous remailer.  Mixmaster permits you to send your messages
346 anonymously using a chain of remailers. Mixmaster support in Mutt is for
347 mixmaster version 2.04 (beta 45 appears to be the latest) and 2.03.
348 It does not support earlier versions or the later so-called version 3 betas,
349 of which the latest appears to be called 2.9b23.
350 </p><p>
351 To use it, you'll have to obey certain restrictions.  Most
352 important, you cannot use the <code class="literal">Cc</code> and <code class="literal">Bcc</code> headers.  To tell
353 Mutt to use mixmaster, you have to select a remailer chain, using
354 the mix function on the compose menu.
355 </p><p>
356 The chain selection screen is divided into two parts.  In the
357 (larger) upper part, you get a list of remailers you may use.  In
358 the lower part, you see the currently selected chain of remailers.
359 </p><p>
360 You can navigate in the chain using the <code class="literal">&lt;chain-prev&gt;</code> and
361 <code class="literal">&lt;chain-next&gt;</code> functions, which are by default bound to the left
362 and right arrows and to the <code class="literal">h</code> and <code class="literal">l</code> keys (think vi
363 keyboard bindings).  To insert a remailer at the current chain
364 position, use the <code class="literal">&lt;insert&gt;</code> function.  To append a remailer behind
365 the current chain position, use <code class="literal">&lt;select-entry&gt;</code> or <code class="literal">&lt;append&gt;</code>.
366 You can also delete entries from the chain, using the corresponding
367 function.  Finally, to abandon your changes, leave the menu, or
368 <code class="literal">&lt;accept&gt;</code> them pressing (by default) the <code class="literal">Return</code> key.
369 </p><p>
370 Note that different remailers do have different capabilities,
371 indicated in the %c entry of the remailer menu lines (see
372 <a class="link" href="reference.html#mix-entry-format" title="3.143. mix_entry_format">$mix_entry_format</a>).  Most important is
373 the “<span class="quote">middleman</span>” capability, indicated by a capital “<span class="quote">M</span>”: This
374 means that the remailer in question cannot be used as the final
375 element of a chain, but will only forward messages to other
376 mixmaster remailers.  For details on the other capabilities, please
377 have a look at the mixmaster documentation.
378 </p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="mimesupport.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="security.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 5. Mutt's MIME Support </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 7. Security Considerations</td></tr></table></div></body></html>