Author: manjula
Date: Thu Mar 29 21:37:57 2007
New Revision: 523931

URL: http://svn.apache.org/viewvc?view=rev&rev=523931
Log:
Fixing bugs for new samples to work.

Modified:
    
webservices/rampart/trunk/c/samples/secpolicy/scenario5/client-outgoing-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario6/client-outgoing-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario6/service-incoming-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario7/client-outgoing-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario7/service-incoming-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-incoming-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-outgoing-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-incoming-secpolicy.xml
    
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-outgoing-secpolicy.xml
    webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c
    webservices/rampart/trunk/c/src/util/rampart_token_builder.c
    webservices/rampart/trunk/c/src/util/rampart_token_processor.c

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario5/client-outgoing-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario5/client-outgoing-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario5/client-outgoing-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario5/client-outgoing-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -40,7 +40,7 @@
                 <rampc:EncryptionUser>a</rampc:EncryptionUser>
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
             
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_cert.cert</rampc:Certificate>
-            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_store.pfx</rampc:PrivateKey>
+            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario6/client-outgoing-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario6/client-outgoing-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario6/client-outgoing-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario6/client-outgoing-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -48,7 +48,7 @@
                 <rampc:EncryptionUser>a</rampc:EncryptionUser>
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
             
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_cert.cert</rampc:Certificate>
-            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_store.pfx</rampc:PrivateKey>
+            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario6/service-incoming-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario6/service-incoming-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario6/service-incoming-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario6/service-incoming-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -5,7 +5,7 @@
                                <wsp:Policy>
                                        <sp:InitiatorToken>
                                                <wsp:Policy>
-                                                       <sp:X509Token 
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Always";>
+                                                       <sp:X509Token 
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never";>
                                                                <wsp:Policy>
                                                                        
<sp:WssX509V3Token10/>
                                                                </wsp:Policy>
@@ -14,7 +14,7 @@
                                        </sp:InitiatorToken>
                                        <sp:RecipientToken>
                                                <wsp:Policy>
-                                                       <sp:X509Token 
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Always";>
+                                                       <sp:X509Token 
sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Never";>
                                                                <wsp:Policy>
                                                                        
<sp:WssX509V3Token10/>
                                                                </wsp:Policy>
@@ -49,6 +49,7 @@
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
                 
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_cert.cert</rampc:Certificate>
                 
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_store.pfx</rampc:PrivateKey>
+                
<rampc:ReceiverCertificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/a_cert.cert</rampc:ReceiverCertificate>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario7/client-outgoing-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario7/client-outgoing-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario7/client-outgoing-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario7/client-outgoing-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -49,6 +49,9 @@
                        <sp:EncryptedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
                                <sp:Body/>
             </sp:EncryptedParts>
+            <sp:SignedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
+                <sp:Body/>
+            </sp:SignedParts>
             <rampc:RampartConfig 
xmlns:rampc="http://ws.apache.org/rampart/c/policy";>
                 <rampc:User>Gampola</rampc:User>
                 <rampc:TimeToLive>360</rampc:TimeToLive>
@@ -57,7 +60,7 @@
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
                 
<rampc:ReceiverCertificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/b_cert.cert</rampc:ReceiverCertificate>
                 
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_cert.cert</rampc:Certificate>
-                
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_store.pfx</rampc:PrivateKey>
+                
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario7/service-incoming-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario7/service-incoming-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario7/service-incoming-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario7/service-incoming-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -50,6 +50,9 @@
                        <sp:EncryptedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
                                <sp:Body/>
             </sp:EncryptedParts>
+            <sp:SignedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
+                <sp:Body/>
+            </sp:SignedParts>
             <rampc:RampartConfig 
xmlns:rampc="http://ws.apache.org/rampart/c/policy";>
                 <rampc:User>Gampola</rampc:User>
                 <rampc:TimeToLive>360</rampc:TimeToLive>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-incoming-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-incoming-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-incoming-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-incoming-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -48,6 +48,9 @@
                        <sp:EncryptedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
                                <sp:Body/>
             </sp:EncryptedParts>
+            <sp:SignedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
+                <sp:Body/>
+            </sp:SignedParts>
             <rampc:RampartConfig 
xmlns:rampc="http://ws.apache.org/rampart/c/policy";>
                 <rampc:User>Gampola</rampc:User>
                 <rampc:TimeToLive>360</rampc:TimeToLive>
@@ -56,7 +59,7 @@
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
                 
