aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2014-05-19 08:29:37 +0300
committerSergey Poznyakoff <gray@gnu.org>2014-05-19 08:29:37 +0300
commit66e3cfbe02297912071adbb7cc59e5f4eb5781d1 (patch)
tree49fc5573dd703ce37c878bd103ee52bbfd24d88a
parentbc0eeb7706bf5ba3d89f7f5e3563827c3981cc70 (diff)
downloadanubis-66e3cfbe02297912071adbb7cc59e5f4eb5781d1.tar.gz
anubis-66e3cfbe02297912071adbb7cc59e5f4eb5781d1.tar.bz2
Improve docs.
* doc/anubis.texi: Update. * doc/mime.texi: Update.
-rw-r--r--doc/anubis.texi290
-rw-r--r--doc/mime.texi35
2 files changed, 163 insertions, 162 deletions
diff --git a/doc/anubis.texi b/doc/anubis.texi
index eec5cfc..17c937a 100644
--- a/doc/anubis.texi
+++ b/doc/anubis.texi
@@ -16,3 +16,3 @@
@copying
-Copyright @copyright{} 2001, 2002, 2003, 2004, 2007, 2008, 2009, 2011
+Copyright @copyright{} 2001, 2002, 2003, 2004, 2007, 2008, 2009, 2011, 2014
Wojciech Polak and Sergey Poznyakoff.
@@ -74,3 +74,3 @@ documents GNU Anubis Version @value{VERSION}.
* Invoking Anubis:: How to Invoke the GNU @command{anubis}.
-* Sample Beginning:: Here is a sample beginning.
+* Quick Start:: A Quick Start Example.
* TLS/SSL:: Using TLS/SSL Encryption.
@@ -198,5 +198,6 @@ Using Mutt with Anubis
-GNU Anubis is an @acronym{SMTP} message submission daemon. Its purpose is to receive
-the outgoing message, optionally perform some manipulations over its contents,
-and to forward altered message to the mail transport agent.
+GNU Anubis is an @acronym{SMTP} message submission daemon. Its purpose
+is to receive outgoing messages, optionally perform some manipulations
+over their content, and to forward altered messages to the mail
+transport agent.
@@ -231,3 +232,3 @@ key, because his @acronym{MUA} does not support this operation.
In such cases, installing GNU Anubis between the @acronym{MUA} and @acronym{MTA}
-allows the user to perform any additional processing on the
+allows the user to perform additional processing on the
sent message. The figure below illustrates this concept:
@@ -258,4 +259,4 @@ SOCKS proxies, etc.
-When the set of built-in operations is not enough, the user can
-define his own operations using Guile, a @dfn{GNU's Ubiquitous
+When the set of built-in operations is not enough, administrators can
+define new ones using Guile, a @dfn{GNU's Ubiquitous
Intelligent Language for Extensions}.
@@ -284,3 +285,3 @@ party, its user name and configuration settings.
@item Protocol
-Any standard for information exchange. A protocol
+A standard for information exchange. Protocol
defines specific wording and control flow for communications between
@@ -290,3 +291,5 @@ two or more programs, devices or systems.
Simple Mail Transport Protocol is a common mechanism for exchanging
-mail across a network. This protocol is described in the @acronym{RFC} 821 document.
+mail across a network. This was described initially in @acronym{RFC}
+821, and subsequently extended by more documents, the most recent one
+being @acronym{RFC} 5321.
@@ -326,3 +329,3 @@ Privacy}).
When GNU Anubis accepts incoming connection, it first has to identify
-the remote party, i.e. to determine whether it has enough rights to use
+the remote party, i.e. to determine whether it is authorised to use
Anubis resources and, if so, what configuration settings to use
@@ -345,4 +348,3 @@ up to 3.6.2.
This mode uses @acronym{SMTP} AUTH mechanism to authenticate incoming
-connections. @xref{Pixie-Dixie}, this is the first draft
-description of this mode.
+connections. @xref{Pixie-Dixie}, original description of this mode.
@end table
@@ -357,4 +359,4 @@ Deficiencies:
@enumerate
-@item User must have @command{identd} installed on his machine.
-@item Each user must have a system account on the machine running
+@item The user must have @command{identd} installed on his machine.
+@item The user must have a system account on the machine running
GNU Anubis (though the system administrator may relax
@@ -376,3 +378,3 @@ Deficiencies:
@item A user database is needed
-@item User's @acronym{MUA} must be able to perform ESMTP AUTH.@footnote{It is
+@item @acronym{MUA}s of the users must be able to perform ESMTP AUTH.@footnote{It is
not a serious restriction, however. Users may install Anubis on their
@@ -400,3 +402,3 @@ Anubis runs.
-@dfn{User Database} is a place where GNU Anubis keeps @dfn{user
+A @dfn{User Database} is a storage system where GNU Anubis keeps @dfn{user
credentials}, i.e. data necessary for authenticating and authorizing
@@ -406,3 +408,3 @@ layer.
-User database consists of @dfn{records}. Each record keeps
+The user database consists of @dfn{records}. Each record keeps
information about a particular @dfn{user}. A record consists
@@ -470,3 +472,3 @@ where:
@item proto
-Specifies the database @dfn{protocol}. Protocol describes how
+Specifies the database @dfn{protocol}. The protocol describes how
the database is to be accessed. In a way, it may be regarded as
@@ -486,6 +488,6 @@ These protocols are described in detail below.
@item user
-User name necessary to access the database.
+The name of the user authorized to access the database.
@item password
-User password necessary to access the database.
+Password for the above user.
@@ -526,4 +528,3 @@ If @samp{:} character occurs as a part of a field, it must be escaped
by a single backslash character (@samp{\\}, @acronym{ASCII} 92).
-The record must contain at least two fields. Fields are placed in
-this order:
+Each record must contain at least two and no more than four fields:
@@ -533,3 +534,3 @@ this order:
@item Account name.
-@item Path to user configuration file.
+@item Pathname of the user configuration file.
@end enumerate
@@ -558,4 +559,4 @@ a @dfn{key} and @dfn{content}. Its @code{key} holds the value of
@acronym{SMTP} password, system account name and path to user
-configuration file, separated by commas. As usual, the two last fields
-are optional.
+configuration file, separated by commas. As it was with @samp{text}
+databases, the two last fields are optional.
@@ -590,3 +591,3 @@ may be specified in @acronym{URL} as discussed below.
@smallexample
-@var{proto}://[[@var{user}[:@var{password}]@@@var{host}/@var{dbname}[@var{params}]
+@var{proto}://[[@var{user}[:@var{password}]@@]@var{host}/]@var{dbname}[@var{params}]
@end smallexample
@@ -598,5 +599,5 @@ databases.
Optional @var{user} and @var{password} specify authentication
-credentials necessary to access the database.
+credentials for accessing the database.
-@var{Host} sets domain name or @acronym{IP} address of the machine running
+@var{Host} sets the domain name or @acronym{IP} address of the machine running
the database. It may be omitted if the database resides on
@@ -606,3 +607,3 @@ The database name is specified by the @var{dbname} element.
-Any further details needed for connecting to the database are
+Further details needed for connecting to the database are
given by @acronym{URL} parameters. All of them have reasonable
@@ -666,3 +667,3 @@ is organized in groups, each group beginning with the group name in
square brackets on a separate line. Within a group, each non-empty
-line consists of a MySQL option name, optionally followed by an equal
+line consists of a MySQL option name, optionally followed by an equals
sign and the value. By default, the values from the @samp{anubis}
@@ -700,4 +701,4 @@ record in the database, provided that he already has one.
-All administrative tasks are done using @command{anubisadm} command ---
-a multipurpose tool for Anubis administrator.
+All administrative tasks are done via the @command{anubisadm} command ---
+a multipurpose tool for Anubis administrators.
@@ -774,3 +775,3 @@ from one format (protocol) to another. For example, suppose you
have been running @acronym{GDBM} database (@code{text:/etc/anubis.db})
-for some time, but now it has grown considerably and you decided to
+for some time, but now it has grown so big that you decided to
switch to PostgreSQL database to improve performance. To do so,
@@ -878,3 +879,3 @@ Specify the user's configuration file.
-For example, the following command sets new configuration file name
+For example, the following command changes the name of configuration file
for the user @samp{smith}:
@@ -955,3 +956,3 @@ commands.
Users maintain their database records via the @command{anubisusr}
-command. We recommend to invoke
+command. We suggest invoking
@command{anubisusr} from your @file{~/.profile}, which will make
@@ -1054,3 +1055,3 @@ line introduces a single statement. A statement consists of
@dfn{words}, each word being defined as a contiguous sequence of
-non-whitespace symbols. A word may be composed of alphanumeric
+non-whitespace symbols. The word may be composed of alphanumeric
characters and any of the following punctuation symbols:
@@ -1106,3 +1107,3 @@ made for back references \1 - \9.}
-The familiar shell @dfn{here document} syntax may be used to produce
+The familiar shell @dfn{here document} syntax can be used to produce
a word containing several lines of text. The syntax is:
@@ -1149,8 +1150,8 @@ a very long statement\
-A @samp{#} in a line starts a @dfn{comment}. It and the rest of
-the line are ignored. Comments may appear on any of the lines in
-the configuration file, except on a command and within a
-``here-document'' construction.
-A line containing just a comment (with optional whitespace before it) is
-effectively blank, and is ignored. For example:
+A @samp{#} in a line starts a @dfn{comment}. The @samp{#} character
+and the rest of the line following it are ignored. Comments may appear
+anywhere in the configuration file, except within a command line or
+a ``here-document'' construct. A line containing just a
+comment (with optional whitespace before it) is effectively blank, and
+is ignored. For example:
@@ -1191,3 +1192,3 @@ Sections cannot be nested.
-There are five predefined sections, whose names are uppercase.
+There are five predefined sections, whose names are in uppercase.
The user may define his own sections, which may then be referred
@@ -1209,3 +1210,3 @@ configuration file.
@item GUILE
-Configures Guile interpreter. This section is allowed in both
+Configures the Guile interpreter. This section is allowed in both
configuration files.
@@ -1230,3 +1231,3 @@ The @code{AUTH} session controls various aspects of authentication mode.
Configures the greeting message issued by GNU Anubis upon accepting
-the connection.
+SMTP connection.
@end deffn
@@ -1254,3 +1255,3 @@ authentication method. Default is @samp{anubis}.
Sets the SASL hostname. By default, the server determines it
-automatically. If, however, it makes a wrong guess, you can fix it
+automatically. If it happens to make a wrong guess, you can fix it
using this directive.
@@ -1268,7 +1269,7 @@ Sets the SASL realm. By default, the local domain is used as SASL realm
The @samp{CONTROL} section defines basic GNU Anubis behavior.
-If used in the system configuration file, it applies to all users on
-the machine. Each user can have a @samp{CONTROL} section in his
+If used in the system-wide configuration file, it applies to all users in
+the system. Each user can have a @samp{CONTROL} section in his
configuration file, to customize his personal settings. Of course, not
all options can be set or changed by the user. Some options can only be
-set in the system configuration file, and some only in user
+set in the system configuration file, and some only in the user
configuration file. By default, options specified in the user
@@ -1416,4 +1417,4 @@ This command is allowed only in the system configuration file.
@deffn Option logfile @var{file-name}
-This command sets the name of the additional log file. GNU Anubis logs
-there the messages about user's @acronym{SMTP} session, as defined by
+This command sets the name of additional log file. GNU Anubis logs
+there messages about user's @acronym{SMTP} session, as defined by
the @samp{loglevel} statement (see below). For example:
@@ -1429,3 +1430,3 @@ the user's home directory.
@deffn Option loglevel @var{level}
-This option defines the verbosity level for the additional log
+This option defines verbosity level for the additional log
file. It may be used only in user configuration file. Allowed
@@ -1451,3 +1452,3 @@ When this option is used in the system-wide configuration file,
only boolean argument is allowed. Using @samp{tracefile yes} enables
-logging of the actions and tests to the default syslog channel.
+logging of actions and tests to the default syslog channel.
Using @samp{tracefile no} disables it.
@@ -1520,7 +1521,7 @@ whitespace.
Anubis selects the authentication method using the following algorithm:
-@acronym{MTA} presents the list of authentication methods it supports.
+@acronym{MTA} presents a list of authentication methods it supports.
For each element in @var{mech-list}, Anubis tests whether it is
available in the list presented by @acronym{MTA}. If found, this method is
-selected. For example, suppose that the @acronym{MTA} supports the following
-mechanisms:
+selected. For example, suppose that the @acronym{MTA} reports the following
+supported mechanisms:
@@ -1538,3 +1539,3 @@ esmtp-allowed-mech DIGEST-MD5 CRAM-MD5 LOGIN
@noindent
-Then, Anubis will select CRAM-MD5.
+Then, Anubis will select @samp{CRAM-MD5}.
@@ -1543,3 +1544,3 @@ Then, Anubis will select CRAM-MD5.
@deffn Option esmtp-require-encryption @var{mech-list}
-Declares the list of mechanisms that may be used only over
+Declares the list of mechanisms that can be used only over
a TLS encrypted channel. By default Anubis uses
@@ -1560,5 +1561,6 @@ possible, normally while handling the client @samp{EHLO} command.
When this statement is set to @samp{yes}, authentication is delayed
-until the client issued the @samp{MAIL} command. This allows you
-to select authentication credentials depending on the sender email.
-For a detailed description of this feature, see @ref{Modifying SMTP Commands}.
+until the client issued the @samp{MAIL} command. This will allow
+@command{anubis} to select authentication credentials depending on the
+sender email. For a detailed description of this feature, see
+@ref{Modifying SMTP Commands}.
@end deffn
@@ -1641,4 +1643,4 @@ this option does not require setting the @samp{ssl-key} and
@deffn Option ssl-priorities @var{list}
-Sets cipher suite preferences to use. The @var{list} argument may
-contain a single initial keyword or be a colon-separated list of TLS
+Sets cipher suite preferences to use. The @var{list} argument is
+either a single initial keyword or a colon-separated list of TLS
keywords. The description of TLS keywords is well beyond the scope of
@@ -1647,3 +1649,3 @@ Strings,,gnutls,GnuTLS Manual}, for a detailed discussion.
-Default priority list is @samp{NORMAL}.
+The default priority list is @samp{NORMAL}.
@end deffn
@@ -1760,3 +1762,3 @@ For example:
BEGIN TRANSLATION
-translate jack@@somewhere.net into john
+translate jack@@example.net into john
END
@@ -1766,3 +1768,3 @@ END
@noindent
-This rule will allows the remote user @samp{jack} at @samp{somewhere.net}
+This rule will allows the remote user @samp{jack} at @samp{example.net}
to use the configuration file of the local user @samp{john}.
@@ -1771,6 +1773,6 @@ In the contrast, this statement:
@smallexample
-translate somewhere.net into john
+translate example.net into john
@end smallexample
@noindent
-means that @emph{all} users at @samp{somewhere.net} are allowed to use
+means that @emph{all} users at @samp{example.net} are allowed to use
the local john's configuration file.
@@ -1788,4 +1790,4 @@ and output ports.
-By default both ports are redirected to syslog. Standard error port
-uses the @samp{err} priority, standard output port writes to the
+By default both ports are redirected to syslog. The standard error port
+uses the @samp{err} priority, and the standard output port writes to the
@samp{warning} priority.
@@ -1793,4 +1795,4 @@ uses the @samp{err} priority, standard output port writes to the
This option has no effect if GNU Anubis is started
-with either of @option{--foreground} or @option{--stdio} command line
-options.
+with either @option{--foreground} or @option{--stdio} command line
+option.
@end deffn
@@ -1798,3 +1800,3 @@ options.
@deffn Command guile-debug @var{yes-or-no}
-When set to @samp{yes} enables Guile stack traces and debugging output.
+When set to @samp{yes}, enables Guile stack traces and debugging output.
@end deffn
@@ -1818,3 +1820,3 @@ as a program that is executed for every outgoing message.
-Throughout this chapter, when showing syntax definitions their
+Throughout this chapter, when showing syntax definitions, their
optional parts will be enclosed in a pair of square
@@ -1874,3 +1876,3 @@ is optional.
-A @dfn{conditional statement} defines the control flow within the section.
+A @dfn{conditional statement} defines control flow within the section.
It allows to execute arbitrary actions depending on whether a certain
@@ -1894,3 +1896,3 @@ A simple @var{condition} has the following syntax:
@noindent
-(where the square brackets denote optional parts). Its parts are:
+(square brackets denoting optional parts). Its parts are:
@@ -1957,5 +1959,5 @@ executed.
-Note, that both @var{action-list-1} and @var{action-list-2} may in
+Note, that both @var{action-list-1} and @var{action-list-2} can in
turn contain conditionals, so that the conditional
-statements may be nested. This allows to create very sophisticated
+statements may be nested. This allows for creating very sophisticated
rule sets. As an example, consider the following statement:
@@ -2046,4 +2048,4 @@ fi
-This fragment will first create the string containing all @code{RCPT
-TO} addresses, separated by a comma, and then match it against
+This fragment will first create a string containing all @code{RCPT
+TO} addresses, separated by commas, and then match it against
the regular expression on the right hand side. Since this expression
@@ -2075,3 +2077,3 @@ of @code{trigger}.
-The triggers act as follows: First, the value of the @samp{Subject} header is
+The trigger acts as follows: First, the value of the @samp{Subject} header is
matched against the pattern @samp{@@@@}@var{pattern}. If it matches,
@@ -2110,4 +2112,5 @@ Now, if you send an email with the subject ending on
John!@@@@gpg-encrypt-john}), it will be encrypted with John's public
-key. The trigger will remove the @samp{@@@@}, so John will only
-receive a message with @samp{hello John!} as a subject.
+key. The trigger will remove the @samp{@@@@} and the characters
+following it, so John will only receive a message with @samp{hello
+John!} as a subject.
@@ -2131,4 +2134,3 @@ a subject @w{@samp{hello John!@@@@gpg-encrypt:john's_gpg_key}}.
This way, you decide at a run time which public key should be used,
-without creating separate rules for each user; thanks to back-references,
-those 3---4 lines are enough.
+without creating separate rules for each user.
@@ -2138,3 +2140,3 @@ those 3---4 lines are enough.
-The following table lists the three boolean operators that can be used
+The following table lists the boolean operators that can be used
in Anubis conditional expressions in the order of increasing binding
@@ -2198,4 +2200,4 @@ boolean operators.
GNU Anubis supports two types of regular expressions: POSIX (both
-basic and extended), and Perl-style regular expressions. Among this,
-the former are always supported, whereas the support for the latter
+basic and extended), and Perl-style regular expressions. The former
+are always supported, whereas the support for the latter
depends on the configuration settings at compile time. By default
@@ -2328,3 +2330,3 @@ can use for instance: @samp{add} or @samp{ADD} or @samp{AdD}, and so on.
The @code{stop} command stops processing of the
-section immediately. It may be used in the main @code{RULE} section as well as
+section immediately. It can be used in the main @code{RULE} section as well as
in any user-defined section. For example:
@@ -2438,3 +2440,3 @@ For each header whose name matches @var{key}, replaces its name
with @var{new-key}. If @var{key} is a regular expressions, @var{new-key}
-may contain back references. For example, the following statement
+can contain back references. For example, the following statement
selects all headers whose names start with @samp{X-} and changes their
@@ -2457,5 +2459,2 @@ modify [Subject] "New subject"
-@noindent
-This statement sets the new value to the @code{Subject} header.
-
Every occurrence of unescaped @samp{&} in the new value will be replaced
@@ -2519,6 +2518,6 @@ modify body :extended ["the old \([[:alnum:]]+\)"] "the new \1"
-GNU Anubis is able to modify arguments of the @acronym{SMTP} commands.
+GNU Anubis is able to modify arguments of @acronym{SMTP} commands.
To instruct it to do so, define a section named @samp{SMTP}.
Anubis will call this section each time
-it receives an @acronym{SMTP} command. This section may contain
+it receives an @acronym{SMTP} command. This section can contain
any statements allowed for @samp{RULE} section, plus the
@@ -2609,3 +2608,3 @@ END
It is because by the time @samp{MAIL FROM} is received, the
-@samp{EHLO} command has already been processed and send to
+@samp{EHLO} command has already been processed and sent to
the server.
@@ -2665,5 +2664,5 @@ body-append @var{file-name}
Specifies your private key's pass phrase for signing messages
-using the GNU Privacy Guard. Of course, to protect your passwords in
-the configuration file use the 0600 (u=rw,g=,o=) permissions,
-otherwise GNU Anubis won't accept them.
+using the GNU Privacy Guard. To protect your passwords from
+being compromised, use the 0600 (u=rw,g=,o=) permissions for the
+configuration file, otherwise GNU Anubis won't accept them.
@@ -2753,3 +2752,3 @@ from it replaces the original body of the message.
The amount of data fed to the external program depends on the
-message. For plain messages, entire body is passed. For
+message. For plain messages, the entire body is passed. For
multi-part messages, only the first part is passed by default.
@@ -2889,4 +2888,4 @@ Let's consider a more constructive example. The following function
checks if the @code{Subject} header starts with string @samp{ODP:}
-(a Polish equivalent to @samp{Re:}), and if it does, the function
-replaces it with @samp{Re:}. It always adds to the message the header
+(a Polish equivalent to @samp{Re:}), and if it does,
+replaces it with @samp{Re:}. It also adds the header
@@ -2897,4 +2896,4 @@ X-Processed-By: GNU Anubis
@noindent
-Additionally, if the optional argument is given, it is appended to
-the body of the message.
+Additionally, an optional argument can be used. If it is given, it will
+be appended to the body of the message.
@@ -2970,3 +2969,3 @@ reading a disturbing message.
GNU Anubis supports @sc{rot}-13 via a loadable Guile function. To enable
-this support, you will have to add the following to your @code{GUILE}
+this support, add the following to your @code{GUILE}
section:
@@ -3095,3 +3094,3 @@ GNU Anubis.
-There may be some cases when you need to use an external filter that
+There may be cases when you need to use an external filter that
processes entire message (including headers). You cannot use
@@ -3117,5 +3116,5 @@ Any additional arguments it may require.
Suppose you have a program @code{/usr/libexec/myfilter}, that accepts
-entire message as its output and produces on standard output a
-modified version of this message. The program takes as its argument
-he name of a directory for temporary files. The following example
+entire message as its input and produces on standard output a
+modified version of this message. The program takes the name of a
+directory for temporary files as its argument. The following example
illustrates how to invoke this program:
@@ -3231,3 +3230,3 @@ Do not check a user config file permissions.
Specify a remote @acronym{SMTP} host name or @acronym{IP} address, which GNU Anubis will
-connect and forward mail to (after a processing).
+connect and forward mail to.
The default @var{port} number is 25.
@@ -3277,3 +3276,3 @@ $ anubis -f --local-mta /usr/sbin/sendmail -- sendmail -bs
@noindent
-Similar to above, but create a tunnel between localhost:24
+Same as above, but create a tunnel between localhost:24
and a local program (local @acronym{MTA}). In this example local program
@@ -3307,4 +3306,4 @@ on standard input and output.
-@node Sample Beginning
-@chapter Sample Beginning
+@node Quick Start
+@chapter Quick Start
@@ -3316,3 +3315,3 @@ Agent) to talk to GNU Anubis directly on port number 24. All
@acronym{MTA}, so you must change their settings and specify GNU
-Anubis' port number as their target. This makes GNU Anubis to work as
+Anubis' port number as their target. This makes GNU Anubis act as
an outgoing mail processor between your @acronym{MUA} and the
@@ -3339,4 +3338,4 @@ Please note that the @samp{-bs} command line option is a common way
to run @acronym{MTA}s on standard input and output, but it is not a rule.
-Read your local @acronym{MTA}'s documentation, how to get it working
-on standard input and output.
+Refer to your @acronym{MTA}'s documentation, for instructions on how
+to get it working on standard input and output.
@@ -3352,7 +3351,6 @@ bind localhost:25
This can make a conflict between GNU Anubis and your local
-@acronym{MTA}, which usually listens on port number 25. To solve this
-problem, you may disable the @acronym{MTA} and specify the
+@acronym{MTA}, which usually listens on port number 25. To solve this,
+disable the @acronym{MTA} and specify the
@samp{local-mta} keyword, or run @acronym{MTA} on port number
-different than GNU Anubis' port number (e.g. 1111). Please read your
-local @acronym{MTA}'s documentation about this topic. For example:
+different than GNU Anubis' port number (e.g. 1111). For example:
@@ -3376,9 +3374,10 @@ you cannot disable your @acronym{MTA} or change its port number!
-According to the @acronym{RFC} 2246 document, the TLS (Transport Layer Security)
-protocol provides communications privacy over the Internet. The protocol
-allows client/server applications to communicate in a way that is designed
-to prevent eavesdropping, tampering, or message forgery. The primary goal
-of the TLS Protocol is to provide privacy and data integrity between two
-communicating applications. The TLS protocol itself is based on the SSL 3.0
-(Secure Socket Layer) protocol specification.
+The @acronym{TLS} (Transport Layer Security) protocol provides
+communications privacy over the Internet. It is described in
+@acronym{RFC} 2246 document. The protocol allows client/server
+applications to communicate in a way that prevents
+eavesdropping, tampering, or message forgery. The primary goal of the
+protocol is to provide privacy and data integrity between two
+communicating applications. The @acronym{TLS} protocol itself is based on the
+@acronym{SSL} 3.0 (Secure Socket Layer) protocol specification.
@@ -3386,3 +3385,4 @@ GNU Anubis supports the @acronym{TLS/SSL} (via the GnuTLS, a Transport
Layer Security Library available from @w{@uref{http://www.gnutls.org/}}),
-but your @acronym{MTA} must provide the STARTTLS command first. This can be checked by:
+but your @acronym{MTA} must provide the @samp{STARTTLS} command
+first. This can be checked by:
@@ -3396,2 +3396,3 @@ $ telnet @var{your-smtp-host} 25
@noindent
+@cindex oneway TLS encryption
The server will response with all its available commands.
@@ -3402,3 +3403,4 @@ you should use the @samp{oneway-ssl} keyword in your configuration
file. Before using the @acronym{TLS/SSL} encryption, generate
-a proper private key and a certificate. You can do it simply with:
+a proper private key and a certificate. GNU @command{anubis} provides
+a scrypt @file{keygen.sh} which can be used for this, e.g.:
@@ -3413,3 +3415,3 @@ $ ./build/keygen.sh
This will create the @file{anubis.pem} file.
-For example, copy this file to @w{@file{/usr/share/ssl/certs/}}.
+Copy it to the directory of your choice, e.g. @w{@file{/usr/share/ssl/certs/}}.
Next, edit your configuration file by adding:
@@ -3457,6 +3459,5 @@ using it with @code{openssl} to sign outgoing messages.
To use @code{openssl} for @acronym{S/MIME} signing, invoke it using
-@code{openssl-filter} function defined in @file{entire-msg.scm}. You
-will have to supply at least @code{-sign} and @code{-signer} arguments
-to the program. Notice, that you should not specify any input or
-output files.
+@code{openssl-filter} function defined in @file{entire-msg.scm}. Give
+it at least @code{-sign} and @code{-signer} arguments. Notice, that
+you should not specify any input or output files.
@@ -3494,5 +3495,5 @@ deliver the modified message. The local mailer must be given using
-Let's summarize the special features of mail delivery mode
+Let's summarize the special features of mail delivery mode:
@FIXME{This is basically a reminder for me to provide a detailed
-description of MDA mode}:
+description of MDA mode}
@@ -3509,3 +3510,3 @@ Settings}) are ignored. @FIXME{Is it really so? And, again: why?}
-The local mailer invocation line may contain meta-variables
+The local mailer invocation line can contain meta-variables
@code{%sender} and @code{%recipient}, which will be replaced by
@@ -3515,3 +3516,3 @@ the mailer.
@item
-Special option @option{--from} may be used in Anubis command line.
+A special option @option{--from} may be used in Anubis command line.
This option sets sender email address (see @code{%sender} meta
@@ -3552,4 +3553,3 @@ define(`LOCAL_MAILER_ARGS',
If you prefer to directly edit @file{sendmail.cf}, use @code{M}
-macro to declare Anubis as a local mailer. Following example
-illustrates this:
+macro to declare Anubis as a local mailer. For example:
@@ -3686,3 +3686,3 @@ where @var{maidag} stands for the full file name of
running @command{anubis} and the port it listens on. Notice, that
-default port value for @samp{smtp} is 25, which means
+the default port value for @samp{smtp} is 25, which means
that in most cases you will have to specify it explicitly.
@@ -3690,3 +3690,3 @@ that in most cases you will have to specify it explicitly.
For example, suppose you run @command{anubis} on machine
-@samp{anubis.domain.org} and that it listens on port 24.
+@samp{anubis.example.org} and that it listens on port 24.
Let's also assume you have installed mailutils in the default
@@ -3698,3 +3698,3 @@ will contain:
set sendmail="/usr/local/sbin/maidag \
- --url smtp://anubis.domain.org:24"
+ --url smtp://anubis.example.org:24"
@end smallexample
diff --git a/doc/mime.texi b/doc/mime.texi
index 957e762..00d0b1f 100644
--- a/doc/mime.texi
+++ b/doc/mime.texi
@@ -27,3 +27,3 @@ parts encoded by quoted-printable or, worse yet, base-64 encoding
cannot be processed this way. The only way for the user to process
-non plain-text multi-part messages is by using some extension procedures
+non-plaintext multi-part messages is by using some extension procedures
(usually external scripts).
@@ -75,3 +75,3 @@ At least messages having @code{multipart/*} and @code{message/rfc822}
contents must be handled. These entries must be configurable, thus
-giving final user a possibility to disable some of any of
+giving final user a possibility to disable some of
them. Preferably there should exist a way of specifying new recursive
@@ -89,3 +89,3 @@ part being processed. It is important also that it allows for
a @dfn{default entry}, i.e. an entry that will be used for processing
-a part whose type is not explicitely mentioned in the table. An
+a part whose type is not explicitely mentioned in the table. The
absence of such default entry should be taken as indication that the
@@ -93,3 +93,3 @@ part must be transferred verbatim.
-Thus, each entry of the dispatcher table must contain at least
+Thus, each entry of the dispatcher table must contain at least the
following members.
@@ -101,3 +101,3 @@ For the sake of clarity this memo uses shell-style regular expressions
(see @code{glob(7)} or @code{fnmatch(3)}). However, Anubis
-implementation may use any other regular expression style it deems
+implementation can use any other regular expression style it deems
appropriate.
@@ -114,3 +114,3 @@ a user-defined rule section.
-Dispatcher table may contain several entries matching a given
+The dispatcher table can contain several entries matching a given
MIME type. In this case, the @code{entry point} of each of them
@@ -126,5 +126,6 @@ must be invoked in turn. For example, consider this dispatcher table:
When processing a part of type @code{text/plain} using this dispatcher
-table, first section named @code{plaintext} is called, then its output is
-gathered and used as input while calling section named @code{anytext}.
-Such approach allows for building flexible structured user programs.
+table, first the section named @code{plaintext} is called, then
+its output is gathered and used as input for the section named
+@code{anytext}. Such approach allows for building flexible structured
+user programs.
@@ -136,3 +137,3 @@ entries may be used in both system-wide and user-specific
configuration files, the order of their priority being
-determined as usual by @code{rule-priority} statement (@pxref{Security
+determined as usual by the @code{rule-priority} statement (@pxref{Security
Settings}).
@@ -166,3 +167,3 @@ one is constructed:
@smallexample
-(@var{section-id} . @var{re})
+(@var{re} . @var{section-id})
@end smallexample
@@ -226,6 +227,6 @@ multi-part messages to @var{number}.
This memo does not determine how exactly is Anubis supposed to discern
-between text and binary messages. The siplest way is possibly using
+between text and binary messages. The simplest way is by using the
@code{Content-Type} header: if it contains @code{charset=} then it
describes a text part. Otherwise it describes a binary part. Probably
-some more sophisticated methods should be provided.
+some more sophisticated methods should be implemented.
@@ -264,6 +265,6 @@ END
-This sample configuration shows the idea of using @code{external-body-processor}
-statement for binary part processing. Following version of
-@code{resize-message} script uses @command{convert} program for
-reducing image size to 120x120 pixels:
+This example configuration shows the idea of using
+@code{external-body-processor} statement for binary part
+processing. The following version of @code{resize-message} script uses
+@command{convert} program for reducing image size to 120x120 pixels:

Return to:

Send suggestions and report system problems to the System administrator.