This is an automated email from the ASF dual-hosted git repository.

elsloo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-trafficcontrol.git

commit 7784e03386aee7ca04ce85a333fcc751f0255305
Author: PeterRyder <peter.w.ry...@gmail.com>
AuthorDate: Mon Dec 4 13:28:43 2017 -0500

    Updated with redirectURL
---
 .../traffic_router/core/loc/AnonymousIp.java               | 14 ++++++++++++--
 traffic_router/core/src/test/resources/anonymous_ip.json   |  4 +++-
 .../core/src/test/resources/anonymous_ip_no_whitelist.json |  1 +
 3 files changed, 16 insertions(+), 3 deletions(-)

diff --git 
a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/loc/AnonymousIp.java
 
b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/loc/AnonymousIp.java
index bc1452e..6de381f 100644
--- 
a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/loc/AnonymousIp.java
+++ 
b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/loc/AnonymousIp.java
@@ -18,6 +18,7 @@ import java.io.File;
 import java.io.FileReader;
 import java.net.InetAddress;
 import java.net.MalformedURLException;
+import java.net.URL;
 
 import org.apache.log4j.Logger;
 import org.apache.wicket.ajax.json.JSONException;
@@ -55,6 +56,8 @@ public final class AnonymousIp {
        private AnonymousIpWhitelist ipv4Whitelist;
        private AnonymousIpWhitelist ipv6Whitelist;
 
+       private String redirectUrl;
+
        public final static int BLOCK_CODE = 403;
        public final static String WHITE_LIST_LOC = "w";
 
@@ -126,6 +129,10 @@ public final class AnonymousIp {
                        parseIPv4Whitelist(config, anonymousIp);
                        parseIPv6Whitelist(config, anonymousIp);
 
+                       if (config.has("redirectUrl")) {
+                               anonymousIp.redirectUrl = 
config.getString("redirectUrl");
+                       }
+
                        return anonymousIp;
                } catch (Exception e) {
                        LOGGER.error("AnonymousIp ERR: parsing config file 
failed", e);
@@ -219,8 +226,8 @@ public final class AnonymousIp {
         * in the anonymous ip database The ip will be blocked if it matches a
         * policy defined in the config file
         */
-       public static void enforce(final TrafficRouter trafficRouter, final 
Request request, final DeliveryService deliveryService, final Cache cache,
-                       final HTTPRouteResult routeResult, final Track track) 
throws MalformedURLException {
+       public static void enforce(final TrafficRouter trafficRouter, final 
Request request, final DeliveryService deliveryService, final Cache cache, 
+               final HTTPRouteResult routeResult, final Track track) throws 
MalformedURLException {
 
                final HTTPRequest httpRequest = HTTPRequest.class.cast(request);
 
@@ -236,6 +243,9 @@ public final class AnonymousIp {
                if (block) {
                        routeResult.setResponseCode(AnonymousIp.BLOCK_CODE);
                        track.setResult(ResultType.ANON_BLOCK);
+                       if (AnonymousIp.getCurrentConfig().redirectUrl != null) 
{
+                               routeResult.setUrl(new 
URL(AnonymousIp.getCurrentConfig().redirectUrl));
+                       }
                }
        }
 }
diff --git a/traffic_router/core/src/test/resources/anonymous_ip.json 
b/traffic_router/core/src/test/resources/anonymous_ip.json
index e64d0a5..05f686a 100644
--- a/traffic_router/core/src/test/resources/anonymous_ip.json
+++ b/traffic_router/core/src/test/resources/anonymous_ip.json
@@ -12,5 +12,7 @@
                     
    "ip4Whitelist": ["192.168.30.0/24", "10.0.2.0/24", "5.34.32.0/24"],
    
-   "ip6Whitelist": ["2001:550:90a::/48", "::1/128"]
+   "ip6Whitelist": ["2001:550:90a::/48", "::1/128"],
+   
+   "redirectUrl": "http://youvebeenblocked.com";
 }
\ No newline at end of file
diff --git 
a/traffic_router/core/src/test/resources/anonymous_ip_no_whitelist.json 
b/traffic_router/core/src/test/resources/anonymous_ip_no_whitelist.json
index 2f0f18e..1e0ba93 100644
--- a/traffic_router/core/src/test/resources/anonymous_ip_no_whitelist.json
+++ b/traffic_router/core/src/test/resources/anonymous_ip_no_whitelist.json
@@ -9,4 +9,5 @@
                     "blockHostingProvider": true, 
                     "blockPublicProxy": true,
                     "blockTorExitNode": false},
+   "redirectUrl": "http://youvebeenblocked.com";
 }
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
els...@apache.org.

Reply via email to