<rampc:ReceiverCertificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/b_cert.cert</rampc:ReceiverCertificate>
                 
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_cert.cert</rampc:Certificate>
-                
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_store.pfx</rampc:PrivateKey>
+                
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-outgoing-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-outgoing-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-outgoing-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/client-outgoing-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -32,7 +32,7 @@
                                                </wsp:Policy>
                                        </sp:Layout>
                     <sp:IncludeTimestamp/>
-                    <sp:EncryptBeforeSigning>
+                    <sp:EncryptBeforeSigning/>
                                </wsp:Policy>
             </sp:AsymmetricBinding>
             <sp:Wss10 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
@@ -59,7 +59,7 @@
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
             
<rampc:ReceiverCertificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/b_cert.cert</rampc:ReceiverCertificate>
             
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_cert.cert</rampc:Certificate>
-            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_store.pfx</rampc:PrivateKey>
+            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/ahome/a_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-incoming-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-incoming-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-incoming-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-incoming-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -59,7 +59,7 @@
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
             
<rampc:ReceiverCertificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/a_cert.cert</rampc:ReceiverCertificate>
             
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_cert.cert</rampc:Certificate>
-            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_store.pfx</rampc:PrivateKey>
+            
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-outgoing-secpolicy.xml
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-outgoing-secpolicy.xml?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-outgoing-secpolicy.xml
 (original)
+++ 
webservices/rampart/trunk/c/samples/secpolicy/scenario8/service-outgoing-secpolicy.xml
 Thu Mar 29 21:37:57 2007
@@ -48,6 +48,9 @@
                        <sp:EncryptedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
                                <sp:Body/>
             </sp:EncryptedParts>
+            <sp:SignedParts 
xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy";>
+                <sp:Body/>
+            </sp:SignedParts>
             <rampc:RampartConfig 
xmlns:rampc="http://ws.apache.org/rampart/c/policy";>
                 <rampc:User>Gampola</rampc:User>
                 <rampc:TimeToLive>360</rampc:TimeToLive>
@@ -56,7 +59,7 @@
                 
<rampc:PasswordCallbackClass>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/callback/libpwcb.so</rampc:PasswordCallbackClass>
                 
<rampc:ReceiverCertificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/a_cert.cert</rampc:ReceiverCertificate>
                 
<rampc:Certificate>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_cert.cert</rampc:Certificate>
-                
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_store.pfx</rampc:PrivateKey>
+                
<rampc:PrivateKey>/home/AXIS2_USER/axis2/c/deploy/bin/samples/rampart/keys/bhome/b_key.pem</rampc:PrivateKey>
             </rampc:RampartConfig>
                </wsp:All>
        </wsp:ExactlyOne>

Modified: webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c 
(original)
+++ webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c Thu Mar 
29 21:37:57 2007
@@ -103,6 +103,28 @@
     return AXIS2_FALSE;
 }
 
+static oxs_x509_cert_t *get_receiver_x509_cert(
+                        const axis2_env_t *env,
+                        rampart_context_t *rampart_context)
+{
+
+    axis2_char_t *file_name = NULL;
+    axis2_char_t *pem_buf = NULL;
+
+    pem_buf = (axis2_char_t 
*)rampart_context_get_receiver_certificate(rampart_context,env);
+    if(pem_buf)
+    {
+        return oxs_key_mgr_load_x509_cert_from_string(env,pem_buf);
+    }        
+    else
+    {
+        file_name = 
rampart_context_get_receiver_certificate_file(rampart_context,env);
+        if(!file_name)
+            return NULL;
+        else
+            return oxs_key_mgr_load_x509_cert_from_pem_file(env,file_name);    
+    }        
+}
 
 
 static axis2_status_t
@@ -563,7 +585,7 @@
 
     /*str_node = oxs_axiom_get_first_child_node_by_name(env,key_info_node,
                             OXS_NODE_SECURITY_TOKEN_REFRENCE,NULL,NULL);*/
