You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wss4j-dev@ws.apache.org by co...@apache.org on 2009/04/21 15:47:03 UTC

svn commit: r767148 - in /webservices/wss4j/branches/1_5_x-fixes: src/org/apache/ws/security/handler/WSHandler.java test/wssec/PackageTests.java test/wssec/TestWSSecurityResultsOrder.java

Author: coheigea
Date: Tue Apr 21 13:47:02 2009
New Revision: 767148

URL: http://svn.apache.org/viewvc?rev=767148&view=rev
Log:
[WSS-147] - Backported from trunk.

Added:
    webservices/wss4j/branches/1_5_x-fixes/test/wssec/TestWSSecurityResultsOrder.java
      - copied unchanged from r767142, webservices/wss4j/trunk/test/wssec/TestWSSecurityResultsOrder.java
Modified:
    webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/handler/WSHandler.java
    webservices/wss4j/branches/1_5_x-fixes/test/wssec/PackageTests.java

Modified: webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/handler/WSHandler.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/handler/WSHandler.java?rev=767148&r1=767147&r2=767148&view=diff
==============================================================================
--- webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/handler/WSHandler.java (original)
+++ webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/handler/WSHandler.java Tue Apr 21 13:47:02 2009
@@ -299,6 +299,33 @@
 
         return true;
     }
+    
+    protected boolean checkReceiverResultsAnyOrder(Vector wsResult, Vector actions) {
+        int resultActions = wsResult.size();
+        Vector actionsClone = (Vector)actions.clone();
+        
+        for (int i = 0; i < resultActions; i++) {
+            final Integer actInt = (Integer) ((WSSecurityEngineResult) wsResult
+                    .get(i)).get(WSSecurityEngineResult.TAG_ACTION);
+            int act = actInt.intValue();
+            if (act == WSConstants.SC || act == WSConstants.BST) {
+                continue;
+            }
+            
+            int foundIndex = actionsClone.indexOf(actInt);
+            if (foundIndex == -1) {
+                return false;
+            } else {
+                actionsClone.remove(foundIndex);
+            }
+        }
+
+        if (!actionsClone.isEmpty()) {
+            return false;
+        }
+
+        return true;
+    }
 
     protected void checkSignatureConfirmation(RequestData reqData,
             Vector wsResult) throws WSSecurityException{

Modified: webservices/wss4j/branches/1_5_x-fixes/test/wssec/PackageTests.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/branches/1_5_x-fixes/test/wssec/PackageTests.java?rev=767148&r1=767147&r2=767148&view=diff
==============================================================================
--- webservices/wss4j/branches/1_5_x-fixes/test/wssec/PackageTests.java (original)
+++ webservices/wss4j/branches/1_5_x-fixes/test/wssec/PackageTests.java Tue Apr 21 13:47:02 2009
@@ -85,6 +85,7 @@
         suite.addTestSuite(TestWSSecurityKerberosTokenProfile.class);
         suite.addTestSuite(TestWSSecurityTimestamp.class);
         suite.addTestSuite(SignatureKeyValueTest.class);
+        suite.addTestSuite(TestWSSecurityResultsOrder.class);
         
         return suite;
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org