You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by el...@apache.org on 2018/05/14 17:22:33 UTC
[incubator-trafficcontrol] 03/06: Updated with redirectURL
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 <pe...@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
elsloo@apache.org.