mhrw 0.8.1

mhrw is a commandline tool for manipulating mail headers.
mhrw is a tool for mailheader manipulation. mhrw can be useful in complex MTA setups. In general, headers shouldn't be rewritten, but i found myself configuring an MTA with special delivery methods, where delivery took place depending on spamassassin's spam-level and various other things.

In this setup, smtpd and delivery were completely different tasks without any communication possible between them. So, i decided to use the mail-headers loading some additional neccessary information. To get rid of lots of slow scripts, mhrw was born.

How it works:

mhrw reads mails from < stdin > or (if argument is given) from < file >. It supports two 'operating modes',

a) replace some part of the header, matched by a regular expression,
b) add some part to the header below the former last headerline.

In no way the body of a message is touched. Anything below the header is passed through. Also, the message will always pass until EOF.


To show some example, on how to use mhrw, i'll define the following (not
really standard, but very simple) mail as origin:

Received: somehost (somehost.somewhere) by uid 1007 with esmtp
X-Authenticated-SMTP: username
Received: anyhost; date
Subject: some test


If this mailalike header is getting used by following command:

mhrw '^X-Authenticated-SMTP: .*$' ''

this will result in:

Received: somehost (somehost.somewhere) by uid 1007 with esmtp
Received: anyhost; date
Subject: some test


You're able to use any regular expression you like, limited (by default) upto 4 subqueries.

The second argument (the replacement string) interprets written n and r sequences.


mhrw dosn't relay on libraries and is written with a very basic set of commands, so:

make install

should build the binary on most platforms.

last updated on:
February 8th, 2006, 17:06 GMT
license type:
GPL (GNU General Public License) 
developed by:
Stephan Seitz
ROOT \ Communications \ Email Filters
Download Button

In a hurry? Add it to your Download Basket!

user rating



Rate it!

Add your review!