Author: ruchithf
Date: Thu Feb 8 17:59:04 2007
New Revision: 505128
URL: http://svn.apache.org/viewvc?view=rev&rev=505128
Log:
Fixed RAMPART-21. Thanks Hans for the patch
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
Modified:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java?view=diff&rev=505128&r1=505127&r2=505128
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
(original)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/PolicyBasedResultsValidator.java
Thu Feb 8 17:59:04 2007
@@ -244,13 +244,17 @@
}
boolean done = false;
if(Constants.SIGN_BEFORE_ENCRYPTING.equals(protectionOrder)) {
- boolean sigfound = false;
+ boolean sigFound = false;
for (Iterator iter = sigEncrActions.iterator();
iter.hasNext() || !done;) {
Integer act = (Integer) iter.next();
+ if(act.intValue() == WSConstants.ENCR && ! sigFound ) {
+ // We found ENCR and SIGN has not been found - break and
fail
+ break;
+ }
if(act.intValue() == WSConstants.SIGN) {
- sigfound = true;
- } else if(sigfound) {
+ sigFound = true;
+ } else if(sigFound) {
//We have an ENCR action after sig
done = true;
}
@@ -260,6 +264,10 @@
boolean encrFound = false;
for (Iterator iter = sigEncrActions.iterator(); iter.hasNext();) {
Integer act = (Integer) iter.next();
+ if(act.intValue() == WSConstants.SIGN && ! encrFound ) {
+ // We found SIGN and ENCR has not been found - break and
fail
+ break;
+ }
if(act.intValue() == WSConstants.ENCR) {
encrFound = true;
} else if(encrFound) {