diff --git a/jetty-server/src/main/config/modules/inetaccess.mod b/jetty-server/src/main/config/modules/inetaccess.mod
index 8716b1d4e798..acd2ceacfe75 100644
--- a/jetty-server/src/main/config/modules/inetaccess.mod
+++ b/jetty-server/src/main/config/modules/inetaccess.mod
@@ -2,7 +2,7 @@
[description]
Enables the InetAccessHandler.
-Applies a include/exclude control of the remote IP of requests.
+Applies an include/exclude control of the remote IP of requests.
[tags]
connector
@@ -18,15 +18,9 @@ etc/jetty-inetaccess.xml
[ini-template]
-## List of InetAddress patterns to include
-#jetty.inetaccess.include=127.0.0.1,127.0.0.2
+## List of InetAddress patterns to include (connectorName@addressPattern|pathSpec)
+#jetty.inetaccess.include=http@127.0.0.1-127.0.0.2|/pathSpec,tls@,|/pathSpec2,127.0.0.20
-## List of InetAddress patterns to exclude
-#jetty.inetaccess.exclude=127.0.0.1,127.0.0.2
-
-## List of Connector names to include
-#jetty.inetaccess.includeConnectors=http
-
-## List of Connector names to exclude
-#jetty.inetaccess.excludeConnectors=tls
+## List of InetAddress patterns to exclude (connectorName@addressPattern|pathSpec)
+#jetty.inetaccess.exclude=http@127.0.0.1-127.0.0.2|/pathSpec,tls@,|/pathSpec2,127.0.0.20
diff --git a/jetty-server/src/main/config/modules/inetaccess/inetaccess.xml b/jetty-server/src/main/config/modules/inetaccess/inetaccess.xml
deleted file mode 100644
index 34af6f2e8289..000000000000
--- a/jetty-server/src/main/config/modules/inetaccess/inetaccess.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
- 127.0.0.1-127.0.0.255
- 127.0.0.128-127.0.0.129
-
-
-
-
diff --git a/jetty-server/src/main/config/modules/inetaccess/jetty-inetaccess.xml b/jetty-server/src/main/config/modules/inetaccess/jetty-inetaccess.xml
index e784968e37bc..f30fe062f66f 100644
--- a/jetty-server/src/main/config/modules/inetaccess/jetty-inetaccess.xml
+++ b/jetty-server/src/main/config/modules/inetaccess/jetty-inetaccess.xml
@@ -19,20 +19,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessSet.java b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessSet.java
index bb4327fb38b0..505512c4280a 100644
--- a/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessSet.java
+++ b/jetty-server/src/main/java/org/eclipse/jetty/server/handler/InetAccessSet.java
@@ -27,7 +27,7 @@
public class InetAccessSet extends AbstractSet implements Set, Predicate
{
- private ArrayList tuples = new ArrayList<>();
+ private final ArrayList tuples = new ArrayList<>();
@Override
public boolean add(PatternTuple storageTuple)
@@ -67,7 +67,7 @@ public boolean test(AccessTuple entry)
return false;
}
- static class PatternTuple implements Predicate
+ public static class PatternTuple implements Predicate
{
private final String connector;
private final InetAddressPattern address;
@@ -110,19 +110,22 @@ public boolean test(AccessTuple entry)
if ((connector != null) && !connector.equals(entry.getConnector()))
return false;
- // If we have a path we must must be at this path to match for an address.
+ // If we have a path we must be at this path to match for an address.
if ((pathSpec != null) && !pathSpec.matches(entry.getPath()))
return false;
// Match for InetAddress.
- if ((address != null) && !address.test(entry.getAddress()))
- return false;
+ return (address == null) || address.test(entry.getAddress());
+ }
- return true;
+ @Override
+ public String toString()
+ {
+ return String.format("%s@%x{connector=%s, addressPattern=%s, pathSpec=%s}", getClass().getSimpleName(), hashCode(), connector, address, pathSpec);
}
}
- static class AccessTuple
+ public static class AccessTuple
{
private final String connector;
private final InetAddress address;