newsGNU Mailutils - News: Version 3.2

 
 
Latest News
GNU mailutils version 3.17 posted by gray, Sat 06 Jan 2024 03:20:17 PM UTC
GNU mailutils version 3.16 posted by gray, Mon 01 May 2023 12:05:57 PM UTC
Version 3.15 posted by gray, Sun 17 Apr 2022 07:22:59 PM UTC
Version 3.14 posted by gray, Sun 02 Jan 2022 09:21:16 AM UTC
Version 3.13 posted by gray, Thu 05 Aug 2021 11:46:54 AM UTC

Version 3.2

Item posted by Sergey Poznyakoff <gray> on Sat 11 Mar 2017 02:51:54 PM UTC.

GNU mailutils version 3.2 is available for download.

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:

  --content-name=STRING
     Sets the attachment name (description).  Technically speaking, it
     is the "name" parameter in the Content-Type MIME header.
    
  --content-filename=NAME
     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 program.

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

Example:

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 \
       --encoding=binary\
       --content-type=text/plain --content-name="mail.c source file"\
       --content-filename=mail.c --attach-fd=6 \
       root@example.org


Click here 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 the Q RFC 2047 encoder.



 

Back to the top

Powered by Savane 3.13-758e.
Corresponding source code