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){