You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ka...@apache.org on 2007/02/20 14:18:06 UTC
svn commit: r509549 - in /webservices/axis2/trunk/c/rampart:
include/oxs_sign_ctx.h include/oxs_sign_part.h src/omxmlsec/asym_ctx.c
src/omxmlsec/xml_signature.c test/omxmlsec/test.c
Author: kaushalye
Date: Tue Feb 20 05:18:05 2007
New Revision: 509549
URL: http://svn.apache.org/viewvc?view=rev&rev=509549
Log:
Fixed windows build break
Modified:
webservices/axis2/trunk/c/rampart/include/oxs_sign_ctx.h
webservices/axis2/trunk/c/rampart/include/oxs_sign_part.h
webservices/axis2/trunk/c/rampart/src/omxmlsec/asym_ctx.c
webservices/axis2/trunk/c/rampart/src/omxmlsec/xml_signature.c
webservices/axis2/trunk/c/rampart/test/omxmlsec/test.c
Modified: webservices/axis2/trunk/c/rampart/include/oxs_sign_ctx.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/rampart/include/oxs_sign_ctx.h?view=diff&rev=509549&r1=509548&r2=509549
==============================================================================
--- webservices/axis2/trunk/c/rampart/include/oxs_sign_ctx.h (original)
+++ webservices/axis2/trunk/c/rampart/include/oxs_sign_ctx.h Tue Feb 20 05:18:05 2007
@@ -49,68 +49,68 @@
/**********************Getter functions******************************************/
-axis2_char_t *AXIS2_CALL
+AXIS2_EXTERN axis2_char_t *AXIS2_CALL
oxs_sign_ctx_get_sign_mtd_algo(
const oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env);
-axis2_char_t *AXIS2_CALL
+AXIS2_EXTERN axis2_char_t *AXIS2_CALL
oxs_sign_ctx_get_c14n_mtd(
const oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env);
-axis2_array_list_t *AXIS2_CALL
+AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
oxs_sign_ctx_get_sign_parts(
const oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env);
-oxs_x509_cert_t *AXIS2_CALL
+AXIS2_EXTERN oxs_x509_cert_t *AXIS2_CALL
oxs_sign_ctx_get_certificate(
const oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env);
-openssl_pkey_t *AXIS2_CALL
+AXIS2_EXTERN openssl_pkey_t *AXIS2_CALL
oxs_sign_ctx_get_private_key(
const oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env);
-openssl_pkey_t *AXIS2_CALL
+AXIS2_EXTERN openssl_pkey_t *AXIS2_CALL
oxs_sign_ctx_get_public_key(
const oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env);
/**********************Setter functions******************************************/
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_ctx_set_sign_mtd_algo(
oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env,
axis2_char_t *sign_mtd_algo);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_ctx_set_c14n_mtd(
oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env,
axis2_char_t *c14n_mtd);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_ctx_set_sign_parts(
oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env,
axis2_array_list_t *sign_parts);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_ctx_set_certificate(
oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env,
oxs_x509_cert_t *certificate);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_ctx_set_private_key(
oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env,
openssl_pkey_t *prv_key);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_ctx_set_public_key(
oxs_sign_ctx_t *sign_ctx,
const axis2_env_t *env,
Modified: webservices/axis2/trunk/c/rampart/include/oxs_sign_part.h
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/rampart/include/oxs_sign_part.h?view=diff&rev=509549&r1=509548&r2=509549
==============================================================================
--- webservices/axis2/trunk/c/rampart/include/oxs_sign_part.h (original)
+++ webservices/axis2/trunk/c/rampart/include/oxs_sign_part.h Tue Feb 20 05:18:05 2007
@@ -47,46 +47,46 @@
/**********************Getter functions******************************************/
-axis2_char_t *AXIS2_CALL
+AXIS2_EXTERN axis2_char_t *AXIS2_CALL
oxs_sign_part_get_id(
const oxs_sign_part_t *sign_part,
const axis2_env_t *env);
-axis2_char_t *AXIS2_CALL
+AXIS2_EXTERN axis2_char_t *AXIS2_CALL
oxs_sign_part_get_digest_mtd(
const oxs_sign_part_t *sign_part,
const axis2_env_t *env);
-axiom_node_t *AXIS2_CALL
+AXIS2_EXTERN axiom_node_t *AXIS2_CALL
oxs_sign_part_get_node(
const oxs_sign_part_t *sign_part,
const axis2_env_t *env);
-axis2_array_list_t *AXIS2_CALL
+AXIS2_EXTERN axis2_array_list_t *AXIS2_CALL
oxs_sign_part_get_transforms(
const oxs_sign_part_t *sign_part,
const axis2_env_t *env);
/**********************Setter functions******************************************/
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_part_set_id(
oxs_sign_part_t *sign_part,
const axis2_env_t *env,
axis2_char_t *id);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_part_set_digest_mtd(
oxs_sign_part_t *sign_part,
const axis2_env_t *env,
axis2_char_t *digest_mtd);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_part_set_node(
oxs_sign_part_t *sign_part,
const axis2_env_t *env,
axiom_node_t *node);
-axis2_status_t AXIS2_CALL
+AXIS2_EXTERN axis2_status_t AXIS2_CALL
oxs_sign_part_set_transforms(
oxs_sign_part_t *sign_part,
const axis2_env_t *env,
Modified: webservices/axis2/trunk/c/rampart/src/omxmlsec/asym_ctx.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/rampart/src/omxmlsec/asym_ctx.c?view=diff&rev=509549&r1=509548&r2=509549
==============================================================================
--- webservices/axis2/trunk/c/rampart/src/omxmlsec/asym_ctx.c (original)
+++ webservices/axis2/trunk/c/rampart/src/omxmlsec/asym_ctx.c Tue Feb 20 05:18:05 2007
@@ -38,6 +38,7 @@
/*Public functions*/
+AXIS2_EXTERN
axis2_char_t *AXIS2_CALL
oxs_asym_ctx_get_file_name(
const oxs_asym_ctx_t *asym_ctx,
@@ -46,6 +47,7 @@
return asym_ctx->file_name;
}
+AXIS2_EXTERN
axis2_char_t *AXIS2_CALL
oxs_asym_ctx_get_pem_buf(
const oxs_asym_ctx_t *asym_ctx,
@@ -53,6 +55,7 @@
{
return asym_ctx->pem_buf;
}
+AXIS2_EXTERN
axis2_char_t *AXIS2_CALL
oxs_asym_ctx_get_password(
const oxs_asym_ctx_t *asym_ctx,
@@ -60,6 +63,7 @@
{
return asym_ctx->password;
}
+AXIS2_EXTERN
oxs_asym_ctx_format_t AXIS2_CALL
oxs_asym_ctx_get_format(
const oxs_asym_ctx_t *asym_ctx,
@@ -68,6 +72,7 @@
return asym_ctx->format;
}
+AXIS2_EXTERN
axis2_char_t *AXIS2_CALL
oxs_asym_ctx_get_algorithm(
const oxs_asym_ctx_t *asym_ctx,
@@ -76,6 +81,7 @@
return asym_ctx->algorithm;
}
+AXIS2_EXTERN
axis2_char_t *AXIS2_CALL
oxs_asym_ctx_get_st_ref_pattern(
const oxs_asym_ctx_t *asym_ctx,
@@ -84,6 +90,7 @@
return asym_ctx->st_ref_pattern;
}
+AXIS2_EXTERN
oxs_asym_ctx_operation_t AXIS2_CALL
oxs_asym_ctx_get_operation(
const oxs_asym_ctx_t *asym_ctx,
@@ -92,6 +99,7 @@
return asym_ctx->operation;
}
+AXIS2_EXTERN
openssl_pkey_t *AXIS2_CALL
oxs_asym_ctx_get_private_key(
const oxs_asym_ctx_t *asym_ctx,
@@ -101,6 +109,7 @@
return asym_ctx->private_key;
}
+AXIS2_EXTERN
oxs_x509_cert_t *AXIS2_CALL
oxs_asym_ctx_get_certificate(
const oxs_asym_ctx_t *asym_ctx,
@@ -110,6 +119,7 @@
return asym_ctx->certificate;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_file_name(
oxs_asym_ctx_t *asym_ctx,
@@ -126,6 +136,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_pem_buf(
oxs_asym_ctx_t *asym_ctx,
@@ -142,6 +153,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_password(
oxs_asym_ctx_t *asym_ctx,
@@ -158,6 +170,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_format(
oxs_asym_ctx_t *asym_ctx,
@@ -169,6 +182,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_algorithm(
oxs_asym_ctx_t *asym_ctx,
@@ -185,6 +199,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_st_ref_pattern(
oxs_asym_ctx_t *asym_ctx,
@@ -200,6 +215,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_operation(
oxs_asym_ctx_t *asym_ctx,
@@ -212,6 +228,7 @@
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_certificate(
oxs_asym_ctx_t *asym_ctx,
@@ -228,6 +245,7 @@
return AXIS2_SUCCESS;
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_set_private_key(
oxs_asym_ctx_t *asym_ctx,
@@ -245,7 +263,8 @@
}
-AXIS2_EXTERN oxs_asym_ctx_t *AXIS2_CALL
+AXIS2_EXTERN
+oxs_asym_ctx_t *AXIS2_CALL
oxs_asym_ctx_create(const axis2_env_t *env)
{
oxs_asym_ctx_t *asym_ctx = NULL;
@@ -272,6 +291,7 @@
}
+AXIS2_EXTERN
axis2_status_t AXIS2_CALL
oxs_asym_ctx_free(oxs_asym_ctx_t *asym_ctx,
const axis2_env_t *env)
Modified: webservices/axis2/trunk/c/rampart/src/omxmlsec/xml_signature.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/rampart/src/omxmlsec/xml_signature.c?view=diff&rev=509549&r1=509548&r2=509549
==============================================================================
--- webservices/axis2/trunk/c/rampart/src/omxmlsec/xml_signature.c (original)
+++ webservices/axis2/trunk/c/rampart/src/omxmlsec/xml_signature.c Tue Feb 20 05:18:05 2007
@@ -96,6 +96,8 @@
/*Get the node to digest*/
node = oxs_sign_part_get_node(sign_part, env);
+
+ /*Add the reference ID to the node and hence to the ds:Reference node*/
reference_node = oxs_token_build_ds_reference_element(env, parent ,NULL, uri, NULL);
@@ -126,6 +128,7 @@
tr_func = oxs_transform_get_transform_function(tr, env);
input_dtype = oxs_transform_get_input_data_type(tr, env);
+ printf("Transform required = %s", tr_id);
/*Prepare the input*/
/*If the required input type is CHAR and what we have is a NODE*/
if((input_dtype == OXS_TRANSFORM_TYPE_CHAR) && (output_dtype == OXS_TRANSFORM_TYPE_NODE)){
@@ -231,13 +234,13 @@
/*Construct the <SignedInfo> */
signed_info_node = oxs_token_build_signed_info_element(env, signature_node);
- /*Construct the <SignatureMethod> */
- sign_algo = oxs_sign_ctx_get_sign_mtd_algo(sign_ctx, env);
- signature_mtd_node = oxs_token_build_signature_method_element(env, signed_info_node, sign_algo);
-
/*Construct the <CanonicalizationMethod> */
c14n_algo = oxs_sign_ctx_get_c14n_mtd(sign_ctx, env);
c14n_mtd_node = oxs_token_build_c14n_method_element(env, signed_info_node, c14n_algo);
+
+ /*Construct the <SignatureMethod> */
+ sign_algo = oxs_sign_ctx_get_sign_mtd_algo(sign_ctx, env);
+ signature_mtd_node = oxs_token_build_signature_method_element(env, signed_info_node, sign_algo);
/*Look for signature parts*/
sign_parts = oxs_sign_ctx_get_sign_parts(sign_ctx , env);
Modified: webservices/axis2/trunk/c/rampart/test/omxmlsec/test.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/rampart/test/omxmlsec/test.c?view=diff&rev=509549&r1=509548&r2=509549
==============================================================================
--- webservices/axis2/trunk/c/rampart/test/omxmlsec/test.c (original)
+++ webservices/axis2/trunk/c/rampart/test/omxmlsec/test.c Tue Feb 20 05:18:05 2007
@@ -72,6 +72,8 @@
{
axis2_env_t *env = NULL;
axis2_char_t *filename = "input.xml";
+ axis2_char_t *certfile = "rsacert.pem";
+ axis2_char_t *prvkeyfile = "rsakey.pem";
axis2_char_t *signed_result = NULL;
axis2_status_t status = AXIS2_FAILURE;
axiom_node_t *tmpl = NULL;
@@ -108,7 +110,8 @@
/*We need C14N transform*/
tr = oxs_transforms_factory_produce_transform(env, OXS_HREF_TRANSFORM_XML_EXC_C14N);
axis2_array_list_add(tr_list, env, tr);
- oxs_sign_part_set_transforms(sign_part, env, tr_list);
+ /*oxs_sign_part_set_transforms(sign_part, env, tr_list);*/
+
/*We need to sign this node*/
status = oxs_sign_part_set_node(sign_part, env, axiom_node_get_first_element(tmpl, env));
@@ -121,14 +124,14 @@
oxs_x509_cert_t *cert = NULL;
/*Set private key*/
- prvkey = oxs_key_mgr_load_private_key_from_file(env, "rsakey.pem", "");
+ prvkey = oxs_key_mgr_load_private_key_from_file(env, prvkeyfile, "");
if(!prvkey){
printf("Cannot load private key");
}
oxs_sign_ctx_set_private_key(sign_ctx, env, prvkey);
/*TODO : Set x509 certificate. This is required to set the Key Information in ds:KeyInfo*/
- cert = oxs_key_mgr_load_x509_cert_from_pem_file(env, "rsacert.pem");
+ cert = oxs_key_mgr_load_x509_cert_from_pem_file(env, certfile);
if(!cert){
printf("Cannot load certificate");
}
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org