When verifying the SMTP server I had to add some hackery since SMTP in itself

doesn't really return any body data to check so I made SMTP check "headers"
as well.
This commit is contained in:
Daniel Stenberg
2009-12-25 22:21:46 +00:00
parent 77625f8560
commit 73ad32e125

View File

@@ -624,15 +624,23 @@ sub verifyftp {
my $time=time(); my $time=time();
my $extra; my $extra;
if($proto eq "ftps") { if($proto eq "ftps") {
$extra = "--insecure --ftp-ssl-control "; $extra .= "--insecure --ftp-ssl-control ";
}
elsif($proto eq "smtp") {
# SMTP is a bit different since it requires more options and it
# has _no_ output!
$extra .= "--mail-rcpt verifiedserver ";
$extra .= "--mail-from fake ";
$extra .= "--user localhost:unused ";
$extra .= "--upload /dev/null ";
$extra .= "--stderr - "; # move stderr to parse the verbose stuff
} }
my $cmd="$VCURL --max-time $server_response_maxtime --silent --verbose --globoff $extra\"$proto://$ip:$port/verifiedserver\" 2>$LOGDIR/verifyftp"; my $cmd="$VCURL --max-time $server_response_maxtime --silent --verbose --globoff $extra\"$proto://$ip:$port/verifiedserver\" 2>$LOGDIR/verifyftp";
# check if this is our server running on this port: # check if this is our server running on this port:
my @data=runclientoutput($cmd); my @data=runclientoutput($cmd);
logmsg "RUN: $cmd\n" if($verbose); logmsg "RUN: $cmd\n" if($verbose);
my $line;
foreach $line (@data) { foreach my $line (@data) {
if ( $line =~ /WE ROOLZ: (\d+)/ ) { if ( $line =~ /WE ROOLZ: (\d+)/ ) {
# this is our test server with a known pid! # this is our test server with a known pid!
$pid = 0+$1; $pid = 0+$1;