Emil's Workshop

(Emil is copyright SUNET and is made available under the GNU General Public License.)

This page is written by Martin Wendel, ITS, Uppsala university: Martin.Wendel@its.uu.se.


General Info

Emil v2 is a filter for converting Internet Messages. It supports three basic formats: MIME, SUN Mailtool and plain old style RFC822. It can be used with sendmail, as a loopback mailer, or as a prefilter or backend program with a mail client program, or as a plain filter.

Emil v2 is a complete rewrite of Emil-v1. New features are support for RFC1522 headers and a more robust basic structure.

The purpose of Emil v2 is to facilitate the official migration to MIME for Internet Mail on SUNET (the Swedish University Network), on hosts or sites unable to support MIME. The migration was due on 1 Jan 1995. Information about this is made available by SUNET at http://www.nada.kth.se:/sunet-mime/index-en.html.

What is Emil?

Simply put, Emil is a message format converter for Internet Messages. This is a general description:

  • Emil is able to convert the format, headers and structure, between messages of type MIME, Sun Mailtool and old style RFC822.
  • Emil is able to convert the encoding of binary data between the types Base64, BinHex and Uuencode.
  • Emil is able to convert the encoding of text to and from the MIME encoding Quoted-Printable.
  • Emil is able to convert character set of text between the character sets made available by Keld J. Simonsens strncnv package. The strncnv package handles a large number of character sets, as specified by RFC1345.
  • Emil also includes two special conversions for text:
  • SE conversion, which is a one-way conversion of 8bit text to the swedish national variant of ISO-646.
  • 7bit conversion, which is a one-way conversion of 8bit text to characters in US-ASCII of the closest resemblance.
  • Emil is able to convert to and from RFC1522 format headers.
  • Conversion can be configured by a configuration file, emil.cf, using sender, recipient and recipient host as input parameters or by command line arguments.
  • Why Use Emil?


  • In the SUNET case, usage is obvious. A national network decides to migrate to MIME formatted mail. Emil is used by the hosts or sites unable to support MIME. The effect is outgoing MIME messages and incoming non-MIME messages.
  • Another example is non-MIME sites receiving occasional MIME messages. Emil can be configured to convert these incoming MIME messages to old style RFC822 and convert the Base64 encodings to uuencode or BinHex.
  • Emil can be used as a tool. A user unable to decode MIME messages can convert those messages using Emil.
  • et cetera.

  • Where can I find Emil?

    Emil is available by anonymous ftp from a large number of sites. The latest version can always be found at Emil's home site ftp://ftp.uu.se/pub/unix/networking/mail/emil/. Click here to download now.

    More info about Emil?

    I've assembled a small tutorial that will give you a guided tour on the design of Emil and how to use it. Click here to start now.

    The Authors

    Emil v2 is constructed by Martin Wendel and Torbjörn Wictorin both working at Uppsala university in Sweden.


    March 1996

    ITS Uppsala university
    Box 887
    751 08 Uppsala
    SWEDEN

    Martin Wendel E-Mail: