You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2014/04/24 20:19:53 UTC

[1/5] git commit: Sets -SNAPSHOT version

Repository: struts
Updated Branches:
  refs/heads/hotfix/2.3.16.2 [created] 986215740


Sets -SNAPSHOT version


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

Branch: refs/heads/hotfix/2.3.16.2
Commit: a2d0ecdcd3594c87265f483ecb3c202fec18937c
Parents: 6cddee6
Author: Lukasz Lenart <lu...@apache.org>
Authored: Tue Apr 22 11:54:59 2014 +0200
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Tue Apr 22 11:54:59 2014 +0200

----------------------------------------------------------------------
 apps/blank/pom.xml                              | 2 +-
 apps/jboss-blank/pom.xml                        | 2 +-
 apps/mailreader/pom.xml                         | 2 +-
 apps/pom.xml                                    | 2 +-
 apps/portlet/pom.xml                            | 2 +-
 apps/rest-showcase/pom.xml                      | 4 ++--
 apps/showcase/pom.xml                           | 2 +-
 archetypes/pom.xml                              | 2 +-
 archetypes/struts2-archetype-angularjs/pom.xml  | 4 ++--
 archetypes/struts2-archetype-blank/pom.xml      | 4 ++--
 archetypes/struts2-archetype-convention/pom.xml | 4 ++--
 archetypes/struts2-archetype-dbportlet/pom.xml  | 4 ++--
 archetypes/struts2-archetype-plugin/pom.xml     | 4 ++--
 archetypes/struts2-archetype-portlet/pom.xml    | 4 ++--
 archetypes/struts2-archetype-starter/pom.xml    | 4 ++--
 assembly/pom.xml                                | 2 +-
 bundles/admin/pom.xml                           | 2 +-
 bundles/demo/pom.xml                            | 2 +-
 bundles/pom.xml                                 | 2 +-
 core/pom.xml                                    | 2 +-
 plugins/cdi/pom.xml                             | 2 +-
 plugins/codebehind/pom.xml                      | 2 +-
 plugins/config-browser/pom.xml                  | 2 +-
 plugins/convention/pom.xml                      | 2 +-
 plugins/dojo/pom.xml                            | 2 +-
 plugins/dwr/pom.xml                             | 2 +-
 plugins/embeddedjsp/pom.xml                     | 2 +-
 plugins/gxp/pom.xml                             | 2 +-
 plugins/jasperreports/pom.xml                   | 2 +-
 plugins/javatemplates/pom.xml                   | 2 +-
 plugins/jfreechart/pom.xml                      | 2 +-
 plugins/jsf/pom.xml                             | 2 +-
 plugins/json/pom.xml                            | 2 +-
 plugins/junit/pom.xml                           | 2 +-
 plugins/osgi/pom.xml                            | 2 +-
 plugins/oval/pom.xml                            | 2 +-
 plugins/pell-multipart/pom.xml                  | 2 +-
 plugins/plexus/pom.xml                          | 2 +-
 plugins/pom.xml                                 | 2 +-
 plugins/portlet-tiles/pom.xml                   | 2 +-
 plugins/portlet/pom.xml                         | 2 +-
 plugins/rest/pom.xml                            | 4 ++--
 plugins/sitegraph/pom.xml                       | 2 +-
 plugins/sitemesh/pom.xml                        | 2 +-
 plugins/spring/pom.xml                          | 2 +-
 plugins/struts1/pom.xml                         | 2 +-
 plugins/testng/pom.xml                          | 2 +-
 plugins/tiles/pom.xml                           | 2 +-
 plugins/tiles3/pom.xml                          | 2 +-
 pom.xml                                         | 2 +-
 xwork-core/pom.xml                              | 2 +-
 51 files changed, 60 insertions(+), 60 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/blank/pom.xml
----------------------------------------------------------------------
diff --git a/apps/blank/pom.xml b/apps/blank/pom.xml
index 2b2cf63..dce8aa0 100644
--- a/apps/blank/pom.xml
+++ b/apps/blank/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-apps</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-blank</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/jboss-blank/pom.xml
----------------------------------------------------------------------
diff --git a/apps/jboss-blank/pom.xml b/apps/jboss-blank/pom.xml
index e16d5ff..9a6abee 100644
--- a/apps/jboss-blank/pom.xml
+++ b/apps/jboss-blank/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-apps</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-jboss-blank</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/mailreader/pom.xml
----------------------------------------------------------------------
diff --git a/apps/mailreader/pom.xml b/apps/mailreader/pom.xml
index 1992cde..de7cfb2 100644
--- a/apps/mailreader/pom.xml
+++ b/apps/mailreader/pom.xml
@@ -26,7 +26,7 @@
     <parent>
       <groupId>org.apache.struts</groupId>
       <artifactId>struts2-apps</artifactId>
-      <version>2.3.16.1</version>
+      <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-mailreader</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/pom.xml
----------------------------------------------------------------------
diff --git a/apps/pom.xml b/apps/pom.xml
index 921abef..762ff8f 100644
--- a/apps/pom.xml
+++ b/apps/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
     <groupId>org.apache.struts</groupId>
     <artifactId>struts2-apps</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/portlet/pom.xml
----------------------------------------------------------------------
diff --git a/apps/portlet/pom.xml b/apps/portlet/pom.xml
index 73162cc..e7db34c 100644
--- a/apps/portlet/pom.xml
+++ b/apps/portlet/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-apps</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-portlet</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/rest-showcase/pom.xml
----------------------------------------------------------------------
diff --git a/apps/rest-showcase/pom.xml b/apps/rest-showcase/pom.xml
index b4eb6ba..a37db7a 100644
--- a/apps/rest-showcase/pom.xml
+++ b/apps/rest-showcase/pom.xml
@@ -26,12 +26,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-apps</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-rest-showcase</artifactId>
     <packaging>war</packaging>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <name>Struts 2 Rest Showcase Example</name>
     <description>Struts 2 Rest Showcase Example</description>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/apps/showcase/pom.xml
----------------------------------------------------------------------
diff --git a/apps/showcase/pom.xml b/apps/showcase/pom.xml
index 927f882..cfc3aa7 100644
--- a/apps/showcase/pom.xml
+++ b/apps/showcase/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-apps</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-showcase</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/pom.xml b/archetypes/pom.xml
index da001b5..efd5d19 100644
--- a/archetypes/pom.xml
+++ b/archetypes/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
     <groupId>org.apache.struts</groupId>
     <artifactId>struts2-archetypes</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-angularjs/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-angularjs/pom.xml b/archetypes/struts2-archetype-angularjs/pom.xml
index 2a4044f..ddd6d18 100644
--- a/archetypes/struts2-archetype-angularjs/pom.xml
+++ b/archetypes/struts2-archetype-angularjs/pom.xml
@@ -2,12 +2,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-angularjs</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Angular JS</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-blank/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-blank/pom.xml b/archetypes/struts2-archetype-blank/pom.xml
index 778f204..47a2cd6 100644
--- a/archetypes/struts2-archetype-blank/pom.xml
+++ b/archetypes/struts2-archetype-blank/pom.xml
@@ -3,12 +3,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-blank</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Blank</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-convention/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-convention/pom.xml b/archetypes/struts2-archetype-convention/pom.xml
index cf40954..ebf65cd 100644
--- a/archetypes/struts2-archetype-convention/pom.xml
+++ b/archetypes/struts2-archetype-convention/pom.xml
@@ -2,12 +2,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-convention</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Blank Convention</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-dbportlet/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-dbportlet/pom.xml b/archetypes/struts2-archetype-dbportlet/pom.xml
index 38dc66f..7d7324c 100644
--- a/archetypes/struts2-archetype-dbportlet/pom.xml
+++ b/archetypes/struts2-archetype-dbportlet/pom.xml
@@ -2,12 +2,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-dbportlet</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Database Portlet</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-plugin/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-plugin/pom.xml b/archetypes/struts2-archetype-plugin/pom.xml
index 2d102e2..4c8a91d 100644
--- a/archetypes/struts2-archetype-plugin/pom.xml
+++ b/archetypes/struts2-archetype-plugin/pom.xml
@@ -2,12 +2,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-plugin</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Plugin</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-portlet/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-portlet/pom.xml b/archetypes/struts2-archetype-portlet/pom.xml
index cb7c7b2..4456c50 100644
--- a/archetypes/struts2-archetype-portlet/pom.xml
+++ b/archetypes/struts2-archetype-portlet/pom.xml
@@ -2,12 +2,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-portlet</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Portlet</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/archetypes/struts2-archetype-starter/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/struts2-archetype-starter/pom.xml b/archetypes/struts2-archetype-starter/pom.xml
index c5dd6ba..5272e3e 100644
--- a/archetypes/struts2-archetype-starter/pom.xml
+++ b/archetypes/struts2-archetype-starter/pom.xml
@@ -4,12 +4,12 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-archetypes</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-archetype-starter</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>Struts 2 Archetypes - Starter</name>
 

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/assembly/pom.xml
----------------------------------------------------------------------
diff --git a/assembly/pom.xml b/assembly/pom.xml
index 0f3d457..d5bd71b 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -3,7 +3,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-assembly</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/bundles/admin/pom.xml
----------------------------------------------------------------------
diff --git a/bundles/admin/pom.xml b/bundles/admin/pom.xml
index 25f1089..9c93e5b 100644
--- a/bundles/admin/pom.xml
+++ b/bundles/admin/pom.xml
@@ -4,7 +4,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-osgi-bundles</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-osgi-admin-bundle</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/bundles/demo/pom.xml
----------------------------------------------------------------------
diff --git a/bundles/demo/pom.xml b/bundles/demo/pom.xml
index 933394c..b643638 100644
--- a/bundles/demo/pom.xml
+++ b/bundles/demo/pom.xml
@@ -4,7 +4,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-osgi-bundles</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-osgi-demo-bundle</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/bundles/pom.xml
----------------------------------------------------------------------
diff --git a/bundles/pom.xml b/bundles/pom.xml
index 0537b1e..41523e5 100755
--- a/bundles/pom.xml
+++ b/bundles/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-osgi-bundles</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/core/pom.xml
----------------------------------------------------------------------
diff --git a/core/pom.xml b/core/pom.xml
index 225113e..c875c6d 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
     <artifactId>struts2-core</artifactId>
     <packaging>jar</packaging>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/cdi/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/cdi/pom.xml b/plugins/cdi/pom.xml
