sending parts are printed now as well.
--- a/exiacl Tue Aug 02 22:10:18 2005 +0000
+++ b/exiacl Tue Aug 02 23:01:41 2005 +0000
@@ -3,6 +3,7 @@
# $Id$
# $URL$
+
use strict;
use warnings;
use AppConfig;
@@ -33,6 +34,7 @@
sub exim_option($);
sub read_exim($);
+sub write_exim($@);
my $Cf;
@@ -48,26 +50,26 @@
open3($w, $r, undef, @cmd) or die "Can't run @cmd: $!\n";
-read_exim$r;
-print $w "EHLO ".$Cf->helo."\n";
-read_exim($r);
-print $w "MAIL FROM: ".$Cf->From."\n";
-read_exim $r;
-print $w "RCPT TO: ".$Cf->to."\n";
-read_exim $r;
-print $w "DATA\n";
-read_exim $r;
-print $w "From: ".$Cf->from."\n";
-print $w "To: ".$Cf->to."\n";
-print $w "\n.\n";
-read_exim $r;
-print $w "QUIT\n";
+ read_exim $r;
+write_exim $w, "EHLO ".$Cf->helo."\n";
+ read_exim $r;
+write_exim $w, "MAIL FROM: ".$Cf->From."\n";
+ read_exim $r;
+write_exim $w, "RCPT TO: ".$Cf->to."\n";
+ read_exim $r;
+write_exim $w, "DATA\n";
+ read_exim $r;
+write_exim $w, "From: ".$Cf->from."\n";
+write_exim $w, "To: ".$Cf->to."\n";
+write_exim $w, "\n.\n";
+ read_exim $r;
+write_exim $w, "QUIT\n";
sub read_exim($) {
my $fh = shift;
while (<$fh>) {
- if (/^\d\d\d/) { print; }
+ if (/^\d\d\d/) { print "< $_"; }
else { print STDERR; }
last if /^\d\d\d /;
@@ -75,6 +77,12 @@
exit if /^5/;
}
+sub write_exim($@) {
+ my $fh = shift;
+ print "> ", @_;
+ print $fh @_;
+}
+
{
my %opts;