Repository: struts
Updated Branches:
  refs/heads/develop 1a034053b -> c6b7aaf81


WW-4380 Narrows excluded patterns


Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/c6b7aaf8
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/c6b7aaf8
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/c6b7aaf8

Branch: refs/heads/develop
Commit: c6b7aaf816108771b914539785f383d7e65ede50
Parents: 1a03405
Author: Lukasz Lenart <lukaszlen...@apache.org>
Authored: Fri Aug 22 16:15:17 2014 +0200
Committer: Lukasz Lenart <lukaszlen...@apache.org>
Committed: Fri Aug 22 16:15:17 2014 +0200

----------------------------------------------------------------------
 .../xwork2/security/DefaultExcludedPatternsChecker.java  |  2 +-
 .../security/DefaultExcludedPatternsCheckerTest.java     | 11 ++++++++++-
 2 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/c6b7aaf8/xwork-core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java
----------------------------------------------------------------------
diff --git 
a/xwork-core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java
 
b/xwork-core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java
index 983ce63..868c388 100644
--- 
a/xwork-core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java
+++ 
b/xwork-core/src/main/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsChecker.java
@@ -16,7 +16,7 @@ public class DefaultExcludedPatternsChecker implements 
ExcludedPatternsChecker {
     private static final Logger LOG = 
LoggerFactory.getLogger(DefaultExcludedPatternsChecker.class);
 
     public static final String[] EXCLUDED_PATTERNS = {
-            "(.*\\.|^|.*|\\[('|\"))class(\\.|('|\")]|\\[).*",
+            "(.*\\.|^|.*|\\[('|\"))\\bclass(\\.|('|\")]|\\[).*",
             "(^|.*#)dojo(\\.|\\[).*",
             "(^|.*#)struts(\\.|\\[).*",
             "(^|.*#)session(\\.|\\[).*",

http://git-wip-us.apache.org/repos/asf/struts/blob/c6b7aaf8/xwork-core/src/test/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsCheckerTest.java
----------------------------------------------------------------------
diff --git 
a/xwork-core/src/test/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsCheckerTest.java
 
b/xwork-core/src/test/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsCheckerTest.java
index d9bd5bd..99f3e9e 100644
--- 
a/xwork-core/src/test/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsCheckerTest.java
+++ 
b/xwork-core/src/test/java/com/opensymphony/xwork2/security/DefaultExcludedPatternsCheckerTest.java
@@ -43,6 +43,13 @@ public class DefaultExcludedPatternsCheckerTest extends 
XWorkTestCase {
                 
add("%{#context.get('com.opensymphony.xwork2.dispatcher.HttpServletResponse')}");
                 add("#_memberAccess[\"allowStaticMethodAccess\"]= new 
java.lang.Boolean(true)");
                 add("%{#_memberAccess[\"allowStaticMethodAccess\"]= new 
java.lang.Boolean(true)}");
+                add("form.class.classLoader");
+                add("form[\"class\"][\"classLoader\"]");
+                add("form['class']['classLoader']");
+                add("class['classLoader']");
+                add("class[\"classLoader\"]");
+                add("class.classLoader.resources.dirContext.docBase=tttt");
+                add("Class.classLoader.resources.dirContext.docBase=tttt");
             }
         };
 
@@ -62,6 +69,8 @@ public class DefaultExcludedPatternsCheckerTest extends 
XWorkTestCase {
         List<String> properParams = new ArrayList<String>();
         properParams.add("eventClass");
         properParams.add("form.eventClass");
+        properParams.add("form[\"eventClass\"]");
+        properParams.add("form['eventClass']");
 
         ExcludedPatternsChecker checker = new DefaultExcludedPatternsChecker();
 
@@ -70,7 +79,7 @@ public class DefaultExcludedPatternsCheckerTest extends 
XWorkTestCase {
             ExcludedPatternsChecker.IsExcluded actual = 
checker.isExcluded(properParam);
 
             // then
-            assertFalse("Param 'eventClass' is excluded!", 
actual.isExcluded());
+            assertFalse("Param '" + properParam + "' is excluded!", 
actual.isExcluded());
         }
     }
 

Reply via email to