index a5b2429..6ce324e 100644
--- a/plugins/cdi/pom.xml
+++ b/plugins/cdi/pom.xml
@@ -25,7 +25,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-cdi-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/codebehind/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/codebehind/pom.xml b/plugins/codebehind/pom.xml
index ed8e16b..d9cd9d0 100644
--- a/plugins/codebehind/pom.xml
+++ b/plugins/codebehind/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-codebehind-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/config-browser/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/config-browser/pom.xml b/plugins/config-browser/pom.xml
index c8d7cc1..aefa347 100644
--- a/plugins/config-browser/pom.xml
+++ b/plugins/config-browser/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-config-browser-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/convention/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/convention/pom.xml b/plugins/convention/pom.xml
index 5fb7170..6ef817f 100644
--- a/plugins/convention/pom.xml
+++ b/plugins/convention/pom.xml
@@ -3,7 +3,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-convention-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/dojo/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/dojo/pom.xml b/plugins/dojo/pom.xml
index 4cf7aea..dbda4fb 100644
--- a/plugins/dojo/pom.xml
+++ b/plugins/dojo/pom.xml
@@ -25,7 +25,7 @@
     <parent>
         <artifactId>struts2-plugins</artifactId>
         <groupId>org.apache.struts</groupId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/dwr/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/dwr/pom.xml b/plugins/dwr/pom.xml
index e38598a..c3de1b0 100644
--- a/plugins/dwr/pom.xml
+++ b/plugins/dwr/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-dwr-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/embeddedjsp/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/embeddedjsp/pom.xml b/plugins/embeddedjsp/pom.xml
index 2eb6bc0..5f48827 100644
--- a/plugins/embeddedjsp/pom.xml
+++ b/plugins/embeddedjsp/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-embeddedjsp-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/gxp/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/gxp/pom.xml b/plugins/gxp/pom.xml
index 52c0cec..f8fdd21 100644
--- a/plugins/gxp/pom.xml
+++ b/plugins/gxp/pom.xml
@@ -3,7 +3,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-gxp-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/jasperreports/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/jasperreports/pom.xml b/plugins/jasperreports/pom.xml
index 4dd58e8..ed5441b 100644
--- a/plugins/jasperreports/pom.xml
+++ b/plugins/jasperreports/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-jasperreports-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/javatemplates/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/javatemplates/pom.xml b/plugins/javatemplates/pom.xml
index 0b58b8a..60f3fc9 100644
--- a/plugins/javatemplates/pom.xml
+++ b/plugins/javatemplates/pom.xml
@@ -25,7 +25,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-javatemplates-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/jfreechart/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/jfreechart/pom.xml b/plugins/jfreechart/pom.xml
index b56396b..2b718fb 100644
--- a/plugins/jfreechart/pom.xml
+++ b/plugins/jfreechart/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
    </parent>
 
     <artifactId>struts2-jfreechart-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/jsf/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/jsf/pom.xml b/plugins/jsf/pom.xml
index afd6158..f9b48f3 100644
--- a/plugins/jsf/pom.xml
+++ b/plugins/jsf/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-jsf-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/json/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/json/pom.xml b/plugins/json/pom.xml
index f094c0b..df285ba 100644
--- a/plugins/json/pom.xml
+++ b/plugins/json/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-json-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/junit/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/junit/pom.xml b/plugins/junit/pom.xml
index 8aa034c..8a33c3e 100644
--- a/plugins/junit/pom.xml
+++ b/plugins/junit/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-junit-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/osgi/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/osgi/pom.xml b/plugins/osgi/pom.xml
index d0fe79d..8fa9d3c 100644
--- a/plugins/osgi/pom.xml
+++ b/plugins/osgi/pom.xml
@@ -4,7 +4,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-osgi-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/oval/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/oval/pom.xml b/plugins/oval/pom.xml
index 9789448..79687b8 100644
--- a/plugins/oval/pom.xml
+++ b/plugins/oval/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-oval-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/pell-multipart/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/pell-multipart/pom.xml b/plugins/pell-multipart/pom.xml
index 216e27e..c109cc9 100644
--- a/plugins/pell-multipart/pom.xml
+++ b/plugins/pell-multipart/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-pell-multipart-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/plexus/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/plexus/pom.xml b/plugins/plexus/pom.xml
index 61d1729..698e093 100644
--- a/plugins/plexus/pom.xml
+++ b/plugins/plexus/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-plexus-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/pom.xml b/plugins/pom.xml
index e283683..7529c52 100644
--- a/plugins/pom.xml
+++ b/plugins/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-plugins</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/portlet-tiles/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/portlet-tiles/pom.xml b/plugins/portlet-tiles/pom.xml
index d1d243e..8a70349 100644
--- a/plugins/portlet-tiles/pom.xml
+++ b/plugins/portlet-tiles/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-portlet-tiles-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/portlet/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/portlet/pom.xml b/plugins/portlet/pom.xml
index 52823bc..2ae7758 100644
--- a/plugins/portlet/pom.xml
+++ b/plugins/portlet/pom.xml
@@ -3,7 +3,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-portlet-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/rest/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/rest/pom.xml b/plugins/rest/pom.xml
index 7c71515..41e6ff0 100644
--- a/plugins/rest/pom.xml
+++ b/plugins/rest/pom.xml
@@ -26,11 +26,11 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-rest-plugin</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <name>Struts 2 REST Plugin</name>
 
     <properties>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/sitegraph/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/sitegraph/pom.xml b/plugins/sitegraph/pom.xml
