Author: kaushalye Date: Fri Aug 31 02:39:26 2007 New Revision: 571411 URL: http://svn.apache.org/viewvc?rev=571411&view=rev Log: Memory leak fixes Keep session key to decrypt the encrypted signature
Modified: webservices/rampart/trunk/c/src/omxmlsec/axiom.c webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_data.c webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c Modified: webservices/rampart/trunk/c/src/omxmlsec/axiom.c URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/axiom.c?rev=571411&r1=571410&r2=571411&view=diff ============================================================================== --- webservices/rampart/trunk/c/src/omxmlsec/axiom.c (original) +++ webservices/rampart/trunk/c/src/omxmlsec/axiom.c Fri Aug 31 02:39:26 2007 @@ -181,7 +181,7 @@ axutil_qname_t *qname = NULL; ele = axiom_node_get_data_element(node, env); - qname = axutil_qname_create(env, attribute_name, ns /*NULL*//*OXS_WSU_XMLNS*/, NULL); + qname = axutil_qname_create(env, attribute_name, ns , NULL); attribute_value = oxs_axiom_get_attribute_val_of_node_by_qname(env, node, qname); axutil_qname_free(qname, env); qname = NULL; Modified: webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_data.c URL: http://svn.apache.org/viewvc/webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_data.c?rev=571411&r1=571410&r2=571411&view=diff ============================================================================== --- webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_data.c (original) +++ webservices/rampart/trunk/c/src/omxmlsec/tokens/token_encrypted_data.c Fri Aug 31 02:39:26 2007 @@ -59,26 +59,11 @@ wsu_ns_obj = axiom_namespace_create(env, OXS_WSU_XMLNS, OXS_WSU); - if(!id){ - id = oxs_util_generate_id(env, (axis2_char_t*)OXS_ENCDATA_ID); - } - id_attr = axiom_attribute_create(env, OXS_ATTR_ID, id, NULL /*wsu_ns_obj*/); - ret = axiom_element_add_attribute(encrypted_data_ele, env, id_attr, encrypted_data_node); -#if 0 - if (id) - { - id_attr = axiom_attribute_create(env, OXS_ATTR_ID, id, NULL /*wsu_ns_obj*/); - ret = axiom_element_add_attribute(encrypted_data_ele, env, id_attr, encrypted_data_node); - } - else - { - /*TODO Get a unique value for this*/ - axis2_char_t *id = NULL; + if(!id){ id = oxs_util_generate_id(env, (axis2_char_t*)OXS_ENCDATA_ID); - id_attr = axiom_attribute_create(env, OXS_ATTR_ID, id, NULL/*wsu_ns_obj*/); - ret = axiom_element_add_attribute(encrypted_data_ele, env, id_attr, encrypted_data_node); } -#endif + id_attr = axiom_attribute_create(env, OXS_ATTR_ID, id, NULL ); + ret = axiom_element_add_attribute(encrypted_data_ele, env, id_attr, encrypted_data_node); return encrypted_data_node; 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?rev=571411&r1=571410&r2=571411&view=diff ============================================================================== --- webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c (original) +++ webservices/rampart/trunk/c/src/util/rampart_sec_header_processor.c Fri Aug 31 02:39:26 2007 @@ -434,10 +434,6 @@ id = NULL; */ - if(decrypted_sym_key){ - oxs_key_free(decrypted_sym_key, env); - decrypted_sym_key = NULL; - } AXIS2_LOG_INFO(env->log, "[rampart][shp] Node ID=%s decrypted successfuly", id); }/*end of For loop*/ @@ -448,6 +444,11 @@ /*Free*/ oxs_asym_ctx_free(asym_ctx, env); asym_ctx = NULL; + + if(decrypted_sym_key){ + oxs_key_free(decrypted_sym_key, env); + decrypted_sym_key = NULL; + } axutil_array_list_free(reference_list, env); reference_list = NULL;