
                   MIME64 Encoder/Decoder

WHAT MIME64 IS:  MIME64 is an encoding described in RFC1341 as MIME base64.
Its purpose is to encode binary files into ASCII so that they may be passed
through e-mail gates.  In this regard, MIME64 is similar to UUENCODE.
Although most binaries these days are transmitted using UUENCODE, I
have seen a few using MIME64, and I have had requests from friends that
I decode MIME64 files that have fallen into their hands.  As long as
some MIME64 continues to exist, a package such as this one is useful
to have.


WHAT THIS PACKAGE CONTAINS:  This package contains both executable
and ANSI-C source code for a MIME64 encoder/decoder (MIME.EXE and
MIME.C respecively).  It also contains this README file, and a MIME64
encoded file called MIME.64.  The latter will decode to MIME.ZIP if
you issue the DOS command line:

   MIME64 MIME.64 MIME.ZIP

If you unzip the zip file, you will get an essay by Mark Grand about
MIME.


HOW TO USE THIS PACKAGE:  To decode a MIME64 file you may type:

   MIME64 infile outfile

If you leave out the outfile specification, the output file will
overwrite the input file unless there is a filename specifier in
the header of the input file.  If there is a file name specifier
in infile, and no outfile is given, the output file will be
according to the specifier.  An example of a filename specifier
in the header of a base64 MIME file is:

Content-Type: text/plain; charset=US-ASCII; name=dork.zip

The filename specified here is dork.zip.

If the input file has a content transfer encoding of any but base64,
that input will be ignored.  For example, if it had a header line of:

Content-transfer-encoding: unusualformat

instead of:

Content-transfer-encoding: base64

there would be no output.  If no content-transfer-encoding line is
given in the file, MIME64 assumes the file to be base64 and decodes
it accordingly.

There can be several files encoded into an input file.  If subsequent
encoded files are found in the input file, they will be decoded according
to the name specified in a content-type line.

To encode a file into MIME64 format, type:

   MIME64 infile outfile -e

If you leave off the outfile specification, the output will
overwrite the input.  MIME64 does not permit you to encode more than
one file at a time.  If you wish to combine several base64 files,
you will have to do so with a text editor.


STATUS OF THIS PACKAGE:  This package is freeware.  As author, I
claim no copyright.  If you change the source code and intend to
propogate that change to other users, please include a comment to
that effect at the top that states:  The date of the change, the
nature of the change, and who made the change.  As a courtesy, I also
ask that you retain the comment that acknowledges me as the original
author.


SEND QUESTIONS ABOUT THIS PACKAGE TO:  hahn@lds.loral.com

Karl Hahn


