Author: nandana
Date: Fri Aug 28 21:25:30 2009
New Revision: 809034

URL: http://svn.apache.org/viewvc?rev=809034&view=rev
Log:
RAMPART-250 Applying the patch. Thanks Prabath

Modified:
    
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
    
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java

Modified: 
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java?rev=809034&r1=809033&r2=809034&view=diff
==============================================================================
--- 
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
 (original)
+++ 
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/BindingBuilder.java
 Fri Aug 28 21:25:30 2009
@@ -634,26 +634,27 @@
                 
                 // If a EncryptedKeyToken is used, set the correct value type 
to
                 // be used in the wsse:Reference in ds:KeyInfo
-                if(policyToken instanceof X509Token) {
-                       if (rmd.isInitiator()) {
-                           sig.setCustomTokenValueType(WSConstants.WSS_SAML_NS
-                                                 + 
WSConstants.ENC_KEY_VALUE_TYPE);
-                           
sig.setKeyIdentifierType(WSConstants.CUSTOM_SYMM_SIGNING);
-                       } else {
-                           //the tok has to be an EncryptedKey token
-                           
sig.setEncrKeySha1value(((EncryptedKeyToken)tok).getSHA1());
-                               
sig.setKeyIdentifierType(WSConstants.ENCRYPTED_KEY_SHA1_IDENTIFIER);
-                       }
-                    
-                } else {
-                                   
sig.setCustomTokenValueType(WSConstants.WSS_SAML_NS
-                                          + WSConstants.SAML_ASSERTION_ID);
-                       
sig.setKeyIdentifierType(WSConstants.CUSTOM_SYMM_SIGNING);
+                if (policyToken instanceof X509Token) {
+                    if (rmd.isInitiator()) {
+                        
sig.setCustomTokenValueType(WSConstants.SOAPMESSAGE_NS11 + "#"
+                                + WSConstants.ENC_KEY_VALUE_TYPE);
+                        
sig.setKeyIdentifierType(WSConstants.CUSTOM_SYMM_SIGNING);
+                    } else {
+                        // the tok has to be an EncryptedKey token
+                        sig.setEncrKeySha1value(((EncryptedKeyToken) 
tok).getSHA1());
+                        
sig.setKeyIdentifierType(WSConstants.ENCRYPTED_KEY_SHA1_IDENTIFIER);
+                    }
+
+                } else if (policyToken instanceof IssuedToken) {
+                    sig.setCustomTokenValueType(WSConstants.WSS_SAML_NS
+                            + WSConstants.SAML_ASSERTION_ID);
+                    sig.setKeyIdentifierType(WSConstants.CUSTOM_SYMM_SIGNING);
                 }
                 
                 String sigTokId; 
                 
                 if ( policyToken instanceof SecureConversationToken) {
+                    sig.setKeyIdentifierType(WSConstants.CUSTOM_SYMM_SIGNING);
                     OMElement ref = tok.getAttachedReference();
                     if(ref == null) {
                         ref = tok.getUnattachedReference();

Modified: 
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java
URL: 
http://svn.apache.org/viewvc/webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java?rev=809034&r1=809033&r2=809034&view=diff
==============================================================================
--- 
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java
 (original)
+++ 
webservices/rampart/branches/java/1_5/modules/rampart-core/src/main/java/org/apache/rampart/builder/SymmetricBindingBuilder.java
 Fri Aug 28 21:25:30 2009
@@ -444,8 +444,9 @@
             sigTokElem = RampartUtil.appendChildToSecHeader(rmd, 
                                                             sigTok.getToken());
             this.setInsertionLocation(sigTokElem);
-        } else if ( rmd.isInitiator() && sigToken instanceof X509Token) {
-               sigTokElem = RampartUtil.appendChildToSecHeader(rmd, 
sigTok.getToken());
+        } else if ((rmd.isInitiator() && sigToken instanceof X509Token)
+                || sigToken instanceof SecureConversationToken) {
+            sigTokElem = RampartUtil.appendChildToSecHeader(rmd, 
sigTok.getToken());
             
             //Set the insertion location
             this.setInsertionLocation(sigTokElem);


Reply via email to