+++ /dev/null
-#!/usr/bin/perl -w
-# correct-domino-mime-conversion - does it!
-# $Id: domino,v 1.1 2004/06/08 03:59:00 rfunk Exp $
-
-use strict;
-
-# Any arguments are expected to be an mda invocation.
-if (@ARGV) {
- my $mda = join(' ', @ARGV);
- open(MDA, "| $mda") or die "Can't exec $mda: $!\n";
- select(MDA);
-}
-
-# Look for a Boundary declaration in the message header
-my $decltag;
-while (<STDIN>) {
- print;
- if (/boundary=\"(.*)\"$/i) {
- $decltag = $1;
- } elsif (/^$/) {
- # An empty line marks the end of the headers.
- last;
- }
-}
-
-# If we didn't find a Boundary declaration just pipe the rest of the
-# message unchanged.
-if (!defined $decltag) {
- while (<STDIN>) {
- print;
- }
- exit 0;
-}
-
-# Substitute $decltag for every ocurrence of an outer-level boundary
-# string found in the body of the message.
-my $usedtag;
-while (<STDIN>) {
- if (/^--(.*)$/) {
- $usedtag = $1 unless defined $usedtag;
- if ($1 eq $usedtag) {
- $_ = "--$decltag\n";
- } elsif ($1 eq "$usedtag--") {
- $_ = "--$decltag--\n";
- }
- }
- print;
-}
-
-=pod
-
-This script can be used to bypass a bug in the Domino-5.0.2b IMAP
-service that manifests itself when you use fetchmail as the IMAP
-client. The problem is that fetchmail (differently from other IMAP
-clients) fetches messages in two parts, first the headers and then the
-body. It seems that Domino converts the messages from its internal
-format into MIME twice. In doing so, it declared a boundary string in
-the messages Content-type header and uses another one to separate the
-parts in the body.
-
-This script should be used as a mda option for fetchmail. As
-arguments to it, pass the former mda you used. I, for example, use the following entry in my .fetchmailrc:
-
- poll server ... mda "/usr/bin/procmail -d %T";
-
-To use this filter, I changed the above into the following:
-
- poll server ... mda "/home/gustavo/bin/correct-domino-mime-conversion /usr/bin/procmail -d %T";
-
-If you do not use a mda normally, you can try the following to call sendmail directly:
-
- poll server ... mda "/home/gustavo/bin/correct-domino-mime-conversion //wherever/is/your/sendmail -oem -f %F %T";
-
-Without argumets this script is a filter that reads from its stdin and
-outputs the result into its stdout.
-
-I should mention that this bug seems to be solved in Domino 5.0.3
-(http://www.notes.net/46dom.nsf/434e319a66960d8385256857005cd97b/4499e0db6e43732b852568b2006ef7e9?OpenDocument)
-but I have not checked it.
-
-Gustavo.
-<gustavo@cpqd.com.br>
-
-=cut