Mailheader: "X-Warned: Lines too long!" einfuegen
Hi Leute, ich habe folgende verrückte Idee: Da bei mir tadellos fetchmail,procmail&mutt läuft, ich habe mir die Konfiguration vom www.helms.sh runtergeholt. Echt super, Sebastian! Danke! Neben diversen anderen netten Kleinigkeiten wie Mail-Subject umschreiben oder anderes wie "X-Warned: HTML" möchte ich eine Möglichkeit wissen, ob und wie ich einen Filter in meiner procmailrc einfügen kann, der mich warnt, dass eine Mail nicht richtig formatiert ist, also die Zeilen zu lang sind. Wie mache ich das am klügsten? Vielleicht hat ja einer so was schon am laufen und ist vielleicht so nett, mir es auch zu verraten... Danke, Thomas
Moin, * Thomas Preissler[02-01-06 22:15]: >Neben diversen anderen netten Kleinigkeiten wie Mail-Subject >umschreiben oder anderes wie "X-Warned: HTML" möchte ich eine >Möglichkeit wissen, ob und wie ich einen Filter in meiner procmailrc >einfügen kann, der mich warnt, dass eine Mail nicht richtig >formatiert ist, also die Zeilen zu lang sind. > >Wie mache ich das am klügsten? > >Vielleicht hat ja einer so was schon am laufen und ist vielleicht so >nett, mir es auch zu verraten... Ich muß zum Glück kein Procmail benutzen, aber vielleicht kannst Du ja was damit anfangen: - - - Schnipp - - - my $maxLength = 0; foreach my $line (@$body) { ($maxLength > length($line)) or ($maxLength = length($line)); } if ($maxLength > 80) { $mail->put_header("X-LineTooLong", $maxLength); } - - - Schnapp - - - Thorsten -- Beware of he who would restrict you from information, for in his heart he dreams himself your master.
* Thorsten Haude wrote on 06 Jan 2002: > Moin, > > * Thomas Preissler[02-01-06 22:15]: > >Neben diversen anderen netten Kleinigkeiten wie Mail-Subject > >umschreiben oder anderes wie "X-Warned: HTML" möchte ich eine > >Möglichkeit wissen, ob und wie ich einen Filter in meiner procmailrc > >einfügen kann, der mich warnt, dass eine Mail nicht richtig > >formatiert ist, also die Zeilen zu lang sind. > > > >Wie mache ich das am klügsten? > > > >Vielleicht hat ja einer so was schon am laufen und ist vielleicht so > >nett, mir es auch zu verraten... > Ich muß zum Glück kein Procmail benutzen, aber vielleicht kannst Du ja > was damit anfangen: > - - - Schnipp - - - > my $maxLength = 0; > foreach my $line (@$body) > { > ($maxLength > length($line)) or ($maxLength = length($line)); > } > if ($maxLength > 80) > { > $mail->put_header("X-LineTooLong", $maxLength); > } > - - - Schnapp - - - Wow, kann ich. Danke Thomas
Thomas Preissler wrote:
Neben diversen anderen netten Kleinigkeiten wie Mail-Subject umschreiben oder anderes wie "X-Warned: HTML" möchte ich eine Möglichkeit wissen, ob und wie ich einen Filter in meiner procmailrc einfügen kann, der mich warnt, dass eine Mail nicht richtig formatiert ist, also die Zeilen zu lang sind.
Nachdem schon eine perl-Lösung da ist, hier noch eine alternative Lösung mit procmail/formail: :0 Bfhw * ............................................................ | formail -A 'X-Warned: Lines too long!' Die Anzahl der Punkte in der zweiten Zeile muß dabei um eins größer sein, als die maximal geduldete Anzahl von Zeichen pro Zeile. Dann wird in den Header jeder Mail, deren Body eine Zeile mit mindestens soviel Zeichen[1] enthält, die Warnung eingefügt. Eilert Footnotes: [1] Leider gibt es meines Wissens bei den regulären Ausdrücken von procmail keine schönere Notation dafür. Mit .{n} oder .\{n\} (wobei n die Anzahl ist) geht's jedenfalls nicht. -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org http://www.informatik.uni-bremen.de/~eilert/
participants (3)
-
Eilert Brinkmann
-
Thomas Preissler
-
Thorsten Haude