GMime, version 2.6.20 by Jeffrey Stedfast <fejj@gnome.org> WHAT IS GMIME ------------- GMime is a C/C++ library for parsing and creating messages using the Multipurpose Internet Mail Extension (MIME) as defined by the following RFCs: * 0822: Standard for the Format of Arpa Internet Text Messages * 1341: MIME (Multipurpose Internet Mail Extensions): Mechanisms for Specifying and Describing the Format of Internet Message Bodies * 1342: Representation of Non-ASCII Text in Internet Message Headers * 1521: MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies (Obsoletes rfc1341) * 1522: MIME (Multipurpose Internet Mail Extensions) Part Two: Message Header Extensions for Non-ASCII Text (Obsoletes rfc1342) * 1544: The Content-MD5 Header Field * 1847: Security Multiparts for MIME: Multipart/Signed and Multipart/Encrypted * 1864: The Content-MD5 Header Field (Obsoletes rfc1544) * 2015: MIME Security with Pretty Good Privacy (PGP) * 2045: Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies * 2046: Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types * 2047: Multipurpose Internet Mail Extensions (MIME) Part Three: Message Header Extensions for Non-ASCII Text * 2048: Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures * 2049: Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples * 2183: Communicating Presentation Information in Internet Messages: The Content-Disposition Header Field * 2184: MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations * 2231: MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations (Obsoletes rfc2184) * 2311: S/MIME Version 2 Message Specification * 2312: S/MIME Version 2 Certificate Handling * 2315: PKCS #7: Cryptographic Message Syntax * 2630: Cryptographic Message Syntax * 2632: S/MIME Version 3 Certificate Handling (Obsoletes rfc2311) * 2633: S/MIME Version 3 Message Specification (Obsoletes rfc2312) * 2634: Enhanced Security Services for S/MIME * 2822: Internet Message Format (Obsoletes rfc822) * 3156: MIME Security with OpenPGP (Updates rfc2015) * 3850: S/MIME Version 3.1 Certificate Handling (Obsoletes rfc2632) * 3851: S/MIME Version 3.1 Message Specification (Obsoletes rfc2633) * 5322: Internet Message Format (Obsoletes rfc2822) * 5750: S/MIME Version 3.2 Certificate Handling (Obsoletes rfc3850) * 5751: S/MIME Version 3.2 Message Specification (Obsoletes rfc3851) Other RFCs of interest: * 1872: The MIME Multipart/Related Content-type * 1927: Suggested Additional MIME Types for Associating Documents * 2110: MIME E-mail Encapsulation of Aggregate Documents, such as HTML (MHTML) * 2111: Content-ID and Message-ID Uniform Resource Locators * 2387: The Multipart/Related Content-Type. * 2388: Returning Values from Forms: multipart/form-data * 2424: Content Duration MIME Header Definition * 3280: Internet X.509 Public Key Infrastructure certificate and Certificate Revocation List (CRL) Profile Cryptography related RFCs: * 2268: A Description of the RC2(r) Encryption Algorithm * 2313: PKCS #1: RSA Encryption * 2314: PKCS #10: Certification Request Syntax * 2631: Diffie-Hellman Key Agreement Method LICENSE INFORMATION ------------------- The GMime library is Copyright (C) 2000-2014 Jeffrey Stedfast. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. HISTORY ------- As a developer and user of Electronic Mail clients, I had come to realize that the vast majority of E-Mail client (and server) software had less-than-satisfactory MIME implementations. More often than not these E-Mail clients created broken MIME messages and/or would incorrectly try to parse a MIME message thus subtracting from the full benefits that MIME was meant to provide. GMime is meant to address this issue by following the MIME specification as closely as possible while also providing programmers with an extremely easy to use high-level application programming interface (API). OBTAINING GMIME --------------- Sources to GMime may be obtained from: http://download.gnome.org/pub/GNOME/sources/gmime/ or ftp://ftp.gnome.org/pub/GNOME/sources/gmime/ Information regarding GMime may be obtained from the Spruce home page: http://spruce.sourceforge.net/gmime/ Experimental versions of GMime may be obtained by following the directions at http://developer.gnome.org/tools/svn.html git clone git://git.gnome.org/gmime REQUIREMENTS ------------ For proper compilation and functionality of GMime, the following packages are REQUIRED: - Glib version >= 2.18.0 Glib provides a number of portability-enhancing functions and types. Glib is included in most GMime-supported operating system distributions. Glib sources may be obtained from: ftp://ftp.gtk.org/pub/glib DOCUMENTATION ------------- This is the README file for GMime. Additional documentation related to development using GMime has been included within the source release of GMime. docs/reference/ Contains SGML and HTML versions of the GMime reference manual docs/tutorial/ Contains SGML and HTML versions of the GMime tutorial AUTHORS List of primary authors (source code developers) COPYING The GNU Lesser General Public License, version 2 ChangeLog Log of changes made to the source code INSTALL In-depth installation instructions NEWS Release notes (Overview of changes) TODO Description of planned GMime development PORTING Guide for developers porting their application from an older version of GMime You can find online developer documentation at http://library.gnome.org/devel/gmime/stable/ MAILING-LIST ------------ For discussion of GMime development (either of GMime itself or using GMime in your own application), you may find the GMime-Devel mailing-list helpful. To subscribe, please see http://mail.gnome.org/mailman/listinfo/gmime-devel-list BINDINGS -------- Other developers have been working to make GMime available to programmers in other languages. The current list of known bindings are: - Go: https://github.com/sendgrid/go-gmime - Perl: http://search.cpan.org/dist/MIME-Fast/ - .NET (Mono): Included in this distribution (Obsolete). Note: It is recommended that MimeKit[1] be used in place of GMime-Sharp in .NET 4.0 (or later) environments. 1. MimeKit: https://github.com/jstedfast/MimeKit REPORTING BUGS -------------- Bugs may be reported to the GMime development team by submitting a bug report for the gmime module at http://bugzilla.gnome.org/