mess - automagic Mail Encryption and Signing System for mail & news Copyright 1994 Stuart Smith May be distributed under the terms of the GNU General Public License. This program is meant to be run in lieu of an editor from a mail or news program. The editor you want to use should be the first argument on the command line. The article or message to be edited should be the second. mess first starts the editor with the specified file. If you want your message to be encrypted or signed, place one or more of the following strings at the beginning of a line. (i.e. each string must start at the beginning of its own line) [encrypt] [encrypt] [sign] [sign] Only the first encrypt or sign string will be acted on and removed from the text. Further copies are ignored. If you add a space and a key ID, these will be added to the PGP command line so that PGP will not ask you for them. A key ID (any text fragment unique to a public key description) is considered as everything from one space after the [encrypt]/[sign] string. mess now also scans headers, if they are included, for To: or From: headers and will use these as key_ID's. If you specify a key_ID after [sign] or [encrypt], it will override the key_ID found in the headers. I use trn, which does pass headers to the editor and it seems to work great. Elm doesn't though so I can't test it, but I assume it would work as well. I had to try and make the program smart enough to figure out if there even are headers. To do this, it first splits the file in two at the first blank line. Everything above is considered header lines. If however, it does not match From:, To:, or Subject:, then it assumes that headers were not in fact included in the file and that it is really just parsing the first paragraph. In which case it throws it out and just uses the whole file as the body, with no headers. If a public or secret key is not found matching the key_ID found in the header or entered manually, PGP will fail, leaving your message intact, including the [encrypt]/[sign] strings, if present. I've tried not to emphasize PGP to much because I wrote the program so that it could be used with any encryption program. PGP is of course a natural for the job. Right now, the defaults for the encrypt and sign strings, encrypt and sign options, and even the encryption program to call are in #define statements, so they're pretty easy to change. In the future I might add a configuration file for such things or allow them to be specified on the command-line. Ideas I have for the near future include somewhat better help for wrong command-line args and such; configuration file for some default or more command-line options; allow mailers or news readers that will do this to pass sender & recipient information on the command line; less moving around of temp files - right now the plaintext of a message gets copied into a temporary file before going to pgp, and while *that* temporary file is wiped by pgp, the original file is only deleted. I will try and organize things better or perhaps if someone can point me to a portable file wipe? The mess2.exe included runs under OS/2 with the emx runtime package. I've tried to avoid doing anything platform specific (I use OS/2), if I messed up, let me know. mess.exe is a dos version of mess compiled by Tom Almy on June 21, 1994. (thanks Tom!) I have tested the program using Elm for OS/2 and TRN for OS/2 which I use to read mail and news from the UUPC v1.2b program. I got the idea for the [encrypt] and [sign] bit from Elm_2 for OS/2 which had something similar, but I tried to improve on it. I would like to hear from people using this on other computers or with other mail/news programs. If you have any suggestions, please forward them, thanks. I hope you find this useful, I'd appreciate any comments & ideas.