From 877b067d87d7b7b47687f50f16c9dd0dff28c39e Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Wed, 23 May 2007 21:58:09 +0000 Subject: handle base64 git-svn-id: svn+ssh://asteria.noreply.org/svn/weaselutils/trunk@275 bc3d92e2-beff-0310-a7cd-cc87d7ac0ede --- parse-trac | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'parse-trac') diff --git a/parse-trac b/parse-trac index 0815e6e..1a571c7 100755 --- a/parse-trac +++ b/parse-trac @@ -24,6 +24,7 @@ $project =~ m/^([a-zA-Z-]+(\.[a-zA-Z-]+)*)+$/; $project = $1; die ("Project is not a nice name.\n") unless defined $project; +my $is_base64 = 0; open (MAIL, $ARGV[1]) || die ("Cannot open $ARGV[1]: $!\n"); my @mail = ; @@ -63,10 +64,17 @@ while (defined($line = shift @headers)) { $url =~ s/^https:/http:/; } elsif ($line =~ m/^X-Trac-Ticket-ID:\s*(.*)/i) { $ticketid = $1; + } elsif ($line =~ m/^Content-Transfer-Encoding: base64$/s) { + $is_base64 = 1; } elsif ($line =~ m/^$/) { last; } }; + +my $body = join '', @mail; +$body = decode_base64($body) if ($is_base64); +@mail = split(/\n/, $body); + my $first_line = shift @mail; chomp $first_line; shift @mail; -- cgit v1.2.3