Ich hab mal ein kleines Perl-Script geschrieben, welches überprüft, ob eine Message-ID mehr als ein @ hat (was illegal wäre). Wenn dem so ist, wird die Message-ID umgeschrieben (ja, das ist böse) und die originale als X-Original-Message-ID gesichert.
use strict;
use warnings;
my $header = 1;
while (my $zeile = <>)
{
if ($zeile =~ /^$/)
{
$header = 0;
}
if ($header == 1)
{
while($zeile =~ m/^Message-ID: .*@.*@.*/)
{
print "X-Original-".$zeile;
$zeile =~ s/@/__MULTI_AT__/;
}
}
print $zeile;
}
Das Skript basiert auf dem standardmäßigen Input-Output Prinzip: Etwas wird per stdin ‚rein-gepiped‘ und wird per stdout ausgegeben.