From 2121a934c390ce377c21a88cca5374dc3d70ebff Mon Sep 17 00:00:00 2001 From: Thomas Hochstein Date: Thu, 17 Jun 2010 22:56:14 +0200 Subject: [PATCH] Add overrides for configuration (MAIL FROM/EHLO). New commandline options: -s and -e . Change documentation accordingly. Signed-off-by: Thomas Hochstein --- checkmail.pl | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/checkmail.pl b/checkmail.pl index 7ded360..53aa21f 100644 --- a/checkmail.pl +++ b/checkmail.pl @@ -35,7 +35,7 @@ my $myself = basename($0); # read commandline options my %options; -getopts('Vhqlrf:m:', \%options); +getopts('Vhqlrf:m:s:e:', \%options); # -V: display version if ($options{'V'}) { @@ -52,18 +52,24 @@ if ($options{'h'}) { # display usage information if neither -f nor an address are present if (!$options{'f'} and !$ARGV[0]) { - print "Usage: $myself [-hqlr] [-m ]
|-f \n"; + print "Usage: $myself [-hqlr] [-m ] [-s ] [-e ]
|-f \n"; print "Options: -V display copyright and version\n"; print " -h show documentation\n"; print " -q quiet (no output, just exit with 0/1/2/3)\n"; print " -l extended logging\n"; print " -r test random address to verify verification\n"; print " -m no DNS lookup, just test this host\n"; + print " -s override configured value for MAIL FROM\n"; + print " -e override configured value for EHLO\n"; print "
mail address to check\n\n"; print " -f parse file (one address per line)\n"; exit(100); }; +# -s / -e: override configuration +$config{'from'} = $options{'s'} if $options{'s'}; +$config{'helo'} = $options{'e'} if $options{'e'}; + # -f: open file and read addresses to @adresses my @addresses; if ($options{'f'}) { @@ -369,7 +375,7 @@ checkmail - check deliverability of a mail address =head1 SYNOPSIS -B [B<-Vhqlr>] [B<-m> I] I
|B<-f> I +B [B<-Vhqlr>] [B<-m> I] [-s I] [-e I] I
|B<-f> I =head1 REQUIREMENTS @@ -426,6 +432,9 @@ The sender address to be used for I while testing. =back +You may override that configuration by using the B<-e> and B<-s> +command line options. + =head2 Usage After configuring the script you may run your first test with @@ -537,6 +546,14 @@ particular host irrespective of DNS entries. For example: checkmail -m test.host.example user@domain.example +=item B<-s> I (value for MAIL FROM) + +Override configuration and use I for MAIL FROM. + +=item B<-e> I (value for EHLO) + +Override configuration and use I for EHLO. + =item B<-f> I (file) Process all addresses from I (one on each line).