-
+   
     if(str_node)
     {
         str_child_node = axiom_node_get_first_element(str_node,env);
@@ -579,6 +601,8 @@
                         AXIS2_LOG_INFO(env->log,"[Rampart][shp]Token is not 
included in the message.");
                         return AXIS2_FAILURE;
                     }
+                    cert = oxs_x509_cert_create(env);
+                    status = 
rampart_token_process_direct_ref(env,str_child_node,sec_node,cert);
                 }
                 else
                 {
@@ -589,7 +613,8 @@
                             AXIS2_LOG_INFO(env->log,"[Rampart][shp]Key 
Reference Info is mismatch with policy");
                             return AXIS2_FAILURE;
                         }
-
+                        cert = oxs_x509_cert_create(env);
+                        status = 
rampart_token_process_embedded(env,str_child_node,cert);
                     }
                     else if(0 == 
axis2_strcmp(str_child_name,OXS_NODE_KEY_IDENTIFIER))
                     {
@@ -598,6 +623,8 @@
                             AXIS2_LOG_INFO(env->log,"[Rampart][shp]Key 
Reference Info is mismatch with policy");
                             return AXIS2_FAILURE;
                         }
+                        cert = get_receiver_x509_cert(env,rampart_context);
+                        status = AXIS2_SUCCESS;
                     }
                     else if(0 == 
axis2_strcmp(str_child_name,OXS_NODE_X509_DATA))
                     {
@@ -606,6 +633,8 @@
                             AXIS2_LOG_INFO(env->log,"[Rampart][shp]Key 
Reference Info is mismatch with policy");
                             return AXIS2_FAILURE;
                         }
+                        cert = get_receiver_x509_cert(env,rampart_context);
+                        status = AXIS2_SUCCESS;
                     }
                     else
                     {
@@ -613,11 +642,9 @@
                         return AXIS2_FAILURE;
                     }
                 }
-                cert = oxs_x509_cert_create(env);
-                status = 
rampart_token_process_security_token_reference(env,str_node,sec_node,cert);
                 if(status!=AXIS2_SUCCESS || !cert)
                 {
-                    AXIS2_LOG_INFO(env->log,"[Rampart][shp]Cannot load the 
message to verify the message.");
+                    AXIS2_LOG_INFO(env->log,"[Rampart][shp]Cannot load the key 
to verify the message.");
                     return AXIS2_FAILURE;
                 }
             }

Modified: webservices/rampart/trunk/c/src/util/rampart_token_builder.c
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/util/rampart_token_builder.c?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- webservices/rampart/trunk/c/src/util/rampart_token_builder.c (original)
+++ webservices/rampart/trunk/c/src/util/rampart_token_builder.c Thu Mar 29 
21:37:57 2007
@@ -129,8 +129,9 @@
     axiom_node_t *x509_issuer_serial_node = NULL;
 
     axis2_char_t *issuer = NULL;
-    axis2_char_t *serial_num = NULL;
+    /*axis2_char_t *serial_num = NULL;*/
     int serial = -1;
+    axis2_char_t serial_no[20];
 
     issuer = oxs_x509_cert_get_issuer(cert, env);
     serial = oxs_x509_cert_get_serial_number(cert, env);
@@ -139,10 +140,10 @@
         return AXIS2_FAILURE;
     }
 
-    sprintf(serial_num, "%d", serial);
+    sprintf(serial_no, "%d", serial);
     /*Build tokens*/
     x509_data_node = oxs_token_build_x509_data_element(env, parent);
-    x509_issuer_serial_node = 
oxs_token_build_x509_issuer_serial_with_data(env, x509_data_node, issuer, 
serial_num);
+    x509_issuer_serial_node = 
oxs_token_build_x509_issuer_serial_with_data(env, x509_data_node, issuer, 
serial_no);
 
     return AXIS2_SUCCESS;
 

Modified: webservices/rampart/trunk/c/src/util/rampart_token_processor.c
URL: 
http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/util/rampart_token_processor.c?view=diff&rev=523931&r1=523930&r2=523931
==============================================================================
--- webservices/rampart/trunk/c/src/util/rampart_token_processor.c (original)
+++ webservices/rampart/trunk/c/src/util/rampart_token_processor.c Thu Mar 29 
21:37:57 2007
@@ -108,8 +108,16 @@
     axis2_status_t status = AXIS2_FAILURE;
     axis2_char_t *data = NULL;
     oxs_x509_cert_t *_cert = NULL;
+    axiom_node_t *bst_node = NULL;
 
-    data = oxs_axiom_get_node_content(env, embed_node);
+    bst_node = axiom_node_get_first_element(embed_node, env);
+
+    if(!bst_node){
+        oxs_error(env, ERROR_LOCATION, OXS_ERROR_ELEMENT_FAILED, "BST element 
is not found");
+        return AXIS2_FAILURE;
+    }
+
+    data = oxs_axiom_get_node_content(env, bst_node);
     /*Process data*/
     _cert = oxs_key_mgr_load_x509_cert_from_string(env, data);
     if(_cert){


Reply via email to