[interchange] Refactor robot testing into an internal routine
David Christensen
interchange-cvs at icdevgroup.org
Tue Jan 17 22:18:51 UTC 2017
commit 77110c740d70c24e56b88f9f07c3973f2edaf9bb
Author: David Christensen <david at endpoint.com>
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
More information about the interchange-cvs
mailing list