[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

mailutils-3.2 released [stable]

From: Sergey Poznyakoff
Subject: mailutils-3.2 released [stable]
Date: Sat, 11 Mar 2017 16:24:45 +0200


I am pleased to announce the release of GNU mailutils version 3.2.  This is
a stable release.  See the end of this message for a list of noteworthy

GNU mailutils is a protocol-independent framework for email processing.
It provides a set of libraries for doing almost any mail-related task on
any existing mailbox format, using a consistent format-independent API.

Several tools are built atop of these libraries and included in the package.
Among them are pop3 and imap4 servers, the traditional mailx mail reader,
the sieve mail filtering utility and a complete set of MH utilities that
can be used with GNU Emacs MH-E mode.

Visit for more information.

Here are the compressed sources:   (5.9MB)   (4.0MB)   (2.7MB)

Here are the GPG detached signatures[*]:

Use a mirror for higher download bandwidth:

Here are the MD5 and SHA1 checksums:

fff6edfcb018d4d0cfbae1cb7a56fc51  mailutils-3.2.tar.gz
f2fca3d46e254cb0f5b17ca160bb9c64  mailutils-3.2.tar.bz2
7822db219cb52183e931dff5df3889e5  mailutils-3.2.tar.xz
852f99e63c0827502096de7badf50bef7a8d102d  mailutils-3.2.tar.gz
b451dd69c259da00f26b1aeb291fe6012954c150  mailutils-3.2.tar.bz2
c5564173b89a1defbbd81cc1fcd1515cafc8c11a  mailutils-3.2.tar.xz

[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact.  First, be sure to download both the .sig file
and the corresponding tarball.  Then, run a command like this:

  gpg --verify mailutils-3.2.tar.gz.sig

If that command fails because you don't have the required public key,
then run this command to import it:

  gpg --keyserver --recv-keys 3602B07F55D0C732

and rerun the 'gpg --verify' command.

This release was bootstrapped with the following tools:
  Autoconf 2.69
  Automake 1.14
  Bison 2.7
  Makeinfo 5.2

New in this release:

* configuration syntax

Statements that allow for variable substitution also allow for command
expansion.  Commands are invoked the same way as in shell:

   $(command [args...])

The following commands are defined:

 - localpart X
     Treats X as an email address and returns its part preceding
     the @-sign.  If there is no @-sign, returns X unchanged.

 - domainpart X
     Treats X as an email address and returns the part following
     the @-sign.  If there is no @-sign, returns empty string.

 - shell CMD [ARGS...]
     Runs the shell command CMD with the given arguments.  Returns
     the standard output from the command.  The command is invoked
     using "/bin/sh -c" and can contain any valid shell construct.

* imap4d

Namespace configuration completely rewritten.  The "namespace" block
statement defines a particular namespaces.  Within it, one or more
"prefix" statements define prefixes available in that namespace, along
with their mappings to the server filesystem, hierarchy delimiters etc.

An example of namespace configuration:

     namespace personal {
        prefix "" {
           directory "$home/mailfolder";
        prefix "#MH:" {
           directory "$home/Mail";
           delimiter "/";
           mailbox-type "mh";

The following configuration statements have been withdrawn: homedir,
personal-namespace, other-namespace, shared-namespace,
other-mailbox-mode, shared-mailbox-mode.

* mail

** Modifying attachment name and filename

Two new options are provided for modifying attachment name (a.k.a
description), and file name:

     Sets the attachment name (description).  Technically speaking, it
     is the "name" parameter in the Content-Type MIME header.
     Sets the file name (the "filename" parameter in the
     Content-Description MIME header of the outgoing message).

Both options affect only the next `--attach' or `--attach-fd' option.

** Constructing attachments from the command line

The new option `--attach-fd=N' instructs mail to read attachment from
file descriptor N.  By default, the attachments created using this
option are unnamed, i.e. neither name parameter of the Content-Type
header, nor the filename parameter of the Content-Disposition header
are set.  Use the --content-name and --content-filename options to
change these.

The option `--attach-fd=0' causes attachment to be read from the
standard input.  The option `--attach=-' has the same effect.  For
obvious reasons, the interactive mode is suppressed in this case.

The `--attach-fd' option is useful when calling `mail' from another

The new option `--skip-empty-attachments' instructs `mail' to omit
attachments that have zero-size body.


Suppose that the 'mail' binary is opened at file descriptor 5 and
the mail.c file is opened at descriptor 6, the following command
line sends them as attachments:

  mail --encoding=base64 \
       --content-type=application/octet-stream \
       --content-name="the mail(1) binary" --content-filename="mail" \
       --attach-fd=5 \
       --content-type=text/plain --content-name="mail.c source file"\
       --content-filename=mail.c --attach-fd=6 \

See, for details.
* Bugfixes

** Fix memory leak in mu_stream_destroy.

** Fix handling of ambiguous command line options.

** Fix sieve logging in the maidag utility

** Fixes in 'Q' encoder.

Encodes question mark properly;
Limits the length of encoded words to 75 octets, as requested by RFC 2047.

Best regards,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]