index 7d4d437..4cba507 100644
--- a/plugins/sitegraph/pom.xml
+++ b/plugins/sitegraph/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-sitegraph-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/sitemesh/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/sitemesh/pom.xml b/plugins/sitemesh/pom.xml
index bb2bf79..d244c4a 100644
--- a/plugins/sitemesh/pom.xml
+++ b/plugins/sitemesh/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-sitemesh-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/spring/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/spring/pom.xml b/plugins/spring/pom.xml
index efe4bbb..3805202 100644
--- a/plugins/spring/pom.xml
+++ b/plugins/spring/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-spring-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/struts1/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/struts1/pom.xml b/plugins/struts1/pom.xml
index 1c393ff..c683cf1 100644
--- a/plugins/struts1/pom.xml
+++ b/plugins/struts1/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-struts1-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/testng/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/testng/pom.xml b/plugins/testng/pom.xml
index 87c25bb..5433f06 100644
--- a/plugins/testng/pom.xml
+++ b/plugins/testng/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-testng-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/tiles/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/tiles/pom.xml b/plugins/tiles/pom.xml
index 8047d26..235d83c 100644
--- a/plugins/tiles/pom.xml
+++ b/plugins/tiles/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-tiles-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/plugins/tiles3/pom.xml
----------------------------------------------------------------------
diff --git a/plugins/tiles3/pom.xml b/plugins/tiles3/pom.xml
index cf976e4..8168346 100644
--- a/plugins/tiles3/pom.xml
+++ b/plugins/tiles3/pom.xml
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-plugins</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <artifactId>struts2-tiles3-plugin</artifactId>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 004a697..1e89047 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,7 +9,7 @@
 
     <modelVersion>4.0.0</modelVersion>
     <artifactId>struts2-parent</artifactId>
-    <version>2.3.16.1</version>
+    <version>2.3.16.2-SNAPSHOT</version>
     <packaging>pom</packaging>
     <name>Struts 2</name>
     <url>http://struts.apache.org/2.x/</url>

http://git-wip-us.apache.org/repos/asf/struts/blob/a2d0ecdc/xwork-core/pom.xml
----------------------------------------------------------------------
diff --git a/xwork-core/pom.xml b/xwork-core/pom.xml
index e16c324..e9b35af 100644
--- a/xwork-core/pom.xml
+++ b/xwork-core/pom.xml
@@ -5,7 +5,7 @@
     <parent>
         <groupId>org.apache.struts</groupId>
         <artifactId>struts2-parent</artifactId>
-        <version>2.3.16.1</version>
+        <version>2.3.16.2-SNAPSHOT</version>
     </parent>
 
     <groupId>org.apache.struts.xwork</groupId>


[3/5] git commit: Uses global exclude patterns to initialise excludeParams

Posted by lu...@apache.org.
Uses global exclude patterns to initialise excludeParams


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

Branch: refs/heads/hotfix/2.3.16.2
Commit: 6315241719be167542962da436b38782ed730c62
Parents: 2e2da29
Author: Lukasz Lenart <lu...@apache.org>
Authored: Thu Apr 24 19:51:40 2014 +0200
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Thu Apr 24 19:51:40 2014 +0200

----------------------------------------------------------------------
 .../struts2/interceptor/CookieInterceptor.java  | 74 +++++++++++++++++++-
 .../interceptor/ParametersInterceptor.java      | 19 +++--
 2 files changed, 86 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/63152417/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java b/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
index 939956c..3e2e81d 100644
--- a/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
+++ b/core/src/main/java/org/apache/struts2/interceptor/CookieInterceptor.java
@@ -24,6 +24,7 @@ package org.apache.struts2.interceptor;
 import com.opensymphony.xwork2.ActionContext;
 import com.opensymphony.xwork2.ActionInvocation;
 import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
+import com.opensymphony.xwork2.ExcludedPatterns;
 import com.opensymphony.xwork2.util.TextParseUtil;
 import com.opensymphony.xwork2.util.ValueStack;
 import com.opensymphony.xwork2.util.logging.Logger;
