The rfc822 library is released under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Read ./INSTALL for information regarding compilation and installation. See the ./doc subdirectory for some documentation. The documentation is provided online as well. The ./demo subdirectory contains some sample programs, see below.
Important: In version 0.02 threaded logging classes were introduced. At this point there was the need for some portable threading library. We chose the boost thread library for this as it provides threading support for both Unices and Windows platforms. Please get your copy from http://www.boost.org (and install at least the thread part.)
Feel free to use the code according to the above license. Run it, test it, squeeze it, punch it hard, ... and tell me the results. If you want to include the library or parts of it in a project of your own, but you miss some part, please tell me.
Go here to download the source code.
By the way - if you did not noticed yet: This site is hosted by
make samplesbuilds a number of samples in the current directory. Below is a short description of each of it. Note, that the sample applications can be connected via pipes, as in
cat ~/Mail/importante | cfilter 'from =~ "whitehouse"' | msgcnt
parses the mbox input stream, checks each individual message for the condition (if any), and prints the number of messages that pass, sorted by sender name. Some examples:
- msgcnt 'from.email is "firstname.lastname@example.org"'
- msgcnt 'body does not contain "PGP" and from matches /.*\.de/'
- msgcnt 'body !# "PGP" && from =~ /.*\.de/'
parses the mbox input stream, and writes out all messages that are from the specified email addresses.
parses the mbox input stream, checks each individual message for the condition, and prints out all messages that pass it. Some examples:
- cfilter 'from.email is "email@example.com"'
- cfilter 'body does not contain "PGP" and from matches /.*\.de/'
- cfilter 'body !# "PGP" && from =~ /.*\.de/'
Make sure you apply correct shell escaping.