[interchange] Refactor robot testing into an internal routine
David Christensen <[email protected]> Tue, 17 Jan 2017 22:18:51 +0000
| Newsgroups | gmane.comp.web.interchange.cvs |
|---|---|
| Message-ID | <[email protected]> |
commit 77110c740d70c24e56b88f9f07c3973f2edaf9bb Author: David Christensen <[email protected]> Date: Tue Jan 17 16:09:06 2017 -0600 Refactor robot testing into an internal routine lib/Vend/Server.pm | 18 +++++++++++++----- 1 files changed, 13 insertions(+), 5 deletions(-) --- diff --git a/lib/Vend/Server.pm b/lib/Vend/Server.pm index 0d9c852..a03248d 100644 --- a/lib/Vend/Server.pm +++ b/lib/Vend/Server.pm @@ -279,10 +279,19 @@ EOF #::logDebug("request_method=$CGI::request_method"); #::logDebug("content_type=$CGI::content_type"); + $Vend::Robot = check_is_robot(); + + $CGI::values{mv_tmp_session} ||= 1 if $Vend::Robot; +} + + +sub check_is_robot { + my $ret = 1; + #::logDebug("Check robot UA=$Global::RobotUA IP=$Global::RobotIP"); if ($Global::RobotIP and $CGI::remote_addr =~ $Global::RobotIP) { #::logDebug("It is a robot by IP!"); - $Vend::Robot = 1; + $ret = 1; } elsif ($Global::HostnameLookups && $Global::RobotHost) { if (!$CGI::remote_host && $CGI::remote_addr) { @@ -291,7 +300,7 @@ EOF } if ($CGI::remote_host && $CGI::remote_host =~ $Global::RobotHost) { #::logDebug("It is a robot by host!"); - $Vend::Robot = 1; + $ret = 1; } } unless ($Vend::Robot) { @@ -300,11 +309,10 @@ EOF } elsif ($Global::RobotUA and $CGI::useragent =~ $Global::RobotUA) { #::logDebug("It is a robot by UA!"); - $Vend::Robot = 1; + $ret = 1; } } - - $CGI::values{mv_tmp_session} ||= 1 if $Vend::Robot; + return $ret; } # This is called by parse_multipart