From 3ad8157bbbc6b9fae1c3252aad1c07fcccd92004 Mon Sep 17 00:00:00 2001 From: Pierre Habouzit Date: Tue, 10 Apr 2007 01:34:17 +0200 Subject: [PATCH] Repository cleanse. Signed-off-by: Pierre Habouzit --- Madmuttrc.head.in | 88 - Makefile.am | 19 +- Muttrc | 4289 ---------------------- VERSION.in | 1 - compile.sh | 8 - configure.ac | 5 +- BUGS => legacy/BUGS | 0 INSTALL => legacy/INSTALL | 0 TODO => legacy/TODO | 0 {doc => legacy/doc}/Makefile.in | 0 {doc => legacy/doc}/PGP-Notes.txt | 0 {doc => legacy/doc}/applying-patches.txt | 0 {doc => legacy/doc}/chunk.xsl | 0 {doc => legacy/doc}/devel-notes.txt | 0 {doc => legacy/doc}/dotlock.man | 0 {doc => legacy/doc}/html.xsl | 0 {doc => legacy/doc}/instdoc.sh.in | 0 {doc => legacy/doc}/madmutt-manual.xsl | 0 {doc => legacy/doc}/madmutt-tex.xsl | 0 {doc => legacy/doc}/madmutt.css | 0 {doc => legacy/doc}/madmutt.ist | 0 {doc => legacy/doc}/madmutt.sty | 0 {doc => legacy/doc}/manual.xml.head | 0 {doc => legacy/doc}/manual.xml.tail | 0 {doc => legacy/doc}/mbox.man | 0 {doc => legacy/doc}/mutt.man | 0 {doc => legacy/doc}/muttrc.man.head | 0 {doc => legacy/doc}/muttrc.man.tail | 0 {doc => legacy/doc}/patch-notes.txt | 0 {doc => legacy/doc}/smime-notes.txt | 0 smime_keys.pl | 972 ----- 31 files changed, 3 insertions(+), 5379 deletions(-) delete mode 100644 Madmuttrc.head.in delete mode 100644 Muttrc delete mode 100644 VERSION.in delete mode 100755 compile.sh rename BUGS => legacy/BUGS (100%) rename INSTALL => legacy/INSTALL (100%) rename TODO => legacy/TODO (100%) rename {doc => legacy/doc}/Makefile.in (100%) rename {doc => legacy/doc}/PGP-Notes.txt (100%) rename {doc => legacy/doc}/applying-patches.txt (100%) rename {doc => legacy/doc}/chunk.xsl (100%) rename {doc => legacy/doc}/devel-notes.txt (100%) rename {doc => legacy/doc}/dotlock.man (100%) rename {doc => legacy/doc}/html.xsl (100%) rename {doc => legacy/doc}/instdoc.sh.in (100%) rename {doc => legacy/doc}/madmutt-manual.xsl (100%) rename {doc => legacy/doc}/madmutt-tex.xsl (100%) rename {doc => legacy/doc}/madmutt.css (100%) rename {doc => legacy/doc}/madmutt.ist (100%) rename {doc => legacy/doc}/madmutt.sty (100%) rename {doc => legacy/doc}/manual.xml.head (100%) rename {doc => legacy/doc}/manual.xml.tail (100%) rename {doc => legacy/doc}/mbox.man (100%) rename {doc => legacy/doc}/mutt.man (100%) rename {doc => legacy/doc}/muttrc.man.head (100%) rename {doc => legacy/doc}/muttrc.man.tail (100%) rename {doc => legacy/doc}/patch-notes.txt (100%) rename {doc => legacy/doc}/smime-notes.txt (100%) delete mode 100755 smime_keys.pl diff --git a/Madmuttrc.head.in b/Madmuttrc.head.in deleted file mode 100644 index ddaae1a..0000000 --- a/Madmuttrc.head.in +++ /dev/null @@ -1,88 +0,0 @@ -# -# System configuration file for Mutt -# - -# default list of header fields to weed when displaying -# -ignore "from " received content- mime-version status x-status message-id -ignore sender references return-path lines - -# imitate the old search-body function -macro index \eb '/~b ' 'search in message bodies' - -# simulate the old url menu -macro index \cb |urlview\n 'call urlview to extract URLs out of a message' -macro pager \cb |urlview\n 'call urlview to extract URLs out of a message' - -# Show documentation when pressing F1 -macro generic "!less @docdir@/manual.txt\n" "Show Mutt documentation" -macro index "!less @docdir@/manual.txt\n" "Show Mutt documentation" -macro pager "!less @docdir@/manual.txt\n" "Show Mutt documentation" - -# If Mutt is unable to determine your site's domain name correctly, you can -# set the default here. -# -# set hostname=cs.hmc.edu - -# If your sendmail supports the -B8BITMIME flag, enable the following -# -# set use_8bitmime - -## -## *** DEFAULT SETTINGS FOR THE ATTACHMENTS PATCH *** -## - -## -## Please see the manual (section "attachments") for detailed -## documentation of the "attachments" command. -## -## Removing a pattern from a list removes that pattern literally. It -## does not remove any type matching the pattern. -## -## attachments +A */.* -## attachments +A image/jpeg -## unattachments +A */.* -## -## This leaves "attached" image/jpeg files on the allowed attachments -## list. It does not remove all items, as you might expect, because the -## second */.* is not a matching expression at this time. -## -## Remember: "unattachments" only undoes what "attachments" has done! -## It does not trigger any matching on actual messages. - -## Qualify any MIME part with an "attachment" disposition, EXCEPT for -## text/x-vcard and application/pgp parts. (PGP parts are already known -## to mutt, and can be searched for with ~g, ~G, and ~k.) -## -## I've added x-pkcs7 to this, since it functions (for S/MIME) -## analogously to PGP signature attachments. S/MIME isn't supported -## in a stock mutt build, but we can still treat it specially here. -## -attachments +A */.* -attachments -A text/x-vcard application/pgp.* -attachments -A application/x-pkcs7-.* - -## Discount all MIME parts with an "inline" disposition, unless they're -## text/plain. (Why inline a text/plain part unless it's external to the -## message flow?) -## -attachments +I text/plain - -## These two lines make Mutt qualify MIME containers. (So, for example, -## a message/rfc822 forward will count as an attachment.) The first -## line is unnecessary if you already have "attach-allow */.*", of -## course. These are off by default! The MIME elements contained -## within a message/* or multipart/* are still examined, even if the -## containers themseves don't qualify. -## -#attachments +A message/.* multipart/.* -#attachments +I message/.* multipart/.* - -## You probably don't really care to know about deleted attachments. -attachments -A message/external-body -attachments -I message/external-body - -## -## More settings -## - diff --git a/Makefile.am b/Makefile.am index a1279fb..54167f5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -15,7 +15,7 @@ SUBDIRS = tools intl m4 po \ BUILT_SOURCES = keymap_defs.h charset.gperf DISTCLEANFILES = $(BUILT_SOURCES) -bin_PROGRAMS = madmutt madmutt_dotlock smime_keysng +bin_PROGRAMS = madmutt madmutt_dotlock madmutt_SOURCES = $(BUILT_SOURCES) \ alias.c attach.c base64.c browser.c buffy.c charset.c commands.c \ compose.c copy.c crypt.c editmsg.c init.c keymap.c \ @@ -72,14 +72,13 @@ EXTRA_DIST = config.rpath COPYRIGHT GPL OPS TODO \ recvattach.h handler.h thread.h globals.h init.h keymap.h \ mime.h mutt.h mutt_sasl.h pager.h protos.h \ sort.h autogen.sh remailer.c remailer.h browser.h state.h \ - smime_keys.pl Madmuttrc.head Madmuttrc \ README.SSL depcomp mutt_idna.h mutt_libesmtp.h madmutt_dotlock_SOURCES = dotlock.c madmutt_dotlock_LDADD = @LIBOBJS@ $(top_builddir)/lib-lib/liblib.a madmutt_dotlock_DEPENDENCIES = @LIBOBJS@ $(top_builddir)/lib-lib/liblib.a -CLEANFILES = keymap_defs.h Madmuttrc +CLEANFILES = keymap_defs.h ACLOCAL_AMFLAGS = -I m4 @@ -88,10 +87,6 @@ LDADD = @LIBOBJS@ @LIBINTL@ charset.gperf: charset.def sh $< > $@ -smime_keysng: $(srcdir)/smime_keys.pl - cp $(srcdir)/smime_keys.pl smime_keysng - chmod +x smime_keysng - keymap_defs.h: OPS $(srcdir)/gen_defs $^ > keymap_defs.h @@ -106,16 +101,6 @@ install-exec-hook: { echo "Can't fix madmutt_dotlock's permissions!" >&2 ; } \ fi -install-data-local: Madmuttrc - $(srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir) - -if [ -f $(DESTDIR)$(pkgdatadir)/Madmuttrc ] ; then \ - mv $(DESTDIR)$(pkgdatadir)/Madmuttrc* $(DESTDIR)$(sysconfdir) ; \ - elif [ -f $(DESTDIR)$(pkgdatadir)/../Madmuttrc ] ; then \ - mv $(DESTDIR)$(pkgdatadir)/../Madmuttrc* $(DESTDIR)$(sysconfdir) ; \ - elif [ ! -f $(DESTDIR)$(sysconfdir)/Madmuttrc ] ; then \ - $(INSTALL) -m 644 Madmuttrc $(DESTDIR)$(sysconfdir) ; \ - fi - include tools/cpkg2c.mk -include tools/cflags.mk diff --git a/Muttrc b/Muttrc deleted file mode 100644 index 5a56e85..0000000 --- a/Muttrc +++ /dev/null @@ -1,4289 +0,0 @@ -# -# System configuration file for Mutt -# - -# default list of header fields to weed when displaying -# -ignore "from " received content- mime-version status x-status message-id -ignore sender references return-path lines - -# imitate the old search-body function -macro index \eb '/~b ' 'search in message bodies' - -# simulate the old url menu -macro index \cb |urlview\n 'call urlview to extract URLs out of a message' -macro pager \cb |urlview\n 'call urlview to extract URLs out of a message' - -# Show documentation when pressing F1 -macro generic "!less /usr/local/doc/mutt/manual.txt\n" "Show Mutt documentation" -macro index "!less /usr/local/doc/mutt/manual.txt\n" "Show Mutt documentation" -macro pager "!less /usr/local/doc/mutt/manual.txt\n" "Show Mutt documentation" - -# If Mutt is unable to determine your site's domain name correctly, you can -# set the default here. -# -# set hostname=cs.hmc.edu - -# If your sendmail supports the -B8BITMIME flag, enable the following -# -# set use_8bitmime - -## -## More settings -## - - -# set abort_nosubject=ask-yes -# -# Name: abort_nosubject -# Type: quadoption -# Default: ask-yes -# -# -# If set to yes, when composing messages and no subject is given -# at the subject prompt, composition will be aborted. If set to -# no, composing messages with no subject given at the subject -# prompt will never be aborted. -# -# -# set abort_unmodified=yes -# -# Name: abort_unmodified -# Type: quadoption -# Default: yes -# -# -# If set to yes, composition will automatically abort after -# editing the message body if no changes are made to the file (this -# check only happens after the first edit of the file). When set -# to no, composition will never be aborted. -# -# -# set alias_file="~/.muttrc" -# -# Name: alias_file -# Type: path -# Default: "~/.muttrc" -# -# -# The default file in which to save aliases created by the -# ``create-alias'' function. -# -# Note: Mutt will not automatically source this file; you must -# explicitly use the ``source'' command for it to be executed. -# -# -# set alias_format="%4n %2f %t %-10a %r" -# -# Name: alias_format -# Type: string -# Default: "%4n %2f %t %-10a %r" -# -# -# Specifies the format of the data displayed for the `alias' menu. The -# following printf(3)-style sequences are available: -# -# %a alias name -# %f flags - currently, a "d" for an alias marked for deletion -# %n index number -# %r address which alias expands to -# %t character which indicates if the alias is tagged for inclusion -# -# -# set allow_8bit=yes -# -# Name: allow_8bit -# Type: boolean -# Default: yes -# -# -# Controls whether 8-bit data is converted to 7-bit using either Quoted- -# Printable or Base64 encoding when sending mail. -# -# -# set allow_ansi=no -# -# Name: allow_ansi -# Type: boolean -# Default: no -# -# -# Controls whether ANSI color codes in messages (and color tags in -# rich text messages) are to be interpreted. -# Messages containing these codes are rare, but if this option is set, -# their text will be colored accordingly. Note that this may override -# your color choices, and even present a security problem, since a -# message could include a line like "[-- PGP output follows ..." and -# give it the same color as your attachment color. -# -# -# set arrow_cursor=no -# -# Name: arrow_cursor -# Type: boolean -# Default: no -# -# -# When set, an arrow (``->'') will be used to indicate the current entry -# in menus instead of highlighting the whole line. On slow network or modem -# links this will make response faster because there is less that has to -# be redrawn on the screen when moving to the next or previous entries -# in the menu. -# -# -# set ascii_chars=no -# -# Name: ascii_chars -# Type: boolean -# Default: no -# -# -# If set, Mutt will use plain ASCII characters when displaying thread -# and attachment trees, instead of the default ACS characters. -# -# -# set askbcc=no -# -# Name: askbcc -# Type: boolean -# Default: no -# -# -# If set, Mutt will prompt you for blind-carbon-copy (Bcc) recipients -# before editing an outgoing message. -# -# -# set askcc=no -# -# Name: askcc -# Type: boolean -# Default: no -# -# -# If set, Mutt will prompt you for carbon-copy (Cc) recipients before -# editing the body of an outgoing message. -# -# -# set ask_follow_up=no -# -# Name: ask_follow_up -# Type: boolean -# Default: no -# -# -# If set, Mutt will prompt you for follow-up groups before editing -# the body of an outgoing message. -# -# -# set ask_x_comment_to=no -# -# Name: ask_x_comment_to -# Type: boolean -# Default: no -# -# -# If set, Mutt will prompt you for x-comment-to field before editing -# the body of an outgoing message. -# -# -# set attach_format="%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] " -# -# Name: attach_format -# Type: string -# Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] " -# -# -# This variable describes the format of the `attachment' menu. The -# following printf-style sequences are understood: -# -# %C charset -# %c requires charset conversion (n or c) -# %D deleted flag -# %d description -# %e MIME content-transfer-encoding -# %f filename -# %I disposition (I=inline, A=attachment) -# %m major MIME type -# %M MIME subtype -# %n attachment number -# %s size -# %t tagged flag -# %T graphic tree characters -# %u unlink (=to delete) flag -# %>X right justify the rest of the string and pad with character "X" -# %|X pad to the end of the line with character "X" -# -# -# set attach_sep="\n" -# -# Name: attach_sep -# Type: string -# Default: "\n" -# -# -# The separator to add between attachments when operating (saving, -# printing, piping, etc) on a list of tagged attachments. -# -# -# set attach_split=yes -# -# Name: attach_split -# Type: boolean -# Default: yes -# -# -# If this variable is unset, when operating (saving, printing, piping, -# etc) on a list of tagged attachments, Mutt will concatenate the -# attachments and will operate on them as a single attachment. The -# ``$attach_sep'' separator is added after each attachment. When set, -# Mutt will operate on the attachments one by one. -# -# -# set attribution="On %d, %n wrote:" -# -# Name: attribution -# Type: string -# Default: "On %d, %n wrote:" -# -# -# This is the string that will precede a message which has been included -# in a reply. For a full listing of defined printf()-like sequences see -# the section on ``$index_format''. -# -# -# set autoedit=no -# -# Name: autoedit -# Type: boolean -# Default: no -# -# -# When set along with ``$edit_headers'', Mutt will skip the initial -# send-menu and allow you to immediately begin editing the body of your -# message. The send-menu may still be accessed once you have finished -# editing the body of your message. -# -# Also see ``$fast_reply''. -# -# -# set auto_tag=no -# -# Name: auto_tag -# Type: boolean -# Default: no -# -# -# When set, functions in the index menu which affect a message -# will be applied to all tagged messages (if there are any). When -# unset, you must first use the tag-prefix function (default: ";") to -# make the next function apply to all tagged messages. -# -# -# set beep=yes -# -# Name: beep -# Type: boolean -# Default: yes -# -# -# When this variable is set, mutt will beep when an error occurs. -# -# -# set beep_new=no -# -# Name: beep_new -# Type: boolean -# Default: no -# -# -# When this variable is set, mutt will beep whenever it prints a message -# notifying you of new mail. This is independent of the setting of the -# ``$beep'' variable. -# -# -# set bounce=ask-yes -# -# Name: bounce -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether you will be asked to confirm bouncing messages. -# If set to yes you don't get asked if you want to bounce a -# message. Setting this variable to no is not generally useful, -# and thus not recommended, because you are unable to bounce messages. -# -# -# set bounce_delivered=yes -# -# Name: bounce_delivered -# Type: boolean -# Default: yes -# -# -# When this variable is set, mutt will include Delivered-To headers when -# bouncing messages. Postfix users may wish to unset this variable. -# -# -# set catchup_newsgroup=ask-yes -# -# Name: catchup_newsgroup -# Type: quadoption -# Default: ask-yes -# -# -# If this variable is set, Mutt will mark all articles in newsgroup -# as read when you quit the newsgroup (catchup newsgroup). -# -# -# set charset="" -# -# Name: charset -# Type: string -# Default: "" -# -# -# Character set your terminal uses to display and enter textual data. -# -# -# set check_new=yes -# -# Name: check_new -# Type: boolean -# Default: yes -# -# -# Note: this option only affects maildir and MH style -# mailboxes. -# -# When set, Mutt will check for new mail delivered while the -# mailbox is open. Especially with MH mailboxes, this operation can -# take quite some time since it involves scanning the directory and -# checking each file to see if it has already been looked at. If -# check_new is unset, no check for new mail is performed -# while the mailbox is open. -# -# -# set collapse_unread=yes -# -# Name: collapse_unread -# Type: boolean -# Default: yes -# -# -# When unset, Mutt will not collapse a thread if it contains any -# unread messages. -# -# -# set uncollapse_jump=no -# -# Name: uncollapse_jump -# Type: boolean -# Default: no -# -# -# When set, Mutt will jump to the next unread message, if any, -# when the current thread is uncollapsed. -# -# -# set compose_format="-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-" -# -# Name: compose_format -# Type: string -# Default: "-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-" -# -# -# Controls the format of the status line displayed in the Compose -# menu. This string is similar to ``$status_format'', but has its own -# set of printf()-like sequences: -# -# %a total number of attachments -# %h local hostname -# %l approximate size (in bytes) of the current message -# %v Mutt version string -# -# -# See the text describing the ``$status_format'' option for more -# information on how to set ``$compose_format''. -# -# -# set config_charset="" -# -# Name: config_charset -# Type: string -# Default: "" -# -# -# When defined, Mutt will recode commands in rc files from this -# encoding. -# -# -# set confirmappend=yes -# -# Name: confirmappend -# Type: boolean -# Default: yes -# -# -# When set, Mutt will prompt for confirmation when appending messages to -# an existing mailbox. -# -# -# set confirmcreate=yes -# -# Name: confirmcreate -# Type: boolean -# Default: yes -# -# -# When set, Mutt will prompt for confirmation when saving messages to a -# mailbox which does not yet exist before creating it. -# -# -# set connect_timeout=30 -# -# Name: connect_timeout -# Type: number -# Default: 30 -# -# -# Causes Mutt to timeout a network connection (for IMAP or POP) after this -# many seconds if the connection is not able to be established. A negative -# value causes Mutt to wait indefinitely for the connection to succeed. -# -# -# set content_type="text/plain" -# -# Name: content_type -# Type: string -# Default: "text/plain" -# -# -# Sets the default Content-Type for the body of newly composed messages. -# -# -# set copy=yes -# -# Name: copy -# Type: quadoption -# Default: yes -# -# -# This variable controls whether or not copies of your outgoing messages -# will be saved for later references. Also see ``$record'', -# ``$save_name'', ``$force_name'' and ``fcc-hook''. -# -# -# set crypt_use_gpgme=no -# -# Name: crypt_use_gpgme -# Type: boolean -# Default: no -# -# -# This variable controls the use the GPGME enabled crypto backends. -# If it is set and Mutt was build with gpgme support, the gpgme code for -# S/MIME and PGP will be used instead of the classic code. Note, that -# you need to use this option in .muttrc as it won't have any effect when -# used interactively. -# -# -# set crypt_autopgp=yes -# -# Name: crypt_autopgp -# Type: boolean -# Default: yes -# -# -# This variable controls whether or not mutt may automatically enable -# PGP encryption/signing for messages. See also ``$crypt_autoencrypt'', -# ``$crypt_replyencrypt'', -# ``$crypt_autosign'', ``$crypt_replysign'' and ``$smime_is_default''. -# -# -# set crypt_autosmime=yes -# -# Name: crypt_autosmime -# Type: boolean -# Default: yes -# -# -# This variable controls whether or not mutt may automatically enable -# S/MIME encryption/signing for messages. See also ``$crypt_autoencrypt'', -# ``$crypt_replyencrypt'', -# ``$crypt_autosign'', ``$crypt_replysign'' and ``$smime_is_default''. -# -# -# set date_format="!%a, %b %d, %Y at %I:%M:%S%p %Z" -# -# Name: date_format -# Type: string -# Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z" -# -# -# This variable controls the format of the date printed by the ``%d'' -# sequence in ``$index_format''. This is passed to the strftime -# call to process the date. See the man page for strftime(3) for -# the proper syntax. -# -# Unless the first character in the string is a bang (``!''), the month -# and week day names are expanded according to the locale specified in -# the variable ``$locale''. If the first character in the string is a -# bang, the bang is discarded, and the month and week day names in the -# rest of the string are expanded in the C locale (that is in US -# English). -# -# -# set default_hook="~f %s !~P | (~P ~C %s)" -# -# Name: default_hook -# Type: string -# Default: "~f %s !~P | (~P ~C %s)" -# -# -# This variable controls how send-hooks, message-hooks, save-hooks, -# and fcc-hooks will -# be interpreted if they are specified with only a simple regexp, -# instead of a matching pattern. The hooks are expanded when they are -# declared, so a hook will be interpreted according to the value of this -# variable at the time the hook is declared. The default value matches -# if the message is either from a user matching the regular expression -# given, or if it is from you (if the from address matches -# ``alternates'') and is to or cc'ed to a user matching the given -# regular expression. -# -# -# set delete=ask-yes -# -# Name: delete -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether or not messages are really deleted when closing or -# synchronizing a mailbox. If set to yes, messages marked for -# deleting will automatically be purged without prompting. If set to -# no, messages marked for deletion will be kept in the mailbox. -# -# -# set delete_untag=yes -# -# Name: delete_untag -# Type: boolean -# Default: yes -# -# -# If this option is set, mutt will untag messages when marking them -# for deletion. This applies when you either explicitly delete a message, -# or when you save it to another folder. -# -# -# set digest_collapse=yes -# -# Name: digest_collapse -# Type: boolean -# Default: yes -# -# -# If this option is set, mutt's received-attachments menu will not show the subparts of -# individual messages in a multipart/digest. To see these subparts, press 'v' on that menu. -# -# -# set display_filter="" -# -# Name: display_filter -# Type: path -# Default: "" -# -# -# When set, specifies a command used to filter messages. When a message -# is viewed it is passed as standard input to $display_filter, and the -# filtered message is read from the standard output. -# -# -# set dotlock_program="/usr/local/bin/mutt_dotlock" -# -# Name: dotlock_program -# Type: path -# Default: "/usr/local/bin/mutt_dotlock" -# -# -# Contains the path of the mutt_dotlock (8) binary to be used by -# mutt. -# -# -# set dsn_notify="" -# -# Name: dsn_notify -# Type: string -# Default: "" -# -# -# Note: you should not enable this unless you are using Sendmail -# 8.8.x or greater. -# -# This variable sets the request for when notification is returned. The -# string consists of a comma separated list (no spaces!) of one or more -# of the following: never, to never request notification, -# failure, to request notification on transmission failure, -# delay, to be notified of message delays, success, to be -# notified of successful transmission. -# -# Example: set dsn_notify="failure,delay" -# -# -# set dsn_return="" -# -# Name: dsn_return -# Type: string -# Default: "" -# -# -# Note: you should not enable this unless you are using Sendmail -# 8.8.x or greater. -# -# This variable controls how much of your message is returned in DSN -# messages. It may be set to either hdrs to return just the -# message header, or full to return the full message. -# -# Example: set dsn_return=hdrs -# -# -# set duplicate_threads=yes -# -# Name: duplicate_threads -# Type: boolean -# Default: yes -# -# -# This variable controls whether mutt, when sorting by threads, threads -# messages with the same message-id together. If it is set, it will indicate -# that it thinks they are duplicates of each other with an equals sign -# in the thread diagram. -# -# -# set edit_headers=no -# -# Name: edit_headers -# Type: boolean -# Default: no -# -# -# This option allows you to edit the header of your outgoing messages -# along with the body of your message. -# -# -# set editor="" -# -# Name: editor -# Type: path -# Default: "" -# -# -# This variable specifies which editor is used by mutt. -# It defaults to the value of the VISUAL, or EDITOR, environment -# variable, or to the string "vi" if neither of those are set. -# -# -# set encode_from=no -# -# Name: encode_from -# Type: boolean -# Default: no -# -# -# When set, mutt will quoted-printable encode messages when -# they contain the string "From " in the beginning of a line. -# Useful to avoid the tampering certain mail delivery and transport -# agents tend to do with messages. -# -# -# set envelope_from=no -# -# Name: envelope_from -# Type: boolean -# Default: no -# -# -# When set, mutt will try to derive the message's envelope -# sender from the "From:" header. Note that this information is passed -# to sendmail command using the "-f" command line switch, so don't set this -# option if you are using that switch in $sendmail yourself, -# or if the sendmail on your machine doesn't support that command -# line switch. -# -# -# set escape="~" -# -# Name: escape -# Type: string -# Default: "~" -# -# -# Escape character to use for functions in the builtin editor. -# -# -# set fast_reply=no -# -# Name: fast_reply -# Type: boolean -# Default: no -# -# -# When set, the initial prompt for recipients and subject are skipped -# when replying to messages, and the initial prompt for subject is -# skipped when forwarding messages. -# -# Note: this variable has no effect when the ``$autoedit'' -# variable is set. -# -# -# set fcc_attach=yes -# -# Name: fcc_attach -# Type: boolean -# Default: yes -# -# -# This variable controls whether or not attachments on outgoing messages -# are saved along with the main body of your message. -# -# -# set fcc_clear=no -# -# Name: fcc_clear -# Type: boolean -# Default: no -# -# -# When this variable is set, FCCs will be stored unencrypted and -# unsigned, even when the actual message is encrypted and/or -# signed. -# (PGP only) -# -# -# set folder="~/Mail" -# -# Name: folder -# Type: path -# Default: "~/Mail" -# -# -# Specifies the default location of your mailboxes. A `+' or `=' at the -# beginning of a pathname will be expanded to the value of this -# variable. Note that if you change this variable from the default -# value you need to make sure that the assignment occurs before -# you use `+' or `=' for any other variables since expansion takes place -# during the `set' command. -# -# -# set folder_format="%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f" -# -# Name: folder_format -# Type: string -# Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f" -# -# -# This variable allows you to customize the file browser display to your -# personal taste. This string is similar to ``$index_format'', but has -# its own set of printf()-like sequences: -# -# %C current file number -# %d date/time folder was last modified -# %f filename -# %F file permissions -# %g group name (or numeric gid, if missing) -# %l number of hard links -# %N N if folder has new mail, blank otherwise -# %s size in bytes -# %t * if the file is tagged, blank otherwise -# %u owner name (or numeric uid, if missing) -# %>X right justify the rest of the string and pad with character "X" -# %|X pad to the end of the line with character "X" -# -# -# set followup_to=yes -# -# Name: followup_to -# Type: boolean -# Default: yes -# -# -# Controls whether or not the Mail-Followup-To header field is -# generated when sending mail. When set, Mutt will generate this -# field when you are replying to a known mailing list, specified with -# the ``subscribe'' or ``lists'' commands. -# -# This field has two purposes. First, preventing you from -# receiving duplicate copies of replies to messages which you send -# to mailing lists, and second, ensuring that you do get a reply -# separately for any messages sent to known lists to which you are -# not subscribed. The header will contain only the list's address -# for subscribed lists, and both the list address and your own -# email address for unsubscribed lists. Without this header, a -# group reply to your message sent to a subscribed list will be -# sent to both the list and your address, resulting in two copies -# of the same email for you. -# -# -# set followup_to_poster=ask-yes -# -# Name: followup_to_poster -# Type: quadoption -# Default: ask-yes -# -# -# If this variable is set and the keyword "poster" is present in -# Followup-To header, follow-up to newsgroup function is not -# permitted. The message will be mailed to the submitter of the -# message via mail. -# -# -# set force_name=no -# -# Name: force_name -# Type: boolean -# Default: no -# -# -# This variable is similar to ``$save_name'', except that Mutt will -# store a copy of your outgoing message by the username of the address -# you are sending to even if that mailbox does not exist. -# -# Also see the ``$record'' variable. -# -# -# set forward_decode=yes -# -# Name: forward_decode -# Type: boolean -# Default: yes -# -# -# Controls the decoding of complex MIME messages into text/plain when -# forwarding a message. The message header is also RFC2047 decoded. -# This variable is only used, if ``$mime_forward'' is unset, -# otherwise ``$mime_forward_decode'' is used instead. -# -# -# set forward_edit=yes -# -# Name: forward_edit -# Type: quadoption -# Default: yes -# -# -# This quadoption controls whether or not the user is automatically -# placed in the editor when forwarding messages. For those who always want -# to forward with no modification, use a setting of ``no''. -# -# -# set forward_format="[%a: %s]" -# -# Name: forward_format -# Type: string -# Default: "[%a: %s]" -# -# -# This variable controls the default subject when forwarding a message. -# It uses the same format sequences as the ``$index_format'' variable. -# -# -# set forward_quote=no -# -# Name: forward_quote -# Type: boolean -# Default: no -# -# -# When set forwarded messages included in the main body of the -# message (when ``$mime_forward'' is unset) will be quoted using -# ``$indent_string''. -# -# -# set from="" -# -# Name: from -# Type: e-mail address -# Default: "" -# -# -# When set, this variable contains a default from address. It -# can be overridden using my_hdr (including from send-hooks) and -# ``$reverse_name''. This variable is ignored if ``$use_from'' -# is unset. -# -# Defaults to the contents of the environment variable EMAIL. -# -# -# set gecos_mask="^[^,]*" -# -# Name: gecos_mask -# Type: regular expression -# Default: "^[^,]*" -# -# -# A regular expression used by mutt to parse the GECOS field of a password -# entry when expanding the alias. By default the regular expression is set -# to "^[^,]*" which will return the string up to the first "," encountered. -# If the GECOS field contains a string like "lastname, firstname" then you -# should set the gecos_mask=".*". -# -# This can be useful if you see the following behavior: you address a e-mail -# to user ID stevef whose full name is Steve Franklin. If mutt expands -# stevef to "Franklin" stevef@foo.bar then you should set the gecos_mask to -# a regular expression that will match the whole name so mutt will expand -# "Franklin" to "Franklin, Steve". -# -# -# set group_index_format="%4C %M%N %5s %-45.45f %d" -# -# Name: group_index_format -# Type: string -# Default: "%4C %M%N %5s %-45.45f %d" -# -# -# This variable allows you to customize the newsgroup browser display to -# your personal taste. This string is similar to ``index_format'', but -# has its own set of printf()-like sequences: -# -# %C current newsgroup number -# %d description of newsgroup (becomes from server) -# %f newsgroup name -# %M - if newsgroup not allowed for direct post (moderated for example) -# %N N if newsgroup is new, u if unsubscribed, blank otherwise -# %n number of new articles in newsgroup -# %s number of unread articles in newsgroup -# %>X right justify the rest of the string and pad with character "X" -# %|X pad to the end of the line with character "X" -# -# -# set hdrs=yes -# -# Name: hdrs -# Type: boolean -# Default: yes -# -# -# When unset, the header fields normally added by the ``my_hdr'' -# command are not created. This variable must be unset before -# composing a new message or replying in order to take effect. If set, -# the user defined header fields are added to every new message. -# -# -# set header=no -# -# Name: header -# Type: boolean -# Default: no -# -# -# When set, this variable causes Mutt to include the header -# of the message you are replying to into the edit buffer. -# The ``$weed'' setting applies. -# -# -# set help=yes -# -# Name: help -# Type: boolean -# Default: yes -# -# -# When set, help lines describing the bindings for the major functions -# provided by each menu are displayed on the first line of the screen. -# -# Note: The binding will not be displayed correctly if the -# function is bound to a sequence rather than a single keystroke. Also, -# the help line may not be updated if a binding is changed while Mutt is -# running. Since this variable is primarily aimed at new users, neither -# of these should present a major problem. -# -# -# set hidden_host=no -# -# Name: hidden_host -# Type: boolean -# Default: no -# -# -# When set, mutt will skip the host name part of ``$hostname'' variable -# when adding the domain part to addresses. This variable does not -# affect the generation of Message-IDs, and it will not lead to the -# cut-off of first-level domains. -# -# -# set hide_limited=no -# -# Name: hide_limited -# Type: boolean -# Default: no -# -# -# When set, mutt will not show the presence of messages that are hidden -# by limiting, in the thread tree. -# -# -# set hide_missing=yes -# -# Name: hide_missing -# Type: boolean -# Default: yes -# -# -# When set, mutt will not show the presence of missing messages in the -# thread tree. -# -# -# set hide_thread_subject=yes -# -# Name: hide_thread_subject -# Type: boolean -# Default: yes -# -# -# When set, mutt will not show the subject of messages in the thread -# tree that have the same subject as their parent or closest previously -# displayed sibling. -# -# -# set hide_top_limited=no -# -# Name: hide_top_limited -# Type: boolean -# Default: no -# -# -# When set, mutt will not show the presence of messages that are hidden -# by limiting, at the top of threads in the thread tree. Note that when -# $hide_missing is set, this option will have no effect. -# -# -# set hide_top_missing=yes -# -# Name: hide_top_missing -# Type: boolean -# Default: yes -# -# -# When set, mutt will not show the presence of missing messages at the -# top of threads in the thread tree. Note that when $hide_limited is -# set, this option will have no effect. -# -# -# set history=10 -# -# Name: history -# Type: number -# Default: 10 -# -# -# This variable controls the size (in number of strings remembered) of -# the string history buffer. The buffer is cleared each time the -# variable is set. -# -# -# set honor_followup_to=yes -# -# Name: honor_followup_to -# Type: quadoption -# Default: yes -# -# -# This variable controls whether or not a Mail-Followup-To header is -# honored when group-replying to a message. -# -# -# set hostname="" -# -# Name: hostname -# Type: string -# Default: "" -# -# -# Specifies the hostname to use after the ``@'' in local e-mail -# addresses. This overrides the compile time definition obtained from -# /etc/resolv.conf. -# -# -# set ignore_list_reply_to=no -# -# Name: ignore_list_reply_to -# Type: boolean -# Default: no -# -# -# Affects the behaviour of the reply function when replying to -# messages from mailing lists. When set, if the ``Reply-To:'' field is -# set to the same value as the ``To:'' field, Mutt assumes that the -# ``Reply-To:'' field was set by the mailing list to automate responses -# to the list, and will ignore this field. To direct a response to the -# mailing list when this option is set, use the list-reply -# function; group-reply will reply to both the sender and the -# list. -# -# -# set imap_authenticators="" -# -# Name: imap_authenticators -# Type: string -# Default: "" -# -# -# This is a colon-delimited list of authentication methods mutt may -# attempt to use to log in to an IMAP server, in the order mutt should -# try them. Authentication methods are either 'login' or the right -# side of an IMAP 'AUTH=xxx' capability string, eg 'digest-md5', 'gssapi' -# or 'cram-md5'. This parameter is case-insensitive. If this -# parameter is unset (the default) mutt will try all available methods, -# in order from most-secure to least-secure. -# -# Example: set imap_authenticators="gssapi:cram-md5:login" -# -# Note: Mutt will only fall back to other authentication methods if -# the previous methods are unavailable. If a method is available but -# authentication fails, mutt will not connect to the IMAP server. -# -# -# set imap_delim_chars="/." -# -# Name: imap_delim_chars -# Type: string -# Default: "/." -# -# -# This contains the list of characters which you would like to treat -# as folder separators for displaying IMAP paths. In particular it -# helps in using the '=' shortcut for your folder variable. -# -# -# set imap_force_ssl=no -# -# Name: imap_force_ssl -# Type: boolean -# Default: no -# -# -# If this variable is set, Mutt will always use SSL when -# connecting to IMAP servers. -# -# -# set imap_headers="" -# -# Name: imap_headers -# Type: string -# Default: "" -# -# -# Mutt requests these header fields in addition to the default headers -# ("DATE FROM SUBJECT TO CC MESSAGE-ID REFERENCES CONTENT-TYPE -# CONTENT-DESCRIPTION IN-REPLY-TO REPLY-TO LINES X-LABEL") from IMAP -# servers before displaying the index menu. You may want to add more -# headers for spam detection. Note: This is a space separated list. -# -# -# set imap_home_namespace="" -# -# Name: imap_home_namespace -# Type: string -# Default: "" -# -# -# You normally want to see your personal folders alongside -# your INBOX in the IMAP browser. If you see something else, you may set -# this variable to the IMAP path to your folders. -# -# -# set imap_keepalive=900 -# -# Name: imap_keepalive -# Type: number -# Default: 900 -# -# -# This variable specifies the maximum amount of time in seconds that mutt -# will wait before polling open IMAP connections, to prevent the server -# from closing them before mutt has finished with them. The default is -# well within the RFC-specified minimum amount of time (30 minutes) before -# a server is allowed to do this, but in practice the RFC does get -# violated every now and then. Reduce this number if you find yourself -# getting disconnected from your IMAP server due to inactivity. -# -# -# set imap_list_subscribed=no -# -# Name: imap_list_subscribed -# Type: boolean -# Default: no -# -# -# This variable configures whether IMAP folder browsing will look for -# only subscribed folders or all folders. This can be toggled in the -# IMAP browser with the toggle-subscribed function. -# -# -# set imap_pass="" -# -# Name: imap_pass -# Type: string -# Default: "" -# -# -# Specifies the password for your IMAP account. If unset, Mutt will -# prompt you for your password when you invoke the fetch-mail function. -# Warning: you should only use this option when you are on a -# fairly secure machine, because the superuser can read your muttrc even -# if you are the only one who can read the file. -# -# -# set imap_passive=yes -# -# Name: imap_passive -# Type: boolean -# Default: yes -# -# -# When set, mutt will not open new IMAP connections to check for new -# mail. Mutt will only check for new mail over existing IMAP -# connections. This is useful if you don't want to be prompted to -# user/password pairs on mutt invocation, or if opening the connection -# is slow. -# -# -# set imap_peek=yes -# -# Name: imap_peek -# Type: boolean -# Default: yes -# -# -# If set, mutt will avoid implicitly marking your mail as read whenever -# you fetch a message from the server. This is generally a good thing, -# but can make closing an IMAP folder somewhat slower. This option -# exists to appease speed freaks. -# -# -# set imap_servernoise=yes -# -# Name: imap_servernoise -# Type: boolean -# Default: yes -# -# -# When set, mutt will display warning messages from the IMAP -# server as error messages. Since these messages are often -# harmless, or generated due to configuration problems on the -# server which are out of the users' hands, you may wish to suppress -# them at some point. -# -# -# set imap_user="" -# -# Name: imap_user -# Type: string -# Default: "" -# -# -# Your login name on the IMAP server. -# -# This variable defaults to your user name on the local machine. -# -# -# set implicit_autoview=no -# -# Name: implicit_autoview -# Type: boolean -# Default: no -# -# -# If set to ``yes'', mutt will look for a mailcap entry with the -# copiousoutput flag set for every MIME attachment it doesn't have -# an internal viewer defined for. If such an entry is found, mutt will -# use the viewer defined in that entry to convert the body part to text -# form. -# -# -# set include=ask-yes -# -# Name: include -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether or not a copy of the message(s) you are replying to -# is included in your reply. -# -# -# set include_onlyfirst=no -# -# Name: include_onlyfirst -# Type: boolean -# Default: no -# -# -# Controls whether or not Mutt includes only the first attachment -# of the message you are replying. -# -# -# set indent_string="> " -# -# Name: indent_string -# Type: string -# Default: "> " -# -# -# Specifies the string to prepend to each line of text quoted in a -# message to which you are replying. You are strongly encouraged not to -# change this value, as it tends to agitate the more fanatical netizens. -# -# -# set index_format="%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s" -# -# Name: index_format -# Type: string -# Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s" -# -# -# This variable allows you to customize the message index display to -# your personal taste. -# -# ``Format strings'' are similar to the strings used in the ``C'' -# function printf to format output (see the man page for more detail). -# The following sequences are defined in Mutt: -# -# %a address of the author -# %A reply-to address (if present; otherwise: address of author) -# %b filename of the original message folder (think mailBox) -# %B the list to which the letter was sent, or else the folder name (%b). -# %c number of characters (bytes) in the message -# %C current message number -# %d date and time of the message in the format specified by -# ``date_format'' converted to sender's time zone -# %D date and time of the message in the format specified by -# ``date_format'' converted to the local time zone -# %e current message number in thread -# %E number of messages in current thread -# %f entire From: line (address + real name) -# %F author name, or recipient name if the message is from you -# %g newsgroup name (if compiled with nntp support) -# %i message-id of the current message -# %l number of lines in the message (does not work with maildir, -# mh, and possibly IMAP folders) -# %L If an address in the To or CC header field matches an address -# defined by the users ``subscribe'' command, this displays -# "To ", otherwise the same as %F. -# %m total number of message in the mailbox -# %M number of hidden messages if the thread is collapsed. -# %N message score -# %n author's real name (or address if missing) -# %O (_O_riginal save folder) Where mutt would formerly have -# stashed the message: list name or recipient name if no list -# %s subject of the message -# %S status of the message (N/D/d/!/r/*) -# %t `to:' field (recipients) -# %T the appropriate character from the $to_chars string -# %u user (login) name of the author -# %v first name of the author, or the recipient if the message is from you -# %W name of organization of author (`organization:' field) -# %y `x-label:' field, if present -# %Y `x-label' field, if present, and (1) not at part of a thread tree, -# (2) at the top of a thread, or (3) `x-label' is different from -# preceding message's `x-label'. -# %Z message status flags -# %{fmt} the date and time of the message is converted to sender's -# time zone, and ``fmt'' is expanded by the library function -# ``strftime''; a leading bang disables locales -# %[fmt] the date and time of the message is converted to the local -# time zone, and ``fmt'' is expanded by the library function -# ``strftime''; a leading bang disables locales -# %(fmt) the local date and time when the message was received. -# ``fmt'' is expanded by the library function ``strftime''; -# a leading bang disables locales -# % the current local time. ``fmt'' is expanded by the library -# function ``strftime''; a leading bang disables locales. -# %>X right justify the rest of the string and pad with character "X" -# %|X pad to the end of the line with character "X" -# -# -# See also: ``$to_chars''. -# -# -# set inews="" -# -# Name: inews -# Type: path -# Default: "" -# -# -# If set, specifies the program and arguments used to deliver news posted -# by Mutt. Otherwise, mutt posts article using current connection to -# news server. The following printf-style sequence is understood: -# -# %s newsserver name -# -# Example: set inews="/usr/local/bin/inews -hS" -# -# -# set ispell="/usr/bin/ispell" -# -# Name: ispell -# Type: path -# Default: "/usr/bin/ispell" -# -# -# How to invoke ispell (GNU's spell-checking software). -# -# -# set keep_flagged=no -# -# Name: keep_flagged -# Type: boolean -# Default: no -# -# -# If set, read messages marked as flagged will not be moved -# from your spool mailbox to your ``$mbox'' mailbox, or as a result of -# a ``mbox-hook'' command. -# -# -# set locale="C" -# -# Name: locale -# Type: string -# Default: "C" -# -# -# The locale used by strftime(3) to format dates. Legal values are -# the strings your system accepts for the locale variable LC_TIME. -# -# -# set mail_check=5 -# -# Name: mail_check -# Type: number -# Default: 5 -# -# -# This variable configures how often (in seconds) mutt should look for -# new mail. -# -# -# set mailcap_path="" -# -# Name: mailcap_path -# Type: string -# Default: "" -# -# -# This variable specifies which files to consult when attempting to -# display MIME bodies not directly supported by Mutt. -# -# -# set mailcap_sanitize=yes -# -# Name: mailcap_sanitize -# Type: boolean -# Default: yes -# -# -# If set, mutt will restrict possible characters in mailcap % expandos -# to a well-defined set of safe characters. This is the safe setting, -# but we are not sure it doesn't break some more advanced MIME stuff. -# -# DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE -# DOING! -# -# -# set maildir_trash=no -# -# Name: maildir_trash -# Type: boolean -# Default: no -# -# -# If set, messages marked as deleted will be saved with the maildir -# (T)rashed flag instead of unlinked. NOTE: this only applies -# to maildir-style mailboxes. Setting it will have no effect on other -# mailbox types. -# -# -# set mark_old=yes -# -# Name: mark_old -# Type: boolean -# Default: yes -# -# -# Controls whether or not mutt marks new unread -# messages as old if you exit a mailbox without reading them. -# With this option set, the next time you start mutt, the messages -# will show up with an "O" next to them in the index menu, -# indicating that they are old. -# -# -# set markers=yes -# -# Name: markers -# Type: boolean -# Default: yes -# -# -# Controls the display of wrapped lines in the internal pager. If set, a -# ``+'' marker is displayed at the beginning of wrapped lines. Also see -# the ``$smart_wrap'' variable. -# -# -# set mask="!^\\.[^.]" -# -# Name: mask -# Type: regular expression -# Default: "!^\\.[^.]" -# -# -# A regular expression used in the file browser, optionally preceded by -# the not operator ``!''. Only files whose names match this mask -# will be shown. The match is always case-sensitive. -# -# -# set mbox="~/mbox" -# -# Name: mbox -# Type: path -# Default: "~/mbox" -# -# -# This specifies the folder into which read mail in your ``$spoolfile'' -# folder will be appended. -# -# -# set sidebar_visible=no -# -# Name: sidebar_visible -# Type: boolean -# Default: no -# -# -# This specifies whether or not to show the mailbox list pane. -# -# -# set sidebar_width=0 -# -# Name: sidebar_width -# Type: number -# Default: 0 -# -# -# The width of the mailbox list pane (left sidebar like in GUIs). -# -# -# set mbox_type=mbox -# -# Name: mbox_type -# Type: folder magic -# Default: mbox -# -# -# The default mailbox type used when creating new folders. May be any of -# mbox, MMDF, MH and Maildir. -# -# -# set metoo=no -# -# Name: metoo -# Type: boolean -# Default: no -# -# -# If unset, Mutt will remove your address (see the ``alternates'' -# command) from the list of recipients when replying to a message. -# -# -# set menu_context=0 -# -# Name: menu_context -# Type: number -# Default: 0 -# -# -# This variable controls the number of lines of context that are given -# when scrolling through menus. (Similar to ``$pager_context''.) -# -# -# set menu_scroll=no -# -# Name: menu_scroll -# Type: boolean -# Default: no -# -# -# When set, menus will be scrolled up or down one line when you -# attempt to move across a screen boundary. If unset, the screen -# is cleared and the next or previous page of the menu is displayed -# (useful for slow links to avoid many redraws). -# -# -# set meta_key=no -# -# Name: meta_key -# Type: boolean -# Default: no -# -# -# If set, forces Mutt to interpret keystrokes with the high bit (bit 8) -# set as if the user had pressed the ESC key and whatever key remains -# after having the high bit removed. For example, if the key pressed -# has an ASCII value of 0xf4, then this is treated as if the user had -# pressed ESC then ``x''. This is because the result of removing the -# high bit from ``0xf4'' is ``0x74'', which is the ASCII character -# ``x''. -# -# -# set mh_purge=no -# -# Name: mh_purge -# Type: boolean -# Default: no -# -# -# When unset, mutt will mimic mh's behaviour and rename deleted messages -# to , in mh folders instead of really deleting -# them. If the variable is set, the message files will simply be -# deleted. -# -# -# set mh_seq_flagged="flagged" -# -# Name: mh_seq_flagged -# Type: string -# Default: "flagged" -# -# -# The name of the MH sequence used for flagged messages. -# -# -# set mh_seq_replied="replied" -# -# Name: mh_seq_replied -# Type: string -# Default: "replied" -# -# -# The name of the MH sequence used to tag replied messages. -# -# -# set mh_seq_unseen="unseen" -# -# Name: mh_seq_unseen -# Type: string -# Default: "unseen" -# -# -# The name of the MH sequence used for unseen messages. -# -# -# set mime_forward=no -# -# Name: mime_forward -# Type: quadoption -# Default: no -# -# -# When set, the message you are forwarding will be attached as a -# separate MIME part instead of included in the main body of the -# message. This is useful for forwarding MIME messages so the receiver -# can properly view the message as it was delivered to you. If you like -# to switch between MIME and not MIME from mail to mail, set this -# variable to ask-no or ask-yes. -# -# Also see ``$forward_decode'' and ``$mime_forward_decode''. -# -# -# set mime_forward_decode=no -# -# Name: mime_forward_decode -# Type: boolean -# Default: no -# -# -# Controls the decoding of complex MIME messages into text/plain when -# forwarding a message while ``$mime_forward'' is set. Otherwise -# ``$forward_decode'' is used instead. -# -# -# set mime_forward_rest=yes -# -# Name: mime_forward_rest -# Type: quadoption -# Default: yes -# -# -# When forwarding multiple attachments of a MIME message from the recvattach -# menu, attachments which cannot be decoded in a reasonable manner will -# be attached to the newly composed message if this option is set. -# -# -# set mime_subject=yes -# -# Name: mime_subject -# Type: boolean -# Default: yes -# -# -# If unset, 8-bit ``subject:'' line in article header will not be -# encoded according to RFC2047 to base64. This is useful when message -# is Usenet article, because MIME for news is nonstandard feature. -# -# -# set mix_entry_format="%4n %c %-16s %a" -# -# Name: mix_entry_format -# Type: string -# Default: "%4n %c %-16s %a" -# -# -# This variable describes the format of a remailer line on the mixmaster -# chain selection screen. The following printf-like sequences are -# supported: -# -# %n The running number on the menu. -# %c Remailer capabilities. -# %s The remailer's short name. -# %a The remailer's e-mail address. -# -# -# set mixmaster="mixmaster" -# -# Name: mixmaster -# Type: path -# Default: "mixmaster" -# -# -# This variable contains the path to the Mixmaster binary on your -# system. It is used with various sets of parameters to gather the -# list of known remailers, and to finally send a message through the -# mixmaster chain. -# -# -# set move=ask-no -# -# Name: move -# Type: quadoption -# Default: ask-no -# -# -# Controls whether or not Mutt will move read messages -# from your spool mailbox to your ``$mbox'' mailbox, or as a result of -# a ``mbox-hook'' command. -# -# -# set message_format="%s" -# -# Name: message_format -# Type: string -# Default: "%s" -# -# -# This is the string displayed in the ``attachment'' menu for -# attachments of type message/rfc822. For a full listing of defined -# printf()-like sequences see the section on ``$index_format''. -# -# -# set narrow_tree=no -# -# Name: narrow_tree -# Type: boolean -# Default: no -# -# -# This variable, when set, makes the thread tree narrower, allowing -# deeper threads to fit on the screen. -# -# -# set news_cache_dir="~/.mutt" -# -# Name: news_cache_dir -# Type: path -# Default: "~/.mutt" -# -# -# This variable pointing to directory where Mutt will save cached news -# articles headers in. If unset, headers will not be saved at all -# and will be reloaded each time when you enter to newsgroup. -# -# -# set news_server="" -# -# Name: news_server -# Type: string -# Default: "" -# -# -# This variable specifies domain name or address of NNTP server. It -# defaults to the newsserver specified in the environment variable -# $NNTPSERVER or contained in the file /etc/nntpserver. You can also -# specify username and an alternative port for each newsserver, ie: -# -# [nntp[s]://][username[:password]@]newsserver[:port] -# -# -# set newsrc="~/.newsrc" -# -# Name: newsrc -# Type: path -# Default: "~/.newsrc" -# -# -# The file, containing info about subscribed newsgroups - names and -# indexes of read articles. The following printf-style sequence -# is understood: -# -# %s newsserver name -# -# -# set nntp_context=1000 -# -# Name: nntp_context -# Type: number -# Default: 1000 -# -# -# This variable defines number of articles which will be in index when -# newsgroup entered. If active newsgroup have more articles than this -# number, oldest articles will be ignored. Also controls how many -# articles headers will be saved in cache when you quit newsgroup. -# -# -# set nntp_load_description=yes -# -# Name: nntp_load_description -# Type: boolean -# Default: yes -# -# -# This variable controls whether or not descriptions for each newsgroup -# must be loaded when newsgroup is added to list (first time list -# loading or new newsgroup adding). -# -# -# set nntp_user="" -# -# Name: nntp_user -# Type: string -# Default: "" -# -# -# Your login name on the NNTP server. If unset and NNTP server requires -# authentification, Mutt will prompt you for your account name when you -# connect to newsserver. -# -# -# set nntp_pass="" -# -# Name: nntp_pass -# Type: string -# Default: "" -# -# -# Your password for NNTP account. -# -# -# set nntp_poll=60 -# -# Name: nntp_poll -# Type: number -# Default: 60 -# -# -# The time in seconds until any operations on newsgroup except post new -# article will cause recheck for new news. If set to 0, Mutt will -# recheck newsgroup on each operation in index (stepping, read article, -# etc.). -# -# -# set nntp_reconnect=ask-yes -# -# Name: nntp_reconnect -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether or not Mutt will try to reconnect to newsserver when -# connection lost. -# -# -# set pager="builtin" -# -# Name: pager -# Type: path -# Default: "builtin" -# -# -# This variable specifies which pager you would like to use to view -# messages. builtin means to use the builtin pager, otherwise this -# variable should specify the pathname of the external pager you would -# like to use. -# -# Using an external pager may have some disadvantages: Additional -# keystrokes are necessary because you can't call mutt functions -# directly from the pager, and screen resizes cause lines longer than -# the screen width to be badly formatted in the help menu. -# -# -# set pager_context=0 -# -# Name: pager_context -# Type: number -# Default: 0 -# -# -# This variable controls the number of lines of context that are given -# when displaying the next or previous page in the internal pager. By -# default, Mutt will display the line after the last one on the screen -# at the top of the next page (0 lines of context). -# -# -# set pager_format="-%Z- %C/%m: %-20.20n %s" -# -# Name: pager_format -# Type: string -# Default: "-%Z- %C/%m: %-20.20n %s" -# -# -# This variable controls the format of the one-line message ``status'' -# displayed before each message in either the internal or an external -# pager. The valid sequences are listed in the ``$index_format'' -# section. -# -# -# set pager_index_lines=0 -# -# Name: pager_index_lines -# Type: number -# Default: 0 -# -# -# Determines the number of lines of a mini-index which is shown when in -# the pager. The current message, unless near the top or bottom of the -# folder, will be roughly one third of the way down this mini-index, -# giving the reader the context of a few messages before and after the -# message. This is useful, for example, to determine how many messages -# remain to be read in the current thread. One of the lines is reserved -# for the status bar from the index, so a pager_index_lines of 6 -# will only show 5 lines of the actual index. A value of 0 results in -# no index being shown. If the number of messages in the current folder -# is less than pager_index_lines, then the index will only use as -# many lines as it needs. -# -# -# set pager_stop=no -# -# Name: pager_stop -# Type: boolean -# Default: no -# -# -# When set, the internal-pager will not move to the next message -# when you are at the end of a message and invoke the next-page -# function. -# -# -# set crypt_autosign=no -# -# Name: crypt_autosign -# Type: boolean -# Default: no -# -# -# Setting this variable will cause Mutt to always attempt to -# cryptographically sign outgoing messages. This can be overridden -# by use of the pgp-menu, when signing is not required or -# encryption is requested as well. If ``$smime_is_default'' is set, -# then OpenSSL is used instead to create S/MIME messages and settings can -# be overridden by use of the smime-menu. -# (Crypto only) -# -# -# set crypt_autoencrypt=no -# -# Name: crypt_autoencrypt -# Type: boolean -# Default: no -# -# -# Setting this variable will cause Mutt to always attempt to PGP -# encrypt outgoing messages. This is probably only useful in -# connection to the send-hook command. It can be overridden -# by use of the pgp-menu, when encryption is not required or -# signing is requested as well. IF ``$smime_is_default'' is set, -# then OpenSSL is used instead to create S/MIME messages and -# settings can be overridden by use of the smime-menu. -# (Crypto only) -# -# -# set pgp_ignore_subkeys=yes -# -# Name: pgp_ignore_subkeys -# Type: boolean -# Default: yes -# -# -# Setting this variable will cause Mutt to ignore OpenPGP subkeys. Instead, -# the principal key will inherit the subkeys' capabilities. Unset this -# if you want to play interesting key selection games. -# (PGP only) -# -# -# set crypt_replyencrypt=yes -# -# Name: crypt_replyencrypt -# Type: boolean -# Default: yes -# -# -# If set, automatically PGP or OpenSSL encrypt replies to messages which are -# encrypted. -# (Crypto only) -# -# -# set crypt_replysign=no -# -# Name: crypt_replysign -# Type: boolean -# Default: no -# -# -# If set, automatically PGP or OpenSSL sign replies to messages which are -# signed. -# -# Note: this does not work on messages that are encrypted -# and signed! -# (Crypto only) -# -# -# set crypt_replysignencrypted=no -# -# Name: crypt_replysignencrypted -# Type: boolean -# Default: no -# -# -# If set, automatically PGP or OpenSSL sign replies to messages -# which are encrypted. This makes sense in combination with -# ``$crypt_replyencrypt'', because it allows you to sign all -# messages which are automatically encrypted. This works around -# the problem noted in ``$crypt_replysign'', that mutt is not able -# to find out whether an encrypted message is also signed. -# (Crypto only) -# -# -# set crypt_timestamp=yes -# -# Name: crypt_timestamp -# Type: boolean -# Default: yes -# -# -# If set, mutt will include a time stamp in the lines surrounding -# PGP or S/MIME output, so spoofing such lines is more difficult. -# If you are using colors to mark these lines, and rely on these, -# you may unset this setting. -# (Crypto only) -# -# -# set pgp_use_gpg_agent=no -# -# Name: pgp_use_gpg_agent -# Type: boolean -# Default: no -# -# -# If set, mutt will use a possibly-running gpg-agent process. -# (PGP only) -# -# -# set crypt_verify_sig=yes -# -# Name: crypt_verify_sig -# Type: quadoption -# Default: yes -# -# -# If ``yes'', always attempt to verify PGP or S/MIME signatures. -# If ``ask'', ask whether or not to verify the signature. -# If ``no'', never attempt to verify cryptographic signatures. -# (Crypto only) -# -# -# set smime_is_default=no -# -# Name: smime_is_default -# Type: boolean -# Default: no -# -# -# The default behaviour of mutt is to use PGP on all auto-sign/encryption -# operations. To override and to use OpenSSL instead this must be set. -# However, this has no effect while replying, since mutt will automatically -# select the same application that was used to sign/encrypt the original -# message. (Note that this variable can be overridden by unsetting $crypt_autosmime.) -# (S/MIME only) -# -# -# set smime_ask_cert_label=yes -# -# Name: smime_ask_cert_label -# Type: boolean -# Default: yes -# -# -# This flag controls whether you want to be asked to enter a label -# for a certificate about to be added to the database or not. It is -# set by default. -# (S/MIME only) -# -# -# set smime_decrypt_use_default_key=yes -# -# Name: smime_decrypt_use_default_key -# Type: boolean -# Default: yes -# -# -# If set (default) this tells mutt to use the default key for decryption. Otherwise, -# if manage multiple certificate-key-pairs, mutt will try to use the mailbox-address -# to determine the key to use. It will ask you to supply a key, if it can't find one. -# (S/MIME only) -# -# -# set pgp_entry_format="%4n %t%f %4l/0x%k %-4a %2c %u" -# -# Name: pgp_entry_format -# Type: string -# Default: "%4n %t%f %4l/0x%k %-4a %2c %u" -# -# -# This variable allows you to customize the PGP key selection menu to -# your personal taste. This string is similar to ``$index_format'', but -# has its own set of printf()-like sequences: -# -# %n number -# %k key id -# %u user id -# %a algorithm -# %l key length -# %f flags -# %c capabilities -# %t trust/validity of the key-uid association -# %[] date of the key where is an strftime(3) expression -# -# -# (PGP only) -# -# -# set pgp_good_sign="" -# -# Name: pgp_good_sign -# Type: regular expression -# Default: "" -# -# -# If you assign a text to this variable, then a PGP signature is only -# considered verified if the output from $pgp_verify_command contains -# the text. Use this variable if the exit code from the command is 0 -# even for bad signatures. -# (PGP only) -# -# -# set pgp_check_exit=yes -# -# Name: pgp_check_exit -# Type: boolean -# Default: yes -# -# -# If set, mutt will check the exit code of the PGP subprocess when -# signing or encrypting. A non-zero exit code means that the -# subprocess failed. -# (PGP only) -# -# -# set pgp_long_ids=no -# -# Name: pgp_long_ids -# Type: boolean -# Default: no -# -# -# If set, use 64 bit PGP key IDs. Unset uses the normal 32 bit Key IDs. -# (PGP only) -# -# -# set pgp_retainable_sigs=no -# -# Name: pgp_retainable_sigs -# Type: boolean -# Default: no -# -# -# If set, signed and encrypted messages will consist of nested -# multipart/signed and multipart/encrypted body parts. -# -# This is useful for applications like encrypted and signed mailing -# lists, where the outer layer (multipart/encrypted) can be easily -# removed, while the inner multipart/signed part is retained. -# (PGP only) -# -# -# set pgp_autoinline=no -# -# Name: pgp_autoinline -# Type: boolean -# Default: no -# -# -# This option controls whether Mutt generates old-style inline -# (traditional) PGP encrypted or signed messages under certain -# circumstances. This can be overridden by use of the pgp-menu, -# when inline is not required. -# -# Note that Mutt might automatically use PGP/MIME for messages -# which consist of more than a single MIME part. Mutt can be -# configured to ask before sending PGP/MIME messages when inline -# (traditional) would not work. -# See also: ``$pgp_mime_auto''. -# -# Also note that using the old-style PGP message format is strongly -# deprecated. -# (PGP only) -# -# -# set pgp_replyinline=no -# -# Name: pgp_replyinline -# Type: boolean -# Default: no -# -# -# Setting this variable will cause Mutt to always attempt to -# create an inline (traditional) message when replying to a -# message which is PGP encrypted/signed inline. This can be -# overridden by use of the pgp-menu, when inline is not -# required. This option does not automatically detect if the -# (replied-to) message is inline; instead it relies on Mutt -# internals for previously checked/flagged messages. -# -# Note that Mutt might automatically use PGP/MIME for messages -# which consist of more than a single MIME part. Mutt can be -# configured to ask before sending PGP/MIME messages when inline -# (traditional) would not work. -# See also: ``$pgp_mime_auto''. -# -# Also note that using the old-style PGP message format is strongly -# deprecated. -# (PGP only) -# -# -# set pgp_show_unusable=yes -# -# Name: pgp_show_unusable -# Type: boolean -# Default: yes -# -# -# If set, mutt will display non-usable keys on the PGP key selection -# menu. This includes keys which have been revoked, have expired, or -# have been marked as ``disabled'' by the user. -# (PGP only) -# -# -# set pgp_sign_as="" -# -# Name: pgp_sign_as -# Type: string -# Default: "" -# -# -# If you have more than one key pair, this option allows you to specify -# which of your private keys to use. It is recommended that you use the -# keyid form to specify your key (e.g., ``0x00112233''). -# (PGP only) -# -# -# set pgp_strict_enc=yes -# -# Name: pgp_strict_enc -# Type: boolean -# Default: yes -# -# -# If set, Mutt will automatically encode PGP/MIME signed messages as -# quoted-printable. Please note that unsetting this variable may -# lead to problems with non-verifyable PGP signatures, so only change -# this if you know what you are doing. -# (PGP only) -# -# -# set pgp_timeout=300 -# -# Name: pgp_timeout -# Type: number -# Default: 300 -# -# -# The number of seconds after which a cached passphrase will expire if -# not used. -# (PGP only) -# -# -# set pgp_sort_keys=address -# -# Name: pgp_sort_keys -# Type: sort order -# Default: address -# -# -# Specifies how the entries in the `pgp keys' menu are sorted. The -# following are legal values: -# -# address sort alphabetically by user id -# keyid sort alphabetically by key id -# date sort by key creation date -# trust sort by the trust of the key -# -# -# If you prefer reverse order of the above values, prefix it with -# `reverse-'. -# (PGP only) -# -# -# set pgp_mime_auto=ask-yes -# -# Name: pgp_mime_auto -# Type: quadoption -# Default: ask-yes -# -# -# This option controls whether Mutt will prompt you for -# automatically sending a (signed/encrypted) message using -# PGP/MIME when inline (traditional) fails (for any reason). -# -# Also note that using the old-style PGP message format is strongly -# deprecated. -# (PGP only) -# -# -# set pgp_auto_decode=no -# -# Name: pgp_auto_decode -# Type: boolean -# Default: no -# -# -# If set, mutt will automatically attempt to decrypt traditional PGP -# messages whenever the user performs an operation which ordinarily would -# result in the contents of the message being operated on. For example, -# if the user displays a pgp-traditional message which has not been manually -# checked with the check-traditional-pgp function, mutt will automatically -# check the message for traditional pgp. -# -# -# set pgp_decode_command="" -# -# Name: pgp_decode_command -# Type: string -# Default: "" -# -# -# This format strings specifies a command which is used to decode -# application/pgp attachments. -# -# The PGP command formats have their own set of printf-like sequences: -# -# %p Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty -# string otherwise. Note: This may be used with a %? construct. -# %f Expands to the name of a file containing a message. -# %s Expands to the name of a file containing the signature part -# of a multipart/signed attachment when verifying it. -# %a The value of $pgp_sign_as. -# %r One or more key IDs. -# -# -# For examples on how to configure these formats for the various versions -# of PGP which are floating around, see the pgp*.rc and gpg.rc files in -# the samples/ subdirectory which has been installed on your system -# alongside the documentation. -# (PGP only) -# -# -# set pgp_getkeys_command="" -# -# Name: pgp_getkeys_command -# Type: string -# Default: "" -# -# -# This command is invoked whenever mutt will need public key information. -# %r is the only printf-like sequence used with this format. -# (PGP only) -# -# -# set pgp_verify_command="" -# -# Name: pgp_verify_command -# Type: string -# Default: "" -# -# -# This command is used to verify PGP signatures. -# (PGP only) -# -# -# set pgp_decrypt_command="" -# -# Name: pgp_decrypt_command -# Type: string -# Default: "" -# -# -# This command is used to decrypt a PGP encrypted message. -# (PGP only) -# -# -# set pgp_clearsign_command="" -# -# Name: pgp_clearsign_command -# Type: string -# Default: "" -# -# -# This format is used to create a old-style "clearsigned" PGP -# message. Note that the use of this format is strongly -# deprecated. -# (PGP only) -# -# -# set pgp_sign_command="" -# -# Name: pgp_sign_command -# Type: string -# Default: "" -# -# -# This command is used to create the detached PGP signature for a -# multipart/signed PGP/MIME body part. -# (PGP only) -# -# -# set pgp_encrypt_sign_command="" -# -# Name: pgp_encrypt_sign_command -# Type: string -# Default: "" -# -# -# This command is used to both sign and encrypt a body part. -# (PGP only) -# -# -# set pgp_encrypt_only_command="" -# -# Name: pgp_encrypt_only_command -# Type: string -# Default: "" -# -# -# This command is used to encrypt a body part without signing it. -# (PGP only) -# -# -# set pgp_import_command="" -# -# Name: pgp_import_command -# Type: string -# Default: "" -# -# -# This command is used to import a key from a message into -# the user's public key ring. -# (PGP only) -# -# -# set pgp_export_command="" -# -# Name: pgp_export_command -# Type: string -# Default: "" -# -# -# This command is used to export a public key from the user's -# key ring. -# (PGP only) -# -# -# set pgp_verify_key_command="" -# -# Name: pgp_verify_key_command -# Type: string -# Default: "" -# -# -# This command is used to verify key information from the key selection -# menu. -# (PGP only) -# -# -# set pgp_list_secring_command="" -# -# Name: pgp_list_secring_command -# Type: string -# Default: "" -# -# -# This command is used to list the secret key ring's contents. The -# output format must be analogous to the one used by -# gpg --list-keys --with-colons. -# -# This format is also generated by the pgpring utility which comes -# with mutt. -# (PGP only) -# -# -# set pgp_list_pubring_command="" -# -# Name: pgp_list_pubring_command -# Type: string -# Default: "" -# -# -# This command is used to list the public key ring's contents. The -# output format must be analogous to the one used by -# gpg --list-keys --with-colons. -# -# This format is also generated by the pgpring utility which comes -# with mutt. -# (PGP only) -# -# -# set forward_decrypt=yes -# -# Name: forward_decrypt -# Type: boolean -# Default: yes -# -# -# Controls the handling of encrypted messages when forwarding a message. -# When set, the outer layer of encryption is stripped off. This -# variable is only used if ``$mime_forward'' is set and -# ``$mime_forward_decode'' is unset. -# (PGP only) -# -# -# set smime_timeout=300 -# -# Name: smime_timeout -# Type: number -# Default: 300 -# -# -# The number of seconds after which a cached passphrase will expire if -# not used. -# (S/MIME only) -# -# -# set smime_encrypt_with="" -# -# Name: smime_encrypt_with -# Type: string -# Default: "" -# -# -# This sets the algorithm that should be used for encryption. -# Valid choices are "des", "des3", "rc2-40", "rc2-64", "rc2-128". -# If unset "3des" (TripleDES) is used. -# (S/MIME only) -# -# -# set smime_keys="" -# -# Name: smime_keys -# Type: path -# Default: "" -# -# -# Since there is no pubring/secring as with PGP, mutt has to handle -# storage ad retrieval of keys/certs by itself. This is very basic right now, -# and stores keys and certificates in two different directories, both -# named as the hash-value retrieved from OpenSSL. There is an index file -# which contains mailbox-address keyid pair, and which can be manually -# edited. This one points to the location of the private keys. -# (S/MIME only) -# -# -# set smime_ca_location="" -# -# Name: smime_ca_location -# Type: path -# Default: "" -# -# -# This variable contains the name of either a directory, or a file which -# contains trusted certificates for use with OpenSSL. -# (S/MIME only) -# -# -# set smime_certificates="" -# -# Name: smime_certificates -# Type: path -# Default: "" -# -# -# Since there is no pubring/secring as with PGP, mutt has to handle -# storage and retrieval of keys by itself. This is very basic right -# now, and keys and certificates are stored in two different -# directories, both named as the hash-value retrieved from -# OpenSSL. There is an index file which contains mailbox-address -# keyid pairs, and which can be manually edited. This one points to -# the location of the certificates. -# (S/MIME only) -# -# -# set smime_decrypt_command="" -# -# Name: smime_decrypt_command -# Type: string -# Default: "" -# -# -# This format string specifies a command which is used to decrypt -# application/x-pkcs7-mime attachments. -# -# The OpenSSL command formats have their own set of printf-like sequences -# similar to PGP's: -# -# %f Expands to the name of a file containing a message. -# %s Expands to the name of a file containing the signature part -# of a multipart/signed attachment when verifying it. -# %k The key-pair specified with $smime_default_key -# %c One or more certificate IDs. -# %a The algorithm used for encryption. -# %C CA location: Depending on whether $smime_ca_location -# points to a directory or file, this expands to -# "-CApath $smime_ca_location" or "-CAfile $smime_ca_location". -# -# -# For examples on how to configure these formats, see the smime.rc in -# the samples/ subdirectory which has been installed on your system -# alongside the documentation. -# (S/MIME only) -# -# -# set smime_verify_command="" -# -# Name: smime_verify_command -# Type: string -# Default: "" -# -# -# This command is used to verify S/MIME signatures of type multipart/signed. -# (S/MIME only) -# -# -# set smime_verify_opaque_command="" -# -# Name: smime_verify_opaque_command -# Type: string -# Default: "" -# -# -# This command is used to verify S/MIME signatures of type -# application/x-pkcs7-mime. -# (S/MIME only) -# -# -# set smime_sign_command="" -# -# Name: smime_sign_command -# Type: string -# Default: "" -# -# -# This command is used to created S/MIME signatures of type -# multipart/signed, which can be read by all mail clients. -# (S/MIME only) -# -# -# set smime_sign_opaque_command="" -# -# Name: smime_sign_opaque_command -# Type: string -# Default: "" -# -# -# This command is used to created S/MIME signatures of type -# application/x-pkcs7-signature, which can only be handled by mail -# clients supporting the S/MIME extension. -# (S/MIME only) -# -# -# set smime_encrypt_command="" -# -# Name: smime_encrypt_command -# Type: string -# Default: "" -# -# -# This command is used to create encrypted S/MIME messages. -# (S/MIME only) -# -# -# set smime_pk7out_command="" -# -# Name: smime_pk7out_command -# Type: string -# Default: "" -# -# -# This command is used to extract PKCS7 structures of S/MIME signatures, -# in order to extract the public X509 certificate(s). -# (S/MIME only) -# -# -# set smime_get_cert_command="" -# -# Name: smime_get_cert_command -# Type: string -# Default: "" -# -# -# This command is used to extract X509 certificates from a PKCS7 structure. -# (S/MIME only) -# -# -# set smime_get_signer_cert_command="" -# -# Name: smime_get_signer_cert_command -# Type: string -# Default: "" -# -# -# This command is used to extract only the signers X509 certificate from a S/MIME -# signature, so that the certificate's owner may get compared to the -# email's 'From'-field. -# (S/MIME only) -# -# -# set smime_import_cert_command="" -# -# Name: smime_import_cert_command -# Type: string -# Default: "" -# -# -# This command is used to import a certificate via smime_keys. -# (S/MIME only) -# -# -# set smime_get_cert_email_command="" -# -# Name: smime_get_cert_email_command -# Type: string -# Default: "" -# -# -# This command is used to extract the mail address(es) used for storing -# X509 certificates, and for verification purposes (to check whether the -# certificate was issued for the sender's mailbox). -# (S/MIME only) -# -# -# set smime_default_key="" -# -# Name: smime_default_key -# Type: string -# Default: "" -# -# -# This is the default key-pair to use for signing. This must be set to the -# keyid (the hash-value that OpenSSL generates) to work properly -# (S/MIME only) -# -# -# set ssl_client_cert="" -# -# Name: ssl_client_cert -# Type: path -# Default: "" -# -# -# The file containing a client certificate and its associated private -# key. -# -# -# set ssl_starttls=yes -# -# Name: ssl_starttls -# Type: quadoption -# Default: yes -# -# -# If set (the default), mutt will attempt to use STARTTLS on servers -# advertising the capability. When unset, mutt will not attempt to -# use STARTTLS regardless of the server's capabilities. -# -# -# set certificate_file="~/.mutt_certificates" -# -# Name: certificate_file -# Type: path -# Default: "~/.mutt_certificates" -# -# -# This variable specifies the file where the certificates you trust -# are saved. When an unknown certificate is encountered, you are asked -# if you accept it or not. If you accept it, the certificate can also -# be saved in this file and further connections are automatically -# accepted. -# -# You can also manually add CA certificates in this file. Any server -# certificate that is signed with one of these CA certificates are -# also automatically accepted. -# -# Example: set certificate_file=~/.mutt/certificates -# -# -# set ssl_usesystemcerts=yes -# -# Name: ssl_usesystemcerts -# Type: boolean -# Default: yes -# -# -# If set to yes, mutt will use CA certificates in the -# system-wide certificate store when checking if server certificate -# is signed by a trusted CA. -# -# -# set entropy_file="" -# -# Name: entropy_file -# Type: path -# Default: "" -# -# -# The file which includes random data that is used to initialize SSL -# library functions. -# -# -# set ssl_use_sslv2=yes -# -# Name: ssl_use_sslv2 -# Type: boolean -# Default: yes -# -# -# This variables specifies whether to attempt to use SSLv2 in the -# SSL authentication process. -# -# -# set ssl_use_sslv3=yes -# -# Name: ssl_use_sslv3 -# Type: boolean -# Default: yes -# -# -# This variables specifies whether to attempt to use SSLv3 in the -# SSL authentication process. -# -# -# set ssl_use_tlsv1=yes -# -# Name: ssl_use_tlsv1 -# Type: boolean -# Default: yes -# -# -# This variables specifies whether to attempt to use TLSv1 in the -# SSL authentication process. -# -# -# set pipe_split=no -# -# Name: pipe_split -# Type: boolean -# Default: no -# -# -# Used in connection with the pipe-message command and the ``tag- -# prefix'' operator. If this variable is unset, when piping a list of -# tagged messages Mutt will concatenate the messages and will pipe them -# as a single folder. When set, Mutt will pipe the messages one by one. -# In both cases the messages are piped in the current sorted order, -# and the ``$pipe_sep'' separator is added after each message. -# -# -# set pipe_decode=no -# -# Name: pipe_decode -# Type: boolean -# Default: no -# -# -# Used in connection with the pipe-message command. When unset, -# Mutt will pipe the messages without any preprocessing. When set, Mutt -# will weed headers and will attempt to PGP/MIME decode the messages -# first. -# -# -# set pipe_sep="\n" -# -# Name: pipe_sep -# Type: string -# Default: "\n" -# -# -# The separator to add between messages when piping a list of tagged -# messages to an external Unix command. -# -# -# set pop_authenticators="" -# -# Name: pop_authenticators -# Type: string -# Default: "" -# -# -# This is a colon-delimited list of authentication methods mutt may -# attempt to use to log in to an POP server, in the order mutt should -# try them. Authentication methods are either 'user', 'apop' or any -# SASL mechanism, eg 'digest-md5', 'gssapi' or 'cram-md5'. -# This parameter is case-insensitive. If this parameter is unset -# (the default) mutt will try all available methods, in order from -# most-secure to least-secure. -# -# Example: set pop_authenticators="digest-md5:apop:user" -# -# -# set pop_auth_try_all=yes -# -# Name: pop_auth_try_all -# Type: boolean -# Default: yes -# -# -# If set, Mutt will try all available methods. When unset, Mutt will -# only fall back to other authentication methods if the previous -# methods are unavailable. If a method is available but authentication -# fails, Mutt will not connect to the POP server. -# -# -# set pop_checkinterval=60 -# -# Name: pop_checkinterval -# Type: number -# Default: 60 -# -# -# This variable configures how often (in seconds) POP should look for -# new mail. -# -# -# set pop_delete=ask-no -# -# Name: pop_delete -# Type: quadoption -# Default: ask-no -# -# -# If set, Mutt will delete successfully downloaded messages from the POP -# server when using the fetch-mail function. When unset, Mutt will -# download messages but also leave them on the POP server. -# -# -# set pop_host="" -# -# Name: pop_host -# Type: string -# Default: "" -# -# -# The name of your POP server for the fetch-mail function. You -# can also specify an alternative port, username and password, ie: -# -# [pop[s]://][username[:password]@]popserver[:port] -# -# -# set pop_last=no -# -# Name: pop_last -# Type: boolean -# Default: no -# -# -# If this variable is set, mutt will try to use the "LAST" POP command -# for retrieving only unread messages from the POP server when using -# the fetch-mail function. -# -# -# set pop_reconnect=ask-yes -# -# Name: pop_reconnect -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether or not Mutt will try to reconnect to POP server when -# connection lost. -# -# -# set pop_user="" -# -# Name: pop_user -# Type: string -# Default: "" -# -# -# Your login name on the POP server. -# -# This variable defaults to your user name on the local machine. -# -# -# set pop_pass="" -# -# Name: pop_pass -# Type: string -# Default: "" -# -# -# Specifies the password for your POP account. If unset, Mutt will -# prompt you for your password when you open POP mailbox. -# Warning: you should only use this option when you are on a -# fairly secure machine, because the superuser can read your muttrc -# even if you are the only one who can read the file. -# -# -# set post_indent_string="" -# -# Name: post_indent_string -# Type: string -# Default: "" -# -# -# Similar to the ``$attribution'' variable, Mutt will append this -# string after the inclusion of a message which is being replied to. -# -# -# set post_moderated=ask-yes -# -# Name: post_moderated -# Type: quadoption -# Default: ask-yes -# -# -# If set to yes, Mutt will post article to newsgroup that have -# not permissions to posting (e.g. moderated). Note: if newsserver -# does not support posting to that newsgroup or totally read-only, that -# posting will not have an effect. -# -# -# set postpone=ask-yes -# -# Name: postpone -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether or not messages are saved in the ``$postponed'' -# mailbox when you elect not to send immediately. -# -# -# set postponed="~/postponed" -# -# Name: postponed -# Type: path -# Default: "~/postponed" -# -# -# Mutt allows you to indefinitely ``postpone sending a message'' which -# you are editing. When you choose to postpone a message, Mutt saves it -# in the mailbox specified by this variable. Also see the ``$postpone'' -# variable. -# -# -# set preconnect="" -# -# Name: preconnect -# Type: string -# Default: "" -# -# -# If set, a shell command to be executed if mutt fails to establish -# a connection to the server. This is useful for setting up secure -# connections, e.g. with ssh(1). If the command returns a nonzero -# status, mutt gives up opening the server. Example: -# -# preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net -# sleep 20 < /dev/null > /dev/null" -# -# Mailbox 'foo' on mailhost.net can now be reached -# as '{localhost:1234}foo'. -# -# NOTE: For this example to work, you must be able to log in to the -# remote machine without having to enter a password. -# -# -# set print=ask-no -# -# Name: print -# Type: quadoption -# Default: ask-no -# -# -# Controls whether or not Mutt really prints messages. -# This is set to ask-no by default, because some people -# accidentally hit ``p'' often (like me). -# -# -# set print_command="lpr" -# -# Name: print_command -# Type: path -# Default: "lpr" -# -# -# This specifies the command pipe that should be used to print messages. -# -# -# set print_decode=yes -# -# Name: print_decode -# Type: boolean -# Default: yes -# -# -# Used in connection with the print-message command. If this -# option is set, the message is decoded before it is passed to the -# external command specified by $print_command. If this option -# is unset, no processing will be applied to the message when -# printing it. The latter setting may be useful if you are using -# some advanced printer filter which is able to properly format -# e-mail messages for printing. -# -# -# set print_split=no -# -# Name: print_split -# Type: boolean -# Default: no -# -# -# Used in connection with the print-message command. If this option -# is set, the command specified by $print_command is executed once for -# each message which is to be printed. If this option is unset, -# the command specified by $print_command is executed only once, and -# all the messages are concatenated, with a form feed as the message -# separator. -# -# Those who use the enscript(1) program's mail-printing mode will -# most likely want to set this option. -# -# -# set prompt_after=yes -# -# Name: prompt_after -# Type: boolean -# Default: yes -# -# -# If you use an external ``$pager'', setting this variable will -# cause Mutt to prompt you for a command when the pager exits rather -# than returning to the index menu. If unset, Mutt will return to the -# index menu when the external pager exits. -# -# -# set query_command="" -# -# Name: query_command -# Type: path -# Default: "" -# -# -# This specifies the command that mutt will use to make external address -# queries. The string should contain a %s, which will be substituted -# with the query string the user types. See ``query'' for more -# information. -# -# -# set quit=yes -# -# Name: quit -# Type: quadoption -# Default: yes -# -# -# This variable controls whether ``quit'' and ``exit'' actually quit -# from mutt. If it set to yes, they do quit, if it is set to no, they -# have no effect, and if it is set to ask-yes or ask-no, you are -# prompted for confirmation when you try to quit. -# -# -# set quote_regexp="^([ \t]*[|>:}#])+" -# -# Name: quote_regexp -# Type: regular expression -# Default: "^([ \t]*[|>:}#])+" -# -# -# A regular expression used in the internal-pager to determine quoted -# sections of text in the body of a message. -# -# Note: In order to use the quotedx patterns in the -# internal pager, you need to set this to a regular expression that -# matches exactly the quote characters at the beginning of quoted -# lines. -# -# -# set read_inc=10 -# -# Name: read_inc -# Type: number -# Default: 10 -# -# -# If set to a value greater than 0, Mutt will display which message it -# is currently on when reading a mailbox. The message is printed after -# read_inc messages have been read (e.g., if set to 25, Mutt will -# print a message when it reads message 25, and then again when it gets -# to message 50). This variable is meant to indicate progress when -# reading large mailboxes which may take some time. -# When set to 0, only a single message will appear before the reading -# the mailbox. -# -# Also see the ``$write_inc'' variable. -# -# -# set read_only=no -# -# Name: read_only -# Type: boolean -# Default: no -# -# -# If set, all folders are opened in read-only mode. -# -# -# set realname="" -# -# Name: realname -# Type: string -# Default: "" -# -# -# This variable specifies what "real" or "personal" name should be used -# when sending messages. -# -# By default, this is the GECOS field from /etc/passwd. Note that this -# variable will not be used when the user has set a real name -# in the $from variable. -# -# -# set recall=ask-yes -# -# Name: recall -# Type: quadoption -# Default: ask-yes -# -# -# Controls whether or not Mutt recalls postponed messages -# when composing a new message. Also see ``$postponed''. -# -# Setting this variable to ``yes'' is not generally useful, and thus not -# recommended. -# -# -# set record="" -# -# Name: record -# Type: path -# Default: "" -# -# -# This specifies the file into which your outgoing messages should be -# appended. (This is meant as the primary method for saving a copy of -# your messages, but another way to do this is using the ``my_hdr'' -# command to create a Bcc: field with your email address in it.) -# -# The value of $record is overridden by the ``$force_name'' and -# ``$save_name'' variables, and the ``fcc-hook'' command. -# -# -# set reply_regexp="^(re([\\[0-9\\]+])*|aw):[ \t]*" -# -# Name: reply_regexp -# Type: regular expression -# Default: "^(re([\\[0-9\\]+])*|aw):[ \t]*" -# -# -# A regular expression used to recognize reply messages when threading -# and replying. The default value corresponds to the English "Re:" and -# the German "Aw:". -# -# -# set reply_self=no -# -# Name: reply_self -# Type: boolean -# Default: no -# -# -# If unset and you are replying to a message sent by you, Mutt will -# assume that you want to reply to the recipients of that message rather -# than to yourself. -# -# -# set reply_to=ask-yes -# -# Name: reply_to -# Type: quadoption -# Default: ask-yes -# -# -# If set, when replying to a message, Mutt will use the address listed -# in the Reply-to: header as the recipient of the reply. If unset, -# it will use the address in the From: header field instead. This -# option is useful for reading a mailing list that sets the Reply-To: -# header field to the list address and you want to send a private -# message to the author of a message. -# -# -# set resolve=yes -# -# Name: resolve -# Type: boolean -# Default: yes -# -# -# When set, the cursor will be automatically advanced to the next -# (possibly undeleted) message whenever a command that modifies the -# current message is executed. -# -# -# set reverse_alias=no -# -# Name: reverse_alias -# Type: boolean -# Default: no -# -# -# This variable controls whether or not Mutt will display the "personal" -# name from your aliases in the index menu if it finds an alias that -# matches the message's sender. For example, if you have the following -# alias: -# -# alias juser abd30425@somewhere.net (Joe User) -# -# and then you receive mail which contains the following header: -# -# From: abd30425@somewhere.net -# -# It would be displayed in the index menu as ``Joe User'' instead of -# ``abd30425@somewhere.net.'' This is useful when the person's e-mail -# address is not human friendly (like CompuServe addresses). -# -# -# set reverse_name=no -# -# Name: reverse_name -# Type: boolean -# Default: no -# -# -# It may sometimes arrive that you receive mail to a certain machine, -# move the messages to another machine, and reply to some the messages -# from there. If this variable is set, the default From: line of -# the reply messages is built using the address where you received the -# messages you are replying to if that address matches your -# alternates. If the variable is unset, or the address that would be -# used doesn't match your alternates, the From: line will use -# your address on the current machine. -# -# -# set reverse_realname=yes -# -# Name: reverse_realname -# Type: boolean -# Default: yes -# -# -# This variable fine-tunes the behaviour of the reverse_name feature. -# When it is set, mutt will use the address from incoming messages as-is, -# possibly including eventual real names. When it is unset, mutt will -# override any such real names with the setting of the realname variable. -# -# -# set rfc2047_parameters=no -# -# Name: rfc2047_parameters -# Type: boolean -# Default: no -# -# -# When this variable is set, Mutt will decode RFC-2047-encoded MIME -# parameters. You want to set this variable when mutt suggests you -# to save attachments to files named like this: -# =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?= -# -# When this variable is set interactively, the change doesn't have -# the desired effect before you have changed folders. -# -# Note that this use of RFC 2047's encoding is explicitly, -# prohibited by the standard, but nevertheless encountered in the -# wild. -# Also note that setting this parameter will not have the effect -# that mutt generates this kind of encoding. Instead, mutt will -# unconditionally use the encoding specified in RFC 2231. -# -# -# set save_address=no -# -# Name: save_address -# Type: boolean -# Default: no -# -# -# If set, mutt will take the sender's full address when choosing a -# default folder for saving a mail. If ``$save_name'' or ``$force_name'' -# is set too, the selection of the fcc folder will be changed as well. -# -# -# set save_empty=yes -# -# Name: save_empty -# Type: boolean -# Default: yes -# -# -# When unset, mailboxes which contain no saved messages will be removed -# when closed (the exception is ``$spoolfile'' which is never removed). -# If set, mailboxes are never removed. -# -# Note: This only applies to mbox and MMDF folders, Mutt does not -# delete MH and Maildir directories. -# -# -# set save_name=no -# -# Name: save_name -# Type: boolean -# Default: no -# -# -# This variable controls how copies of outgoing messages are saved. -# When set, a check is made to see if a mailbox specified by the -# recipient address exists (this is done by searching for a mailbox in -# the ``$folder'' directory with the username part of the -# recipient address). If the mailbox exists, the outgoing message will -# be saved to that mailbox, otherwise the message is saved to the -# ``$record'' mailbox. -# -# Also see the ``$force_name'' variable. -# -# -# set score=yes -# -# Name: score -# Type: boolean -# Default: yes -# -# -# When this variable is unset, scoring is turned off. This can -# be useful to selectively disable scoring for certain folders when the -# ``$score_threshold_delete'' variable and friends are used. -# -# -# set score_threshold_delete=-1 -# -# Name: score_threshold_delete -# Type: number -# Default: -1 -# -# -# Messages which have been assigned a score equal to or lower than the value -# of this variable are automatically marked for deletion by mutt. Since -# mutt scores are always greater than or equal to zero, the default setting -# of this variable will never mark a message for deletion. -# -# -# set score_threshold_flag=9999 -# -# Name: score_threshold_flag -# Type: number -# Default: 9999 -# -# -# Messages which have been assigned a score greater than or equal to this -# variable's value are automatically marked "flagged". -# -# -# set score_threshold_read=-1 -# -# Name: score_threshold_read -# Type: number -# Default: -1 -# -# -# Messages which have been assigned a score equal to or lower than the value -# of this variable are automatically marked as read by mutt. Since -# mutt scores are always greater than or equal to zero, the default setting -# of this variable will never mark a message read. -# -# -# set send_charset="us-ascii:iso-8859-1:utf-8" -# -# Name: send_charset -# Type: string -# Default: "us-ascii:iso-8859-1:utf-8" -# -# -# A list of character sets for outgoing messages. Mutt will use the -# first character set into which the text can be converted exactly. -# If your ``$charset'' is not iso-8859-1 and recipients may not -# understand UTF-8, it is advisable to include in the list an -# appropriate widely used standard character set (such as -# iso-8859-2, koi8-r or iso-2022-jp) either instead of or after -# "iso-8859-1". -# -# -# set sendmail="/usr/sbin/sendmail -oem -oi" -# -# Name: sendmail -# Type: path -# Default: "/usr/sbin/sendmail -oem -oi" -# -# -# Specifies the program and arguments used to deliver mail sent by Mutt. -# Mutt expects that the specified program interprets additional -# arguments as recipient addresses. -# -# -# set sendmail_wait=0 -# -# Name: sendmail_wait -# Type: number -# Default: 0 -# -# -# Specifies the number of seconds to wait for the ``$sendmail'' process -# to finish before giving up and putting delivery in the background. -# -# Mutt interprets the value of this variable as follows: -# >0 number of seconds to wait for sendmail to finish before continuing -# 0 wait forever for sendmail to finish -# <0 always put sendmail in the background without waiting -# -# -# Note that if you specify a value other than 0, the output of the child -# process will be put in a temporary file. If there is some error, you -# will be informed as to where to find the output. -# -# -# set shell="" -# -# Name: shell -# Type: path -# Default: "" -# -# -# Command to use when spawning a subshell. By default, the user's login -# shell from /etc/passwd is used. -# -# -# set save_unsubscribed=no -# -# Name: save_unsubscribed -# Type: boolean -# Default: no -# -# -# When set, info about unsubscribed newsgroups will be saved into -# ``newsrc'' file and into cache. -# -# -# set show_new_news=yes -# -# Name: show_new_news -# Type: boolean -# Default: yes -# -# -# If set, newsserver will be asked for new newsgroups on entering -# the browser. Otherwise, it will be done only once for a newsserver. -# Also controls whether or not number of new articles of subscribed -# newsgroups will be then checked. -# -# -# set show_only_unread=no -# -# Name: show_only_unread -# Type: boolean -# Default: no -# -# -# If set, only subscribed newsgroups that contain unread articles -# will be displayed in browser. -# -# -# set sig_dashes=yes -# -# Name: sig_dashes -# Type: boolean -# Default: yes -# -# -# If set, a line containing ``-- '' will be inserted before your -# ``$signature''. It is strongly recommended that you not unset -# this variable unless your ``signature'' contains just your name. The -# reason for this is because many software packages use ``-- \n'' to -# detect your signature. For example, Mutt has the ability to highlight -# the signature in a different color in the builtin pager. -# -# -# set sig_on_top=no -# -# Name: sig_on_top -# Type: boolean -# Default: no -# -# -# If set, the signature will be included before any quoted or forwarded -# text. It is strongly recommended that you do not set this variable -# unless you really know what you are doing, and are prepared to take -# some heat from netiquette guardians. -# -# -# set signature="~/.signature" -# -# Name: signature -# Type: path -# Default: "~/.signature" -# -# -# Specifies the filename of your signature, which is appended to all -# outgoing messages. If the filename ends with a pipe (``|''), it is -# assumed that filename is a shell command and input should be read from -# its stdout. -# -# -# set simple_search="~f %s | ~s %s" -# -# Name: simple_search -# Type: string -# Default: "~f %s | ~s %s" -# -# -# Specifies how Mutt should expand a simple search into a real search -# pattern. A simple search is one that does not contain any of the ~ -# operators. See ``patterns'' for more information on search patterns. -# -# For example, if you simply type joe at a search or limit prompt, Mutt -# will automatically expand it to the value specified by this variable. -# For the default value it would be: -# -# ~f joe | ~s joe -# -# -# set smart_wrap=yes -# -# Name: smart_wrap -# Type: boolean -# Default: yes -# -# -# Controls the display of lines longer than the screen width in the -# internal pager. If set, long lines are wrapped at a word boundary. If -# unset, lines are simply wrapped at the screen edge. Also see the -# ``$markers'' variable. -# -# -# set smileys="(>From )|(:[-^]?[][)(><}{|/DP])" -# -# Name: smileys -# Type: regular expression -# Default: "(>From )|(:[-^]?[][)(><}{|/DP])" -# -# -# The pager uses this variable to catch some common false -# positives of ``$quote_regexp'', most notably smileys in the beginning -# of a line -# -# -# set sleep_time=1 -# -# Name: sleep_time -# Type: number -# Default: 1 -# -# -# Specifies time, in seconds, to pause while displaying certain informational -# messages, while moving from folder to folder and after expunging -# messages from the current folder. The default is to pause one second, so -# a value of zero for this option suppresses the pause. -# -# -# set sort=date -# -# Name: sort -# Type: sort order -# Default: date -# -# -# Specifies how to sort messages in the index menu. Valid values -# are: -# -# date or date-sent -# date-received -# from -# mailbox-order (unsorted) -# score -# size -# spam -# subject -# threads -# to -# -# You may optionally use the reverse- prefix to specify reverse sorting -# order (example: set sort=reverse-date-sent). -# -# -# set sort_alias=alias -# -# Name: sort_alias -# Type: sort order -# Default: alias -# -# -# Specifies how the entries in the `alias' menu are sorted. The -# following are legal values: -# -# address (sort alphabetically by email address) -# alias (sort alphabetically by alias name) -# unsorted (leave in order specified in .muttrc) -# -# -# set sort_aux=date -# -# Name: sort_aux -# Type: sort order -# Default: date -# -# -# When sorting by threads, this variable controls how threads are sorted -# in relation to other threads, and how the branches of the thread trees -# are sorted. This can be set to any value that ``$sort'' can, except -# threads (in that case, mutt will just use date-sent). You can also -# specify the last- prefix in addition to the reverse- prefix, but last- -# must come after reverse-. The last- prefix causes messages to be -# sorted against its siblings by which has the last descendant, using -# the rest of sort_aux as an ordering. For instance, set sort_aux=last- -# date-received would mean that if a new message is received in a -# thread, that thread becomes the last one displayed (or the first, if -# you have set sort=reverse-threads.) Note: For reversed ``$sort'' -# order $sort_aux is reversed again (which is not the right thing to do, -# but kept to not break any existing configuration setting). -# -# -# set sort_browser=alpha -# -# Name: sort_browser -# Type: sort order -# Default: alpha -# -# -# Specifies how to sort entries in the file browser. By default, the -# entries are sorted alphabetically. Valid values: -# -# alpha (alphabetically) -# date -# size -# unsorted -# -# You may optionally use the reverse- prefix to specify reverse sorting -# order (example: set sort_browser=reverse-date). -# -# -# set sort_re=yes -# -# Name: sort_re -# Type: boolean -# Default: yes -# -# -# This variable is only useful when sorting by threads with -# ``$strict_threads'' unset. In that case, it changes the heuristic -# mutt uses to thread messages by subject. With sort_re set, mutt will -# only attach a message as the child of another message by subject if -# the subject of the child message starts with a substring matching the -# setting of ``$reply_regexp''. With sort_re unset, mutt will attach -# the message whether or not this is the case, as long as the -# non-``$reply_regexp'' parts of both messages are identical. -# -# -# set spam_separator="," -# -# Name: spam_separator -# Type: string -# Default: "," -# -# -# ``spam_separator'' controls what happens when multiple spam headers -# are matched: if unset, each successive header will overwrite any -# previous matches value for the spam label. If set, each successive -# match will append to the previous, using ``spam_separator'' as a -# separator. -# -# -# set spoolfile="" -# -# Name: spoolfile -# Type: path -# Default: "" -# -# -# If your spool mailbox is in a non-default place where Mutt cannot find -# it, you can specify its location with this variable. Mutt will -# automatically set this variable to the value of the environment -# variable $MAIL if it is not set. -# -# -# set status_chars="-*%A" -# -# Name: status_chars -# Type: string -# Default: "-*%A" -# -# -# Controls the characters used by the "%r" indicator in -# ``$status_format''. The first character is used when the mailbox is -# unchanged. The second is used when the mailbox has been changed, and -# it needs to be resynchronized. The third is used if the mailbox is in -# read-only mode, or if the mailbox will not be written when exiting -# that mailbox (You can toggle whether to write changes to a mailbox -# with the toggle-write operation, bound by default to "%"). The fourth -# is used to indicate that the current folder has been opened in attach- -# message mode (Certain operations like composing a new mail, replying, -# forwarding, etc. are not permitted in this mode). -# -# -# set status_format="-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---" -# -# Name: status_format -# Type: string -# Default: "-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]---(%s/%S)-%>-(%P)---" -# -# -# Controls the format of the status line displayed in the index -# menu. This string is similar to ``$index_format'', but has its own -# set of printf()-like sequences: -# -# %b number of mailboxes with new mail * -# %d number of deleted messages * -# %f the full pathname of the current mailbox -# %F number of flagged messages * -# %h local hostname -# %l size (in bytes) of the current mailbox * -# %L size (in bytes) of the messages shown -# (i.e., which match the current limit) * -# %m the number of messages in the mailbox * -# %M the number of messages shown (i.e., which match the current limit) * -# %n number of new messages in the mailbox * -# %o number of old unread messages * -# %p number of postponed messages * -# %P percentage of the way through the index -# %r modified/read-only/won't-write/attach-message indicator, -# according to $status_chars -# %s current sorting mode ($sort) -# %S current aux sorting method ($sort_aux) -# %t number of tagged messages * -# %u number of unread messages * -# %v Mutt version string -# %V currently active limit pattern, if any * -# %>X right justify the rest of the string and pad with "X" -# %|X pad to the end of the line with "X" -# -# -# * = can be optionally printed if nonzero -# -# Some of the above sequences can be used to optionally print a string -# if their value is nonzero. For example, you may only want to see the -# number of flagged messages if such messages exist, since zero is not -# particularly meaningful. To optionally print a string based upon one -# of the above sequences, the following construct is used -# -# %??? -# -# where sequence_char is a character from the table above, and -# optional_string is the string you would like printed if -# sequence_char is nonzero. optional_string may contain -# other sequences as well as normal text, but you may not nest -# optional strings. -# -# Here is an example illustrating how to optionally print the number of -# new messages in a mailbox: -# %?n?%n new messages.? -# -# Additionally you can switch between two strings, the first one, if a -# value is zero, the second one, if the value is nonzero, by using the -# following construct: -# %??&? -# -# You can additionally force the result of any printf-like sequence to -# be lowercase by prefixing the sequence character with an underscore -# (_) sign. For example, if you want to display the local hostname in -# lowercase, you would use: -# %_h -# -# If you prefix the sequence character with a colon (:) character, mutt -# will replace any dots in the expansion by underscores. This might be helpful -# with IMAP folders that don't like dots in folder names. -# -# -# set status_on_top=no -# -# Name: status_on_top -# Type: boolean -# Default: no -# -# -# Setting this variable causes the ``status bar'' to be displayed on -# the first line of the screen rather than near the bottom. -# -# -# set strict_threads=no -# -# Name: strict_threads -# Type: boolean -# Default: no -# -# -# If set, threading will only make use of the ``In-Reply-To'' and -# ``References'' fields when you ``$sort'' by message threads. By -# default, messages with the same subject are grouped together in -# ``pseudo threads.'' This may not always be desirable, such as in a -# personal mailbox where you might have several unrelated messages with -# the subject ``hi'' which will get grouped together. -# -# -# set suspend=yes -# -# Name: suspend -# Type: boolean -# Default: yes -# -# -# When unset, mutt won't stop when the user presses the terminal's -# susp key, usually ``control-Z''. This is useful if you run mutt -# inside an xterm using a command like xterm -e mutt. -# -# -# set text_flowed=no -# -# Name: text_flowed -# Type: boolean -# Default: no -# -# -# When set, mutt will generate text/plain; format=flowed attachments. -# This format is easier to handle for some mailing software, and generally -# just looks like ordinary text. To actually make use of this format's -# features, you'll need support in your editor. -# -# Note that $indent_string is ignored when this option is set. -# -# -# set thread_received=no -# -# Name: thread_received -# Type: boolean -# Default: no -# -# -# When set, mutt uses the date received rather than the date sent -# to thread messages by subject. -# -# -# set thorough_search=no -# -# Name: thorough_search -# Type: boolean -# Default: no -# -# -# Affects the ~b and ~h search operations described in -# section ``patterns'' above. If set, the headers and attachments of -# messages to be searched are decoded before searching. If unset, -# messages are searched as they appear in the folder. -# -# -# set tilde=no -# -# Name: tilde -# Type: boolean -# Default: no -# -# -# When set, the internal-pager will pad blank lines to the bottom of the -# screen with a tilde (~). -# -# -# set timeout=600 -# -# Name: timeout -# Type: number -# Default: 600 -# -# -# This variable controls the number of seconds Mutt will wait -# for a key to be pressed in the main menu before timing out and -# checking for new mail. A value of zero or less will cause Mutt -# to never time out. -# -# -# set tmpdir="" -# -# Name: tmpdir -# Type: path -# Default: "" -# -# -# This variable allows you to specify where Mutt will place its -# temporary files needed for displaying and composing messages. If -# this variable is not set, the environment variable TMPDIR is -# used. If TMPDIR is not set then "/tmp" is used. -# -# -# set to_chars=" +TCFL" -# -# Name: to_chars -# Type: string -# Default: " +TCFL" -# -# -# Controls the character used to indicate mail addressed to you. The -# first character is the one used when the mail is NOT addressed to your -# address (default: space). The second is used when you are the only -# recipient of the message (default: +). The third is when your address -# appears in the TO header field, but you are not the only recipient of -# the message (default: T). The fourth character is used when your -# address is specified in the CC header field, but you are not the only -# recipient. The fifth character is used to indicate mail that was sent -# by you. The sixth character is used to indicate when a mail -# was sent to a mailing-list you subscribe to (default: L). -# -# -# set tunnel="" -# -# Name: tunnel -# Type: string -# Default: "" -# -# -# Setting this variable will cause mutt to open a pipe to a command -# instead of a raw socket. You may be able to use this to set up -# preauthenticated connections to your IMAP/POP3 server. Example: -# -# tunnel="ssh -q mailhost.net /usr/local/libexec/imapd" -# -# NOTE: For this example to work you must be able to log in to the remote -# machine without having to enter a password. -# -# -# set use_8bitmime=no -# -# Name: use_8bitmime -# Type: boolean -# Default: no -# -# -# Warning: do not set this variable unless you are using a version -# of sendmail which supports the -B8BITMIME flag (such as sendmail -# 8.8.x) or you may not be able to send mail. -# -# When set, Mutt will invoke ``$sendmail'' with the -B8BITMIME -# flag when sending 8-bit messages to enable ESMTP negotiation. -# -# -# set use_domain=yes -# -# Name: use_domain -# Type: boolean -# Default: yes -# -# -# When set, Mutt will qualify all local addresses (ones without the -# @host portion) with the value of ``$hostname''. If unset, no -# addresses will be qualified. -# -# -# set use_from=yes -# -# Name: use_from -# Type: boolean -# Default: yes -# -# -# When set, Mutt will generate the `From:' header field when -# sending messages. If unset, no `From:' header field will be -# generated unless the user explicitly sets one using the ``my_hdr'' -# command. -# -# -# set use_ipv6=yes -# -# Name: use_ipv6 -# Type: boolean -# Default: yes -# -# -# When set, Mutt will look for IPv6 addresses of hosts it tries to -# contact. If this option is unset, Mutt will restrict itself to IPv4 addresses. -# Normally, the default should work. -# -# -# set use_idn=yes -# -# Name: use_idn -# Type: boolean -# Default: yes -# -# -# When set, Mutt will show you international domain names decoded. -# Note: You can use IDNs for addresses even if this is unset. -# This variable only affects decoding. -# -# -# set use_ipv6=yes -# -# Name: use_ipv6 -# Type: boolean -# Default: yes -# -# -# When set, Mutt will look for IPv6 addresses of hosts it tries to -# contact. If this option is unset, Mutt will restrict itself to IPv4 addresses. -# Normally, the default should work. -# -# -# set user_agent=yes -# -# Name: user_agent -# Type: boolean -# Default: yes -# -# -# When set, mutt will add a "User-Agent" header to outgoing -# messages, indicating which version of mutt was used for composing -# them. -# -# -# set visual="" -# -# Name: visual -# Type: path -# Default: "" -# -# -# Specifies the visual editor to invoke when the ~v command is -# given in the builtin editor. -# -# -# set wait_key=yes -# -# Name: wait_key -# Type: boolean -# Default: yes -# -# -# Controls whether Mutt will ask you to press a key after shell- -# escape, pipe-message, pipe-entry, print-message, -# and print-entry commands. -# -# It is also used when viewing attachments with ``auto_view'', provided -# that the corresponding mailcap entry has a needsterminal flag, -# and the external program is interactive. -# -# When set, Mutt will always ask for a key. When unset, Mutt will wait -# for a key only if the external command returned a non-zero status. -# -# -# set weed=yes -# -# Name: weed -# Type: boolean -# Default: yes -# -# -# When set, mutt will weed headers when displaying, forwarding, -# printing, or replying to messages. -# -# -# set wrap_search=yes -# -# Name: wrap_search -# Type: boolean -# Default: yes -# -# -# Controls whether searches wrap around the end of the mailbox. -# -# When set, searches will wrap around the first (or last) message. When -# unset, searches will not wrap. -# -# -# set wrapmargin=0 -# -# Name: wrapmargin -# Type: number -# Default: 0 -# -# -# Controls the size of the margin remaining at the right side of -# the terminal when mutt's pager does smart wrapping. -# -# -# set write_inc=10 -# -# Name: write_inc -# Type: number -# Default: 10 -# -# -# When writing a mailbox, a message will be printed every -# write_inc messages to indicate progress. If set to 0, only a -# single message will be displayed before writing a mailbox. -# -# Also see the ``$read_inc'' variable. -# -# -# set write_bcc=yes -# -# Name: write_bcc -# Type: boolean -# Default: yes -# -# -# Controls whether mutt writes out the Bcc header when preparing -# messages to be sent. Exim users may wish to unset this. -# -# -# set x_comment_to=no -# -# Name: x_comment_to -# Type: boolean -# Default: no -# -# -# If set, Mutt will add ``X-Comment-To:'' field (that contains full -# name of original article author) to article that followuped to newsgroup. -# -# diff --git a/VERSION.in b/VERSION.in deleted file mode 100644 index d64531f..0000000 --- a/VERSION.in +++ /dev/null @@ -1 +0,0 @@ -devel diff --git a/compile.sh b/compile.sh deleted file mode 100755 index 995cf20..0000000 --- a/compile.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -# ./configure --enable-pgp --enable-smime --with-regex --enable-pop --enable-imap --enable-nntp --enable-imap-edit-threads --with-ssl --enable-hcache --with-libesmtp && make -if [ `uname -s` = 'Darwin' ] ; then - export CFLAGS="-I/sw/include" - export LDFLAGS="-L/sw/lib" -fi -CC="gcc -g" ./configure --enable-pgp --enable-smime --with-regex --enable-pop --enable-imap --enable-nntp --enable-imap-edit-threads --with-ssl --enable-hcache --enable-debug && make diff --git a/configure.ac b/configure.ac index a461d13..476b0d2 100644 --- a/configure.ac +++ b/configure.ac @@ -6,9 +6,7 @@ dnl !!! TO DUMP THEIR RESULTS WHEN MUTT -V IS CALLED !!! AC_PREREQ([2.50]) AC_INIT([mutt.h]) AM_CONFIG_HEADER(config.h) -AM_INIT_AUTOMAKE(madmutt, `cat "$srcdir/VERSION.in"`) - -AC_SUBST([CONFIGURE_DEPENDENCIES], ['$(top_srcdir)/VERSION.in']) +AM_INIT_AUTOMAKE(madmutt, devel) AC_GNU_SOURCE @@ -735,7 +733,6 @@ AM_CONDITIONAL(BUILD_DOCUMENTATION, test "${DOXYGEN}" != "no") AM_CONDITIONAL(USE_LATEX, test "${LATEX}" != "no") AC_OUTPUT(Makefile - Madmuttrc.head intl/Makefile m4/Makefile po/Makefile.in diff --git a/BUGS b/legacy/BUGS similarity index 100% rename from BUGS rename to legacy/BUGS diff --git a/INSTALL b/legacy/INSTALL similarity index 100% rename from INSTALL rename to legacy/INSTALL diff --git a/TODO b/legacy/TODO similarity index 100% rename from TODO rename to legacy/TODO diff --git a/doc/Makefile.in b/legacy/doc/Makefile.in similarity index 100% rename from doc/Makefile.in rename to legacy/doc/Makefile.in diff --git a/doc/PGP-Notes.txt b/legacy/doc/PGP-Notes.txt similarity index 100% rename from doc/PGP-Notes.txt rename to legacy/doc/PGP-Notes.txt diff --git a/doc/applying-patches.txt b/legacy/doc/applying-patches.txt similarity index 100% rename from doc/applying-patches.txt rename to legacy/doc/applying-patches.txt diff --git a/doc/chunk.xsl b/legacy/doc/chunk.xsl similarity index 100% rename from doc/chunk.xsl rename to legacy/doc/chunk.xsl diff --git a/doc/devel-notes.txt b/legacy/doc/devel-notes.txt similarity index 100% rename from doc/devel-notes.txt rename to legacy/doc/devel-notes.txt diff --git a/doc/dotlock.man b/legacy/doc/dotlock.man similarity index 100% rename from doc/dotlock.man rename to legacy/doc/dotlock.man diff --git a/doc/html.xsl b/legacy/doc/html.xsl similarity index 100% rename from doc/html.xsl rename to legacy/doc/html.xsl diff --git a/doc/instdoc.sh.in b/legacy/doc/instdoc.sh.in similarity index 100% rename from doc/instdoc.sh.in rename to legacy/doc/instdoc.sh.in diff --git a/doc/madmutt-manual.xsl b/legacy/doc/madmutt-manual.xsl similarity index 100% rename from doc/madmutt-manual.xsl rename to legacy/doc/madmutt-manual.xsl diff --git a/doc/madmutt-tex.xsl b/legacy/doc/madmutt-tex.xsl similarity index 100% rename from doc/madmutt-tex.xsl rename to legacy/doc/madmutt-tex.xsl diff --git a/doc/madmutt.css b/legacy/doc/madmutt.css similarity index 100% rename from doc/madmutt.css rename to legacy/doc/madmutt.css diff --git a/doc/madmutt.ist b/legacy/doc/madmutt.ist similarity index 100% rename from doc/madmutt.ist rename to legacy/doc/madmutt.ist diff --git a/doc/madmutt.sty b/legacy/doc/madmutt.sty similarity index 100% rename from doc/madmutt.sty rename to legacy/doc/madmutt.sty diff --git a/doc/manual.xml.head b/legacy/doc/manual.xml.head similarity index 100% rename from doc/manual.xml.head rename to legacy/doc/manual.xml.head diff --git a/doc/manual.xml.tail b/legacy/doc/manual.xml.tail similarity index 100% rename from doc/manual.xml.tail rename to legacy/doc/manual.xml.tail diff --git a/doc/mbox.man b/legacy/doc/mbox.man similarity index 100% rename from doc/mbox.man rename to legacy/doc/mbox.man diff --git a/doc/mutt.man b/legacy/doc/mutt.man similarity index 100% rename from doc/mutt.man rename to legacy/doc/mutt.man diff --git a/doc/muttrc.man.head b/legacy/doc/muttrc.man.head similarity index 100% rename from doc/muttrc.man.head rename to legacy/doc/muttrc.man.head diff --git a/doc/muttrc.man.tail b/legacy/doc/muttrc.man.tail similarity index 100% rename from doc/muttrc.man.tail rename to legacy/doc/muttrc.man.tail diff --git a/doc/patch-notes.txt b/legacy/doc/patch-notes.txt similarity index 100% rename from doc/patch-notes.txt rename to legacy/doc/patch-notes.txt diff --git a/doc/smime-notes.txt b/legacy/doc/smime-notes.txt similarity index 100% rename from doc/smime-notes.txt rename to legacy/doc/smime-notes.txt diff --git a/smime_keys.pl b/smime_keys.pl deleted file mode 100755 index 5d50cd2..0000000 --- a/smime_keys.pl +++ /dev/null @@ -1,972 +0,0 @@ -#! /usr/bin/perl -w - -# Copyright (C) 2001,2002 Oliver Ehli -# Copyright (C) 2001 Mike Schiraldi -# Copyright (C) 2003 Bjoern Jacke -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -use strict; -use File::Copy; - -umask 077; - -require "timelocal.pl"; - -sub usage (); -sub newfile ($;$$); -sub mutt_Q ($ ); -sub mycopy ($$); - -# directory setup routines -sub mkdir_recursive ($ ); -sub init_paths (); - -# key/certificate management methods -sub list_certs (); -sub query_label (); -sub add_entry ($$$$$ ); -sub add_certificate ($$$$;$ ); -sub add_key ($$$$); -sub add_root_cert ($ ); -sub parse_pem (@ ); -sub handle_pem (@ ); -sub modify_entry ($$$;$ ); -sub remove_pair ($ ); -sub change_label ($ ); -sub verify_cert($$); -sub do_verify($$$ ); - -# Get the directories mutt uses for certificate/key storage. - -my $mutt = $ENV{MUTT_CMDLINE} || 'mutt'; -my $opensslbin = "/usr/bin/openssl"; -my @tempfiles = (); -my @cert_tmp_file = (); - -my $tmpdir; -my $private_keys_path = mutt_Q 'smime_keys'; -die "smime_keys is not set in mutt's configuration file" - if length $private_keys_path == 0; - -my $certificates_path = mutt_Q 'smime_certificates'; -die "smime_certificates is not set in mutt's configuration file" - if length $certificates_path == 0; -my $root_certs_path = mutt_Q 'smime_ca_location'; -die "smime_ca_location is not set in mutt's configuration file" - if length $root_certs_path == 0; - -my $root_certs_switch; -if ( -d $root_certs_path) { - $root_certs_switch = -CApath; -} else { - $root_certs_switch = -CAfile; -} - - -# -# OPS -# - -if(@ARGV == 1 and $ARGV[0] eq "init") { - init_paths; -} -elsif(@ARGV == 1 and $ARGV[0] eq "list") { - list_certs; -} -elsif(@ARGV == 2 and $ARGV[0] eq "label") { - change_label($ARGV[1]); -} -elsif(@ARGV == 2 and $ARGV[0] eq "add_cert") { - my $format = -B $ARGV[1] ? 'DER' : 'PEM'; - my $cmd = "$opensslbin x509 -noout -hash -in $ARGV[1] -inform $format"; - my $cert_hash = `$cmd`; - $? and die "'$cmd' returned $?"; - chomp($cert_hash); - my $label = query_label; - &add_certificate($ARGV[1], \$cert_hash, 1, $label, '?'); -} -elsif(@ARGV == 2 and $ARGV[0] eq "add_pem") { - -e $ARGV[1] and -s $ARGV[1] or die("$ARGV[1] is nonexistent or empty."); - open(PEM_FILE, "<$ARGV[1]") or die("Can't open $ARGV[1]: $!"); - my @pem = ; - close(PEM_FILE); - handle_pem(@pem); -} -elsif( @ARGV == 2 and $ARGV[0] eq "add_p12") { - -e $ARGV[1] and -s $ARGV[1] or die("$ARGV[1] is nonexistent or empty."); - - print "\nNOTE: This will ask you for two passphrases:\n"; - print " 1. The passphrase you used for exporting\n"; - print " 2. The passphrase you wish to secure your private key with.\n\n"; - - my $pem_file = "$ARGV[1].pem"; - - my $cmd = "$opensslbin pkcs12 -in $ARGV[1] -out $pem_file"; - system $cmd and die "'$cmd' returned $?"; - - -e $pem_file and -s $pem_file or die("Conversion of $ARGV[1] failed."); - open(PEM_FILE, $pem_file) or die("Can't open $pem_file: $!"); - my @pem = ; - close(PEM_FILE); - unlink $pem_file; - handle_pem(@pem); -} -elsif(@ARGV == 4 and $ARGV[0] eq "add_chain") { - my $mailbox; - my $format = -B $ARGV[2] ? 'DER' : 'PEM'; - my $cmd = "$opensslbin x509 -noout -hash -in $ARGV[2] -inform $format"; - my $cert_hash = `$cmd`; - - $? and die "'$cmd' returned $?"; - - $format = -B $ARGV[3] ? 'DER' : 'PEM'; - - $cmd = "$opensslbin x509 -noout -hash -in $ARGV[3] -inform $format"; - my $issuer_hash = `$cmd`; - $? and die "'$cmd' returned $?"; - - chomp($cert_hash); - chomp($issuer_hash); - - my $label = query_label; - - add_certificate($ARGV[3], \$issuer_hash, 0, $label); - my @mailbox = &add_certificate($ARGV[2], \$cert_hash, 1, $label, $issuer_hash); - - foreach $mailbox (@mailbox) { - chomp($mailbox); - add_key($ARGV[1], $cert_hash, $mailbox, $label); - } -} -elsif((@ARGV == 2 or @ARGV == 3) and $ARGV[0] eq "verify") { - verify_cert($ARGV[1], $ARGV[2]); -} -elsif(@ARGV == 2 and $ARGV[0] eq "remove") { - remove_pair($ARGV[1]); -} -elsif(@ARGV == 2 and $ARGV[0] eq "add_root") { - add_root_cert($ARGV[1]); -} -else { - usage; - exit(1); -} - -exit(0); - - - - - -############## sub-routines ######################## - -sub usage () { - print < [file(s) | keyID [file(s)]] - - with operation being one of: - - init : no files needed, inits directory structure. - - list : lists the certificates stored in database. - label : keyID required. changes/removes/adds label. - remove : keyID required. - verify : 1=keyID and optionally 2=CRL - Verifies the certificate chain, and optionally wether - this certificate is included in supplied CRL (PEM format). - Note: to verify all certificates at the same time, - replace keyID with "all" - - add_cert : certificate required. - add_chain : three files reqd: 1=Key, 2=certificate - plus 3=intermediate certificate(s). - add_p12 : one file reqd. Adds keypair to database. - file is PKCS12 (e.g. export from netscape). - add_pem : one file reqd. Adds keypair to database. - (file was converted from e.g. PKCS12). - - add_root : one file reqd. Adds PEM root certificate to the location - specified within muttrc (smime_verify_* command) - -EOF -} - -sub mutt_Q ($) { - my $var = shift or die; - - my $cmd = "$mutt -v >/dev/null 2>/dev/null"; - system ($cmd) == 0 - or die<$file") and close(TMP_FILE) - or die "Can't touch $file: $!"; - - $file = $private_keys_path . "/.index"; - -f $file or open(TMP_FILE, ">$file") and close(TMP_FILE) - or die "Can't touch $file: $!"; -} - - - -# -# certificate management methods -# - -sub list_certs () { - my %keyflags = ( 'i', '(Invalid)', 'r', '(Revoked)', 'e', '(Expired)', - 'u', '(Unverified)', 'v', '(Valid)', 't', '(Trusted)'); - - open(INDEX, "<$certificates_path/.index") or - die "Couldn't open $certificates_path/.index: $!"; - - print "\n"; - while() { - my $tmp; - my @tmp; - my $tab = " "; - my @fields = split; - - if($fields[2] eq '-') { - print "$fields[1]: Issued for: $fields[0] $keyflags{$fields[4]}\n"; - } else { - print "$fields[1]: Issued for: $fields[0] \"$fields[2]\" $keyflags{$fields[4]}\n"; - } - - my $certfile = "$certificates_path/$fields[1]"; - my $cert; - { - open F, $certfile or - die "Couldn't open $certfile: $!"; - local $/; - $cert = ; - close F; - } - - my $subject_in; - my $issuer_in; - my $date1_in; - my $date2_in; - - my $format = -B $certfile ? 'DER' : 'PEM'; - my $cmd = "$opensslbin x509 -subject -issuer -dates -noout -in $certfile -inform $format"; - ($subject_in, $issuer_in, $date1_in, $date2_in) = `$cmd`; - $? and print "ERROR: '$cmd' returned $?\n\n" and next; - - - my @subject = split(/\//, $subject_in); - while(@subject) { - $tmp = shift @subject; - ($tmp =~ /^CN\=/) and last; - undef $tmp; - } - defined $tmp and @tmp = split (/\=/, $tmp) and - print $tab."Subject: $tmp[1]\n"; - - my @issuer = split(/\//, $issuer_in); - while(@issuer) { - $tmp = shift @issuer; - ($tmp =~ /^CN\=/) and last; - undef $tmp; - } - defined $tmp and @tmp = split (/\=/, $tmp) and - print $tab."Issued by: $tmp[1]"; - - if ( defined $date1_in and defined $date2_in ) { - @tmp = split (/\=/, $date1_in); - $tmp = $tmp[1]; - @tmp = split (/\=/, $date2_in); - print $tab."Certificate is not valid before $tmp". - $tab." or after ".$tmp[1]; - } - - -e "$private_keys_path/$fields[1]" and - print "$tab - Matching private key installed -\n"; - - $format = -B "$certificates_path/$fields[1]" ? 'DER' : 'PEM'; - $cmd = "$opensslbin x509 -purpose -noout -in $certfile -inform $format"; - my $purpose_in = `$cmd`; - $? and die "'$cmd' returned $?"; - - my @purpose = split (/\n/, $purpose_in); - print "$tab$purpose[0] (displays S/MIME options only)\n"; - while(@purpose) { - $tmp = shift @purpose; - ($tmp =~ /^S\/MIME/ and $tmp =~ /Yes/) or next; - my @tmptmp = split (/:/, $tmp); - print "$tab $tmptmp[0]\n"; - } - - print "\n"; - } - - close(INDEX); -} - - - -sub query_label () { - my @words; - my $input; - - print "\nYou may assign a label to this key, so you don't have to remember\n"; - print "the key ID. This has to be _one_ word (no whitespaces).\n\n"; - - print "Enter label: "; - chomp($input = ); - - my ($label, $junk) = split(/\s/, $input, 2); - - defined $junk - and print "\nUsing '$label' as label; ignoring '$junk'\n"; - - defined $label || ($label = "-"); - - return $label; -} - - - -sub add_entry ($$$$$) { - my $mailbox = shift or die; - my $hashvalue = shift or die; - my $use_cert = shift; - my $label = shift or die; - my $issuer_hash = shift; - - my @fields; - - if ($use_cert) { - open(INDEX, "+<$certificates_path/.index") or - die "Couldn't open $certificates_path/.index: $!"; - } - else { - open(INDEX, "+<$private_keys_path/.index") or - die "Couldn't open $private_keys_path/.index: $!"; - } - - while() { - @fields = split; - return if ($fields[0] eq $mailbox && $fields[1] eq $hashvalue); - } - - if ($use_cert) { - print INDEX "$mailbox $hashvalue $label $issuer_hash u\n"; - } - else { - print INDEX "$mailbox $hashvalue $label \n"; - } - - close(INDEX); -} - - -sub add_certificate ($$$$;$) { - my $filename = shift or die; - my $hashvalue = shift or die; - my $add_to_index = shift; - my $label = shift or die; - my $issuer_hash = shift; - - my $iter = 0; - my @mailbox; - my $mailbox; - - while(-e "$certificates_path/$$hashvalue.$iter") { - my ($t1, $t2); - my $format = -B $filename ? 'DER' : 'PEM'; - my $cmd = "$opensslbin x509 -in $filename -inform $format -fingerprint -noout"; - $t1 = `$cmd`; - $? and die "'$cmd' returned $?"; - - $format = -B "$certificates_path/$$hashvalue.$iter" ? 'DER' : 'PEM'; - $cmd = "$opensslbin x509 -in $certificates_path/$$hashvalue.$iter -inform $format -fingerprint -noout"; - $t2 = `$cmd`; - $? and die "'$cmd' returned $?"; - - $t1 eq $t2 and last; - - $iter++; - } - $$hashvalue .= ".$iter"; - - if (-e "$certificates_path/$$hashvalue") { - print "\nCertificate: $certificates_path/$$hashvalue already installed.\n"; - } - else { - mycopy $filename, "$certificates_path/$$hashvalue"; - - if ($add_to_index) { - my $format = -B $filename ? 'DER' : 'PEM'; - my $cmd = "$opensslbin x509 -in $filename -inform $format -email -noout"; - @mailbox = `$cmd`; - $? and die "'$cmd' returned $?"; - - foreach $mailbox (@mailbox) { - chomp($mailbox); - add_entry($mailbox, $$hashvalue, 1, $label, $issuer_hash); - - print "\ncertificate $$hashvalue ($label) for $mailbox added.\n"; - } - verify_cert($$hashvalue, undef); - } - else { - print "added certificate: $certificates_path/$$hashvalue.\n"; - } - } - - return @mailbox; -} - - -sub add_key ($$$$) { - my $file = shift or die; - my $hashvalue = shift or die; - my $mailbox = shift or die; - my $label = shift or die; - - unless (-e "$private_keys_path/$hashvalue") { - mycopy $file, "$private_keys_path/$hashvalue"; - } - - add_entry($mailbox, $hashvalue, 0, $label, ""); - print "added private key: " . - "$private_keys_path/$hashvalue for $mailbox\n"; -} - - - - - - -sub parse_pem (@) { - my $state = 0; - my $cert_iter = 0; - my @bag_attribs; - my $numBags = 0; - - $cert_tmp_file[$cert_iter] = newfile("cert_tmp.$cert_iter","temp"); - my $cert_tmp_iter = $cert_tmp_file[$cert_iter]; - open(CERT_FILE, ">$cert_tmp_iter") - or die "Couldn't open $cert_tmp_iter: $!"; - - while($_ = shift(@_)) { - if(/^Bag Attributes/) { - $numBags++; - $state == 0 or die("PEM-parse error at: $."); - $state = 1; - $bag_attribs[$cert_iter*4+1] = ""; - $bag_attribs[$cert_iter*4+2] = ""; - $bag_attribs[$cert_iter*4+3] = ""; - } - - ($state == 1) and /localKeyID:\s*(.*)/ - and ($bag_attribs[$cert_iter*4+1] = $1); - - ($state == 1) and /subject=\s*(.*)/ - and ($bag_attribs[$cert_iter*4+2] = $1); - - ($state == 1) and /issuer=\s*(.*)/ - and ($bag_attribs[$cert_iter*4+3] = $1); - - if(/^-----/) { - if(/BEGIN/) { - print CERT_FILE; - $state = 2; - - if(/PRIVATE/) { - $bag_attribs[$cert_iter*4] = "K"; - next; - } - if(/CERTIFICATE/) { - $bag_attribs[$cert_iter*4] = "C"; - next; - } - die("What's this: $_"); - } - if(/END/) { - $state = 0; - print CERT_FILE; - close(CERT_FILE); - $cert_iter++; - $cert_tmp_file[$cert_iter] = newfile("cert_tmp.$cert_iter","temp"); - $cert_tmp_iter = $cert_tmp_file[$cert_iter]; - open(CERT_FILE, ">$cert_tmp_iter") - or die "Couldn't open $cert_tmp_iter: $!"; - next; - } - } - print CERT_FILE; - } - close(CERT_FILE); - - # I'll add support for unbagged cetificates, in case this is needed. - $numBags == $cert_iter or - die("Not all contents were bagged. can't continue."); - - return @bag_attribs; -} - - -# This requires the Bag Attributes to be set -sub handle_pem (@) { - - my @pem_contents; - my $iter=0; - my $root_cert; - my $key; - my $certificate; - my $intermediate; - my @mailbox; - my $mailbox; - - @pem_contents = &parse_pem(@_); - - # private key and certificate use the same 'localKeyID' - while($iter <= $#pem_contents / 4) { - if($pem_contents[$iter * 4] eq "K") { - $key = $iter; - last; - } - $iter++; - } - ($iter > $#pem_contents / 2) and die("Couldn't find private key!"); - - $pem_contents[($key * 4)+1] or die("Attribute 'localKeyID' wasn't set."); - - $iter = 0; - while($iter <= $#pem_contents / 4) { - $iter == $key and ($iter++) and next; - if($pem_contents[($iter * 4)+1] eq $pem_contents[($key * 4)+1]) { - $certificate = $iter; - last; - } - $iter++; - } - ($iter > $#pem_contents / 4) and die("Couldn't find matching certificate!"); - - my $tmp_key = newfile("tmp_key","temp"); - mycopy $cert_tmp_file[$key], $tmp_key; - my $tmp_certificate = newfile("tmp_certificate","temp"); - mycopy $cert_tmp_file[$certificate], $tmp_certificate; - - # root certificate is self signed - $iter = 0; - - while($iter <= $#pem_contents / 4) { - if ($iter == $key or $iter == $certificate) { - $iter++; - next; - } - - if($pem_contents[($iter * 4)+2] eq $pem_contents[($iter * 4)+3]) { - $root_cert = $iter; - last; - } - $iter++; - } - if ($iter > $#pem_contents / 4) { - print "Couldn't identify root certificate!\n"; - $root_cert = -1; - } - - # what's left are intermediate certificates. - $iter = 0; - - # needs to be set, so we can check it later - $intermediate = $root_cert; - my $tmp_issuer_cert = newfile("tmp_issuer_cert","temp"); - while($iter <= $#pem_contents / 4) { - if ($iter == $key or $iter == $certificate or $iter == $root_cert) { - $iter++; - next; - } - - open (IC, ">> $tmp_issuer_cert") or die "can't open $tmp_issuer_cert: $?"; - my $cert_tmp_iter = $cert_tmp_file[$iter]; - open (CERT, "< $cert_tmp_iter") or die "can't open $cert_tmp_iter: $?"; - print IC while (); - close IC; - close CERT; - - # although there may be many, just need to know if there was any - $intermediate = $iter; - - $iter++; - } - - # no intermediate certificates ? use root-cert instead (if that was found...) - if($intermediate == $root_cert) { - if ($root_cert == -1) { - die("No root and no intermediate certificates. Can't continue."); - } - mycopy $cert_tmp_file[$root_cert], $tmp_issuer_cert; - } - - my $label = query_label; - - my $format = -B $tmp_certificate ? 'DER' : 'PEM'; - my $cmd = "$opensslbin x509 -noout -hash -in $tmp_certificate -inform $format"; - my $cert_hash = `$cmd`; - $? and die "'$cmd' returned $?"; - - $format = -B $tmp_issuer_cert ? 'DER' : 'PEM'; - $cmd = "$opensslbin x509 -noout -hash -in $tmp_issuer_cert -inform $format"; - my $issuer_hash = `$cmd`; - $? and die "'$cmd' returned $?"; - - chomp($cert_hash); chomp($issuer_hash); - - # Note: $cert_hash will be changed to reflect the correct filename - # within add_cert() ONLY, so these _have_ to get called first.. - add_certificate($tmp_issuer_cert, \$issuer_hash, 0, $label); - @mailbox = &add_certificate("$tmp_certificate", \$cert_hash, 1, $label, $issuer_hash); - foreach $mailbox (@mailbox) { - chomp($mailbox); - add_key($tmp_key, $cert_hash, $mailbox, $label); - } -} - - - - - - -sub modify_entry ($$$;$ ) { - my $op = shift or die; - my $hashvalue = shift or die; - my $use_cert = shift; - my $crl; - my $label; - my $path; - my @fields; - - $op eq 'L' and ($label = shift or die); - $op eq 'V' and ($crl = shift); - - - if ($use_cert) { - $path = $certificates_path; - } - else { - $path = $private_keys_path; - } - - open(INDEX, "<$path/.index") or - die "Couldn't open $path/.index: $!"; - my $newindex = newfile("$path/.index.tmp"); - open(NEW_INDEX, ">$newindex") or - die "Couldn't create $newindex: $!"; - - while() { - @fields = split; - if($fields[1] eq $hashvalue or $hashvalue eq 'all') { - $op eq 'R' and next; - print NEW_INDEX "$fields[0] $fields[1]"; - if($op eq 'L') { - if($use_cert) { - print NEW_INDEX " $label $fields[3] $fields[4]"; - } - else { - print NEW_INDEX " $label"; - } - } - if ($op eq 'V') { - print "\n==> about to verify certificate of $fields[0]\n"; - my $flag = &do_verify($fields[1], $fields[3], $crl); - print NEW_INDEX " $fields[2] $fields[3] $flag"; - } - print NEW_INDEX "\n"; - next; - } - print NEW_INDEX; - } - close(INDEX); - close(NEW_INDEX); - - rename $newindex, "$path/.index" - or die "Couldn't rename $newindex to $path/.index: $!\n"; - - print "\n"; -} - - - - -sub remove_pair ($ ) { - my $keyid = shift or die; - - if (-e "$certificates_path/$keyid") { - unlink "$certificates_path/$keyid"; - modify_entry('R', $keyid, 1); - print "Removed certificate $keyid.\n"; - } - else { - die "No such certificate: $keyid"; - } - - if (-e "$private_keys_path/$keyid") { - unlink "$private_keys_path/$keyid"; - modify_entry('R', $keyid, 0); - print "Removed private key $keyid.\n"; - } -} - - - -sub change_label ($ ) { - my $keyid = shift or die; - - my $label = query_label; - - if (-e "$certificates_path/$keyid") { - modify_entry('L', $keyid, 1, $label); - print "Changed label for certificate $keyid.\n"; - } - else { - die "No such certificate: $keyid"; - } - - if (-e "$private_keys_path/$keyid") { - modify_entry('L', $keyid, 0, $label); - print "Changed label for private key $keyid.\n"; - } - -} - - - - -sub verify_cert ($$) { - my $keyid = shift or die; - my $crl = shift; - - -e "$certificates_path/$keyid" or $keyid eq 'all' - or die "No such certificate: $keyid"; - modify_entry('V', $keyid, 1, $crl); -} - - - - -sub do_verify($$$) { - - my $cert = shift or die; - my $issuerid = shift or die; - my $crl = shift; - - my $result = 'i'; - my $trust_q; - my $issuer_path; - my $cert_path = "$certificates_path/$cert"; - - if($issuerid eq '?') { - $issuer_path = "$certificates_path/$cert"; - } else { - $issuer_path = "$certificates_path/$issuerid"; - } - - my $cmd = "$opensslbin verify $root_certs_switch $root_certs_path -purpose smimesign -purpose smimeencrypt -untrusted $issuer_path $cert_path"; - my $output = `$cmd`; - $? and die "'$cmd' returned $?"; - chop $output; - print "\n$output\n"; - - ($output =~ /OK/) and ($result = 'v'); - - $result eq 'i' and return $result; - - my $format = -B $cert_path ? 'DER' : 'PEM'; - $cmd = "$opensslbin x509 -dates -serial -noout -in $cert_path -inform $format"; - (my $date1_in, my $date2_in, my $serial_in) = `$cmd`; - $? and die "'$cmd' returned $?"; - - if ( defined $date1_in and defined $date2_in ) { - my @tmp = split (/\=/, $date1_in); - my $tmp = $tmp[1]; - @tmp = split (/\=/, $date2_in); - my %months = ('Jan', '00', 'Feb', '01', 'Mar', '02', 'Apr', '03', - 'May', '04', 'Jun', '05', 'Jul', '06', 'Aug', '07', - 'Sep', '08', 'Oct', '09', 'Nov', '10', 'Dec', '11'); - - my @fields = - $tmp =~ /(\w+)\s*(\d+)\s*(\d+):(\d+):(\d+)\s*(\d+)\s*GMT/; - - $#fields != 5 and print "Expiration Date: Parse Error : $tmp\n\n" or - timegm($fields[4], $fields[3], $fields[2], $fields[1], - $months{$fields[0]}, $fields[5]) > time and $result = 'e'; - $result eq 'e' and print "Certificate is not yet valid.\n" and return $result; - - @fields = - $tmp[1] =~ /(\w+)\s*(\d+)\s*(\d+):(\d+):(\d+)\s*(\d+)\s*GMT/; - - $#fields != 5 and print "Expiration Date: Parse Error : $tmp[1]\n\n" or - timegm($fields[4], $fields[3], $fields[2], $fields[1], - $months{$fields[0]}, $fields[5]) < time and $result = 'e'; - $result eq 'e' and print "Certificate has expired.\n" and return $result; - - } - - if ( defined $crl ) { - my @serial = split (/\=/, $serial_in); - my $cmd = "$opensslbin crl -text -noout -in $crl | grep -A1 $serial[1]"; - (my $l1, my $l2) = `$cmd`; - $? and die "'$cmd' returned $?"; - - if ( defined $l2 ) { - my @revoke_date = split (/:\s/, $l2); - print "FAILURE: Certificate $cert has been revoked on $revoke_date[1]\n"; - $result = 'r'; - } - } - print "\n"; - - if ($result eq 'v') { - return 't'; - } - - return $result; -} - - - -sub add_root_cert ($) { - my $root_cert = shift or die; - - my $format = -B $root_cert ? 'DER' : 'PEM'; - - my $cmd = "$opensslbin x509 -noout -hash -in $root_cert -inform $format"; - my $root_hash = `$cmd`; - $? and die "'$cmd' returned $?"; - - if (-d $root_certs_path) { - -e "$root_certs_path/$root_hash" or - mycopy $root_cert, "$root_certs_path/$root_hash"; - } - else { - open(ROOT_CERTS, ">>$root_certs_path") or - die ("Couldn't open $root_certs_path for writing"); - - $cmd = "$opensslbin x509 -in $root_cert -inform $format -fingerprint -noout"; - $? and die "'$cmd' returned $?"; - chomp(my $md5fp = `$cmd`); - - $cmd = "$opensslbin x509 -in $root_cert -inform $format -text -noout"; - $? and die "'$cmd' returned $?"; - my @cert_text = `$cmd`; - - print "Enter a label, name or description for this certificate: "; - my $input = ; - - my $line = "=======================================\n"; - print ROOT_CERTS "\n$input$line$md5fp\nPEM-Data:\n"; - - $cmd = "$opensslbin x509 -in $root_cert -inform $format"; - my $cert = `$cmd`; - $? and die "'$cmd' returned $?"; - print ROOT_CERTS $cert; - print ROOT_CERTS @cert_text; - close (ROOT_CERTS); - } - -} - -sub newfile ($;$$) { - # returns a file name which does not exist for tmp file creation - my $filename = shift; - my $option = shift; - $option = "notemp" if (not defined($option)); - if (! $tmpdir and $option eq "temp") { - $tmpdir = mutt_Q 'tmpdir'; - $tmpdir = newfile("$tmpdir/smime"); - mkdir $tmpdir, 0700 || die "Can't create $tmpdir: $!\n"; - } - $filename = "$tmpdir/$filename" if ($option eq "temp"); - my $newfilename = $filename; - my $count = 0; - while (-e $newfilename) { - $newfilename = "$filename.$count"; - $count++; - } - unshift(@tempfiles,$newfilename); - return $newfilename; -} - - -END { - # remove all our temporary files in the end: - for (@tempfiles){ - if (-f) { - unlink; - } elsif (-d) { - rmdir; - } - } -} -- 2.20.1