@@ -173,7 +174,8 @@ public class CookieInterceptor extends AbstractInterceptor {
     private Set<String> cookiesValueSet = Collections.emptySet();
 
     // Allowed names of cookies
-    private Pattern acceptedPattern = Pattern.compile(ACCEPTED_PATTERN);
+    private Pattern acceptedPattern = Pattern.compile(ACCEPTED_PATTERN, Pattern.CASE_INSENSITIVE);
+    private Pattern excludedPattern = Pattern.compile(ExcludedPatterns.CLASS_ACCESS_PATTERN, Pattern.CASE_INSENSITIVE);
 
     /**
      * Set the <code>cookiesName</code> which if matched will allow the cookie
@@ -223,7 +225,7 @@ public class CookieInterceptor extends AbstractInterceptor {
                 String name = cookie.getName();
                 String value = cookie.getValue();
 
-                if (acceptedPattern.matcher(name).matches()) {
+                if (isAcceptableName(name) && isAcceptableValue(value)) {
                     if (cookiesNameSet.contains("*")) {
                         if (LOG.isDebugEnabled()) {
                             LOG.debug("contains cookie name [*] in configured cookies name set, cookie with name [" + name + "] with value [" + value + "] will be injected");
@@ -233,7 +235,7 @@ public class CookieInterceptor extends AbstractInterceptor {
                         populateCookieValueIntoStack(name, value, cookiesMap, stack);
                     }
                 } else {
-                    LOG.warn("Cookie name [" + name + "] does not match accepted cookie names pattern [" + acceptedPattern + "]");
+                    LOG.warn("Cookie name [#0] with value [#1] was rejected!", name, value);
                 }
             }
         }
@@ -245,6 +247,72 @@ public class CookieInterceptor extends AbstractInterceptor {
     }
 
     /**
+     * Checks if value of Cookie doesn't contain vulnerable code
+     *
+     * @param value of Cookie
+     * @return true|false
+     */
+    protected boolean isAcceptableValue(String value) {
+        boolean matches = !excludedPattern.matcher(value).matches();
+        if (!matches) {
+            if (LOG.isTraceEnabled()) {
+                LOG.trace("Cookie value [#0] matches excludedPattern [#1]", value, ExcludedPatterns.CLASS_ACCESS_PATTERN);
+            }
+        }
+        return matches;
+    }
+
+    /**
+     * Checks if name of Cookie doesn't contain vulnerable code
+     *
+     * @param name of Cookie
+     * @return true|false
+     */
+    protected boolean isAcceptableName(String name) {
+        return !isExcluded(name) && isAccepted(name);
+    }
+
+    /**
+     * Checks if name of Cookie match {@link #acceptedPattern}
+     *
+     * @param name of Cookie
+     * @return true|false
+     */
+    protected boolean isAccepted(String name) {
+        boolean matches = acceptedPattern.matcher(name).matches();
+        if (matches) {
+            if (LOG.isTraceEnabled()) {
+                LOG.trace("Cookie [#0] matches acceptedPattern [#1]", name, ACCEPTED_PATTERN);
+            }
+        } else {
+            if (LOG.isTraceEnabled()) {
+                LOG.trace("Cookie [#0] doesn't match acceptedPattern [#1]", name, ACCEPTED_PATTERN);
+            }
+        }
+        return matches;
+    }
+
+    /**
+     * Checks if name of Cookie match {@link #excludedPattern}
+     *
+     * @param name of Cookie
+     * @return true|false
+     */
+    protected boolean isExcluded(String name) {
+        boolean matches = excludedPattern.matcher(name).matches();
+        if (matches) {
+            if (LOG.isTraceEnabled()) {
+                LOG.trace("Cookie [#0] matches excludedPattern [#1]", name, ExcludedPatterns.CLASS_ACCESS_PATTERN);
+            }
+        } else {
+            if (LOG.isTraceEnabled()) {
+                LOG.trace("Cookie [#0] doesn't match excludedPattern [#1]", name, ExcludedPatterns.CLASS_ACCESS_PATTERN);
+            }
+        }
+        return matches;
+    }
+
+    /**
      * Hook that populate cookie value into value stack (hence the action)
      * if the criteria is satisfied (if the cookie value matches with those configured).
      *

http://git-wip-us.apache.org/repos/asf/struts/blob/63152417/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
----------------------------------------------------------------------
diff --git a/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java b/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
index af6e0b7..d6adf99 100644
--- a/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
+++ b/xwork-core/src/main/java/com/opensymphony/xwork2/interceptor/ParametersInterceptor.java
@@ -17,6 +17,7 @@ package com.opensymphony.xwork2.interceptor;
 
 import com.opensymphony.xwork2.ActionContext;
 import com.opensymphony.xwork2.ActionInvocation;
+import com.opensymphony.xwork2.ExcludedPatterns;
 import com.opensymphony.xwork2.ValidationAware;
 import com.opensymphony.xwork2.XWorkConstants;
 import com.opensymphony.xwork2.conversion.impl.InstantiatingNullHandler;
@@ -149,16 +150,20 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
     private int paramNameMaxLength = PARAM_NAME_MAX_LENGTH;
 
     protected boolean ordered = false;
-    protected Set<Pattern> excludeParams = Collections.emptySet();
+    protected Set<Pattern> excludeParams;
     protected Set<Pattern> acceptParams = Collections.emptySet();
 
     private boolean devMode = false;
 
     // Allowed names of parameters
-    private Pattern acceptedPattern = Pattern.compile(ACCEPTED_PARAM_NAMES);
+    private Pattern acceptedPattern = Pattern.compile(ACCEPTED_PARAM_NAMES, Pattern.CASE_INSENSITIVE);
 
     private ValueStackFactory valueStackFactory;
 
+    public ParametersInterceptor() {
+        initializeHardCodedExcludePatterns();
+    }
+
     @Inject
     public void setValueStackFactory(ValueStackFactory valueStackFactory) {
         this.valueStackFactory = valueStackFactory;
@@ -494,6 +499,13 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
         return excludeParams;
     }
 
+    protected void initializeHardCodedExcludePatterns() {
+        excludeParams = new HashSet<Pattern>();
+        for (String pattern : ExcludedPatterns.EXCLUDED_PATTERNS) {
+            excludeParams.add(Pattern.compile(pattern, Pattern.CASE_INSENSITIVE));
+        }
+    }
+
     /**
      * Sets a comma-delimited list of regular expressions to match
      * parameters that should be removed from the parameter map.
@@ -503,9 +515,8 @@ public class ParametersInterceptor extends MethodFilterInterceptor {
     public void setExcludeParams(String commaDelim) {
         Collection<String> excludePatterns = ArrayUtils.asCollection(commaDelim);
         if (excludePatterns != null) {
-            excludeParams = new HashSet<Pattern>();
             for (String pattern : excludePatterns) {
-                excludeParams.add(Pattern.compile(pattern));
+                excludeParams.add(Pattern.compile(pattern, Pattern.CASE_INSENSITIVE));
             }
         }
     }


[4/5] git commit: Adds test cases to test ClassLoader pollution

Posted by lu...@apache.org.
Adds test cases to test ClassLoader pollution


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

Branch: refs/heads/hotfix/2.3.16.2
Commit: 149181a776afc94a39676a570bda72e14826476e
Parents: 6315241
Author: Lukasz Lenart <lu...@apache.org>
Authored: Thu Apr 24 19:52:03 2014 +0200
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Thu Apr 24 19:52:03 2014 +0200

----------------------------------------------------------------------
 .../interceptor/CookieInterceptorTest.java      | 66 ++++++++++++++++++++
 .../interceptor/ParametersInterceptorTest.java  | 64 +++++++++++++++++++
 2 files changed, 130 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/149181a7/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java b/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
index 2d22fac..d1014a8 100644
--- a/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
+++ b/core/src/test/java/org/apache/struts2/interceptor/CookieInterceptorTest.java
@@ -22,10 +22,12 @@
 package org.apache.struts2.interceptor;
 
 import java.util.Collections;
+import java.util.HashMap;
 import java.util.Map;
 
 import javax.servlet.http.Cookie;
 
+import com.opensymphony.xwork2.mock.MockActionInvocation;
 import org.easymock.MockControl;
 import org.springframework.mock.web.MockHttpServletRequest;
 
@@ -316,6 +318,70 @@ public class CookieInterceptorTest extends StrutsInternalTestCase {
         assertEquals(ActionContext.getContext().getValueStack().findValue("cookie3"), null);
     }
 
+    public void testCookiesWithClassPollution() throws Exception {
+        MockHttpServletRequest request = new MockHttpServletRequest();
+        String pollution1 = "model['class']['classLoader']['jarPath']";
+        String pollution2 = "model.class.classLoader.jarPath";
+        String pollution3 = "class.classLoader.jarPath";
+        String pollution4 = "class['classLoader']['jarPath']";
+        String pollution5 = "model[\"class\"]['classLoader']['jarPath']";
+        String pollution6 = "class[\"classLoader\"]['jarPath']";
+
+        request.setCookies(
+                new Cookie(pollution1, "pollution1"),
+                new Cookie("pollution1", pollution1),
+                new Cookie(pollution2, "pollution2"),
+                new Cookie("pollution2", pollution2),
+                new Cookie(pollution3, "pollution3"),
+                new Cookie("pollution3", pollution3),
+                new Cookie(pollution4, "pollution4"),
+                new Cookie("pollution4", pollution4),
+                new Cookie(pollution5, "pollution5"),
+                new Cookie("pollution5", pollution5),
+                new Cookie(pollution6, "pollution6"),
+                new Cookie("pollution6", pollution6)
+            );
+        ServletActionContext.setRequest(request);
+
+        final Map<String, Boolean> excludedName = new HashMap<String, Boolean>();
+        final Map<String, Boolean> excludedValue = new HashMap<String, Boolean>();
+
+        CookieInterceptor interceptor = new CookieInterceptor() {
+            @Override
+            protected boolean isAcceptableName(String name) {
+                boolean accepted = super.isAcceptableName(name);
+                excludedName.put(name, accepted);
+                return accepted;
+            }
+
+            @Override
+            protected boolean isAcceptableValue(String value) {
+                boolean accepted = super.isAcceptableValue(value);
+                excludedValue.put(value, accepted);
+                return accepted;
+            }
+        };
+        interceptor.setCookiesName("*");
+
+        MockActionInvocation invocation = new MockActionInvocation();
+        invocation.setAction(new MockActionWithCookieAware());
+
+        interceptor.intercept(invocation);
+
+        assertFalse(excludedName.get(pollution1));
+        assertFalse(excludedName.get(pollution2));
+        assertFalse(excludedName.get(pollution3));
+        assertFalse(excludedName.get(pollution4));
+        assertFalse(excludedName.get(pollution5));
+        assertFalse(excludedName.get(pollution6));
+
+        assertFalse(excludedValue.get(pollution1));
+        assertFalse(excludedValue.get(pollution2));
+        assertFalse(excludedValue.get(pollution3));
+        assertFalse(excludedValue.get(pollution4));
+        assertFalse(excludedValue.get(pollution5));
+        assertFalse(excludedValue.get(pollution6));
+    }
 
     public static class MockActionWithCookieAware extends ActionSupport implements CookiesAware {
 

http://git-wip-us.apache.org/repos/asf/struts/blob/149181a7/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
----------------------------------------------------------------------
diff --git a/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java b/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
index e616fb8..21c7da9 100644
--- a/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
+++ b/xwork-core/src/test/java/com/opensymphony/xwork2/interceptor/ParametersInterceptorTest.java
@@ -18,6 +18,7 @@ package com.opensymphony.xwork2.interceptor;
 import com.opensymphony.xwork2.Action;
 import com.opensymphony.xwork2.ActionContext;
 import com.opensymphony.xwork2.ActionProxy;
+import com.opensymphony.xwork2.ExcludedPatterns;
 import com.opensymphony.xwork2.ModelDrivenAction;
 import com.opensymphony.xwork2.SimpleAction;
 import com.opensymphony.xwork2.TestBean;
@@ -44,10 +45,12 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.LinkedHashMap;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
+import java.util.regex.Pattern;
 
 
 /**
@@ -184,6 +187,62 @@ public class ParametersInterceptorTest extends XWorkTestCase {
         assertNull(session.get("user5"));
     }
 
+    public void testArrayClassPollutionBlockedByPattern() throws Exception {
+        // given
+        final String pollution1 = "model.class.classLoader.jarPath";
+        final String pollution2 = "model['class']['classLoader']['jarPath']";
+        final String pollution3 = "model[\"class\"]['classLoader']['jarPath']";
+        final String pollution4 = "class.classLoader.jarPath";
+        final String pollution5 = "class['classLoader']['jarPath']";
+        final String pollution6 = "class[\"classLoader\"]['jarPath']";
+
+        loadConfigurationProviders(new XWorkConfigurationProvider(), new XmlConfigurationProvider("xwork-param-test.xml"));
+        final Map<String, Object> params = new HashMap<String, Object>() {
+            {
+                put(pollution1, "bad");
+                put(pollution2, "bad");
+                put(pollution3, "bad");
+                put(pollution4, "bad");
+                put(pollution5, "bad");
+                put(pollution6, "bad");
+            }
+        };
+
+        final Map<String, Boolean> excluded = new HashMap<String, Boolean>();
+        ParametersInterceptor pi = new ParametersInterceptor() {
+
+            @Override
+            protected void initializeHardCodedExcludePatterns() {
+                this.excludeParams = new HashSet<Pattern>();
+            }
+
+            @Override
+            protected boolean isExcluded(String paramName) {
+                boolean result = super.isExcluded(paramName);
+                excluded.put(paramName, result);
+                return result;
+            }
+
+        };
+
+        pi.setExcludeParams("(.*\\.|^|.*|\\[('|\"))class(\\.|('|\")]|\\[).*");
+        container.inject(pi);
+        ValueStack vs = ActionContext.getContext().getValueStack();
+
+        // when
+        ValidateAction action = new ValidateAction();
+        pi.setParameters(action, vs, params);
+
+        // then
+        assertEquals(0, action.getActionMessages().size());
+        assertTrue(excluded.get(pollution1));
+        assertTrue(excluded.get(pollution2));
+        assertTrue(excluded.get(pollution3));
+        assertTrue(excluded.get(pollution4));
+        assertTrue(excluded.get(pollution5));
+        assertTrue(excluded.get(pollution6));
+    }
+
     public void testAccessToOgnlInternals() throws Exception {
         // given
         Map<String, Object> params = new HashMap<String, Object>();
@@ -571,6 +630,11 @@ public class ParametersInterceptorTest extends XWorkTestCase {
         assertEquals(expected, actual);
     }
 
+    public void testExcludedPatternsGetInitialized() throws Exception {
+        ParametersInterceptor parametersInterceptor = new ParametersInterceptor();
+        assertEquals(ExcludedPatterns.EXCLUDED_PATTERNS.length, parametersInterceptor.excludeParams.size());
+    }
+
     private ValueStack injectValueStack(Map<String, Object> actual) {
         ValueStack stack = createStubValueStack(actual);
         container.inject(stack);


[5/5] git commit: Updates archetypes' version

Posted by lu...@apache.org.
Updates archetypes' version


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

Branch: refs/heads/hotfix/2.3.16.2
Commit: 986215740a0c51c4a2a2eb3e2b22c66ebeb279ed
Parents: 149181a
Author: Lukasz Lenart <lu...@apache.org>
Authored: Thu Apr 24 20:19:02 2014 +0200
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Thu Apr 24 20:19:02 2014 +0200

----------------------------------------------------------------------
 src/site/resources/archetype-catalog.xml | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/98621574/src/site/resources/archetype-catalog.xml
----------------------------------------------------------------------
diff --git a/src/site/resources/archetype-catalog.xml b/src/site/resources/archetype-catalog.xml
index d1989bb..fab8fde 100644
--- a/src/site/resources/archetype-catalog.xml
+++ b/src/site/resources/archetype-catalog.xml
@@ -7,42 +7,42 @@
         <archetype>
             <groupId>org.apache.struts</groupId>
             <artifactId>struts2-archetype-blank</artifactId>
-            <version>2.3.16.1</version>
+            <version>2.3.16.2</version>
             <repository>http://repo1.maven.org/maven2/</repository>
             <description>Struts 2 Archetypes - Blank</description>
         </archetype>
         <archetype>
             <groupId>org.apache.struts</groupId>
             <artifactId>struts2-archetype-convention</artifactId>
-            <version>2.3.16.1</version>
+            <version>2.3.16.2</version>
             <repository>http://repo1.maven.org/maven2/</repository>
             <description>Struts 2 Archetypes - Blank Convention</description>
         </archetype>
         <archetype>
             <groupId>org.apache.struts</groupId>
             <artifactId>struts2-archetype-dbportlet</artifactId>
-            <version>2.3.16.1</version>
+            <version>2.3.16.2</version>
             <repository>http://repo1.maven.org/maven2/</repository>
             <description>Struts 2 Archetypes - Database Portlet</description>
         </archetype>
         <archetype>
             <groupId>org.apache.struts</groupId>
             <artifactId>struts2-archetype-plugin</artifactId>
-            <version>2.3.16.1</version>
+            <version>2.3.16.2</version>
             <repository>http://repo1.maven.org/maven2/</repository>
             <description>Struts 2 Archetypes - Plugin</description>
         </archetype>
         <archetype>
             <groupId>org.apache.struts</groupId>
             <artifactId>struts2-archetype-portlet</artifactId>
-            <version>2.3.16.1</version>
+            <version>2.3.16.2</version>
             <repository>http://repo1.maven.org/maven2/</repository>
             <description>Struts 2 Archetypes - Portlet</description>
         </archetype>
         <archetype>
             <groupId>org.apache.struts</groupId>
             <artifactId>struts2-archetype-starter</artifactId>
-            <version>2.3.16.1</version>
+            <version>2.3.16.2</version>
             <repository>http://repo1.maven.org/maven2/</repository>
             <description>Struts 2 Archetypes - Starter</description>
         </archetype>


[2/5] git commit: Moves global exclude patterns into dedicated class

Posted by lu...@apache.org.
Moves global exclude patterns into dedicated class


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

Branch: refs/heads/hotfix/2.3.16.2
Commit: 2e2da292166adbc78c4cb1e308b30ddb4fba6d3f
Parents: a2d0ecd
Author: Lukasz Lenart <lu...@apache.org>
Authored: Thu Apr 24 19:51:02 2014 +0200
Committer: Lukasz Lenart <lu...@apache.org>
Committed: Thu Apr 24 19:51:02 2014 +0200

----------------------------------------------------------------------
 core/src/main/resources/struts-default.xml      |  8 +++----
 .../opensymphony/xwork2/ExcludedPatterns.java   | 22 ++++++++++++++++++++
 2 files changed, 26 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts/blob/2e2da292/core/src/main/resources/struts-default.xml
----------------------------------------------------------------------
diff --git a/core/src/main/resources/struts-default.xml b/core/src/main/resources/struts-default.xml
index 2f5b259..398dd43 100644
--- a/core/src/main/resources/struts-default.xml
+++ b/core/src/main/resources/struts-default.xml
@@ -197,7 +197,7 @@
                 <interceptor-ref name="multiselect"/>
                 <interceptor-ref name="actionMappingParams"/>
                 <interceptor-ref name="params">
-                    <param name="excludeParams">^class\..*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^action:.*,^method:.*</param>
+                    <param name="excludeParams">^action:.*,^method:.*</param>
                 </interceptor-ref>
                 <interceptor-ref name="conversionError"/>
                 <interceptor-ref name="deprecation"/>
@@ -253,7 +253,7 @@
                 <interceptor-ref name="checkbox"/>
                 <interceptor-ref name="multiselect"/>
                 <interceptor-ref name="params">
-                    <param name="excludeParams">^class\..*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^action:.*,^method:.*</param>
+                    <param name="excludeParams">^action:.*,^method:.*</param>
                 </interceptor-ref>
                 <interceptor-ref name="servletConfig"/>
                 <interceptor-ref name="prepare"/>
@@ -263,7 +263,7 @@
                 <interceptor-ref name="staticParams"/>
                 <interceptor-ref name="actionMappingParams"/>
                 <interceptor-ref name="params">
-                    <param name="excludeParams">^class\..*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^action:.*,^method:.*</param>
+                    <param name="excludeParams">^action:.*,^method:.*</param>
                 </interceptor-ref>
                 <interceptor-ref name="conversionError"/>
                 <interceptor-ref name="validation">
@@ -300,7 +300,7 @@
                 <interceptor-ref name="staticParams"/>
                 <interceptor-ref name="actionMappingParams"/>
                 <interceptor-ref name="params">
-                    <param name="excludeParams">^class\..*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^action:.*,^method:.*</param>
+                    <param name="excludeParams">^action:.*,^method:.*</param>
                 </interceptor-ref>
                 <interceptor-ref name="conversionError"/>
                 <interceptor-ref name="validation">

http://git-wip-us.apache.org/repos/asf/struts/blob/2e2da292/xwork-core/src/main/java/com/opensymphony/xwork2/ExcludedPatterns.java
----------------------------------------------------------------------
diff --git a/xwork-core/src/main/java/com/opensymphony/xwork2/ExcludedPatterns.java b/xwork-core/src/main/java/com/opensymphony/xwork2/ExcludedPatterns.java
new file mode 100644
index 0000000..b618a52
--- /dev/null
+++ b/xwork-core/src/main/java/com/opensymphony/xwork2/ExcludedPatterns.java
@@ -0,0 +1,22 @@
+package com.opensymphony.xwork2;
+
+/**
+ * ExcludedPatterns contains hard-coded patterns that must be rejected by {@link com.opensymphony.xwork2.interceptor.ParametersInterceptor}
+ * and partially in CookInterceptor
+ */
+public class ExcludedPatterns {
+
+    public static final String CLASS_ACCESS_PATTERN = "(.*\\.|^|.*|\\[('|\"))class(\\.|('|\")]|\\[).*";
+
+    public static final String[] EXCLUDED_PATTERNS = {
+            CLASS_ACCESS_PATTERN,
+            "^dojo\\..*",
+            "^struts\\..*",
+            "^session\\..*",
+            "^request\\..*",
+            "^application\\..*",
+            "^servlet(Request|Response)\\..*",
+            "^parameters\\..*"
+    };
+
+}