You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rampart-dev@ws.apache.org by su...@apache.org on 2007/10/26 08:15:56 UTC
svn commit: r588537 - in /webservices/rampart/scratch/c/saml: include/SAML.h
src/assertion.c src/attr_stmt.c src/auth_des_stmt.c src/auth_smt.c
src/condition.c src/stmt.c src/subject.c
Author: supun
Date: Thu Oct 25 23:15:55 2007
New Revision: 588537
URL: http://svn.apache.org/viewvc?rev=588537&view=rev
Log: (empty)
Modified:
webservices/rampart/scratch/c/saml/include/SAML.h
webservices/rampart/scratch/c/saml/src/assertion.c
webservices/rampart/scratch/c/saml/src/attr_stmt.c
webservices/rampart/scratch/c/saml/src/auth_des_stmt.c
webservices/rampart/scratch/c/saml/src/auth_smt.c
webservices/rampart/scratch/c/saml/src/condition.c
webservices/rampart/scratch/c/saml/src/stmt.c
webservices/rampart/scratch/c/saml/src/subject.c
Modified: webservices/rampart/scratch/c/saml/include/SAML.h
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/include/SAML.h?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/include/SAML.h (original)
+++ webservices/rampart/scratch/c/saml/include/SAML.h Thu Oct 25 23:15:55 2007
@@ -376,88 +376,246 @@
axiom_node_t *ori_xml;
};
+AXIS2_EXTERN saml_assertion_t *AXIS2_CALL
+saml_assertion_create(axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_uninit(saml_assertion_t *assertion, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_init(saml_assertion_t *assertion, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_build(saml_assertion_t *assertion, axiom_node_t *node, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_assertion_to_om(saml_assertion_t *assertion, axiom_node_t *node, axutil_env_t *env);
-AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_assetion_get_conditions(saml_assertion_t *a, axutil_env_t *env);
-AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_assertion_get_statements(saml_assertion_t *a, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_conditions(saml_assertion_t *a, axutil_env_t *env, axutil_array_list_t *list);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_add_condition(saml_assertion_t *a, axutil_env_t *env, saml_condition_t *cond);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_remove_condition(saml_assertion_t *a, axutil_env_t *env, int index);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_statements(saml_assertion_t *a, axutil_env_t *env, axutil_array_list_t *list);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_add_statement(saml_assertion_t *a, axutil_env_t *env, saml_stmt_t *stmt);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_remove_statement(saml_assertion_t *a, axutil_env_t *env, int index);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_minor_version(saml_assertion_t *a, axutil_env_t *env, int version);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_issuer(saml_assertion_t *a, axutil_env_t *env, axis2_char_t *issuer);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_issue_instant(saml_assertion_t *a, axutil_env_t *env, axutil_date_time_t *instant);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_not_before(saml_assertion_t *a, axutil_env_t *env, axutil_date_time_t *time);
-AXIS2_EXTERN int AXIS2_CALL saml_assertion_set_not_on_or_after(saml_assertion_t *a, axutil_env_t *env, axutil_date_time_t *time);
-AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_assertion_get_issuer(saml_assertion_t *a, axutil_env_t *env);
-AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL saml_assertion_get_issue_instant(saml_assertion_t *a, axutil_env_t *env);
-AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL saml_assertion_get_not_before(saml_assertion_t *a, axutil_env_t *env);
-AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL saml_assertion_get_not_on_or_after(saml_assertion_t *a, axutil_env_t *env);
+AXIS2_EXTERN void AXIS2_CALL
+saml_assertion_free(saml_assertion_t *assertion, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_build(saml_assertion_t *assertion,
+ axiom_node_t *node, axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+saml_assertion_to_om(saml_assertion_t *assertion,
+ axiom_node_t *node, axutil_env_t *env);
+
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
+saml_assetion_get_conditions(saml_assertion_t *a, axutil_env_t *env);
+
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
+saml_assertion_get_statements(saml_assertion_t *a, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_conditions(saml_assertion_t *a,
+ axutil_env_t *env, axutil_array_list_t *list);
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_add_condition(saml_assertion_t *a,
+ axutil_env_t *env, saml_condition_t *cond);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_remove_condition(saml_assertion_t *a,
+ axutil_env_t *env, int index);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_statements(saml_assertion_t *a,
+ axutil_env_t *env, axutil_array_list_t *list);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_add_statement(saml_assertion_t *a,
+ axutil_env_t *env, saml_stmt_t *stmt);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_remove_statement(saml_assertion_t *a,
+ axutil_env_t *env, int index);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_minor_version(saml_assertion_t *a,
+ axutil_env_t *env, int version);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_issuer(saml_assertion_t *a,
+ axutil_env_t *env, axis2_char_t *issuer);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_issue_instant(saml_assertion_t *a,
+ axutil_env_t *env, axutil_date_time_t *instant);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_not_before(saml_assertion_t *a,
+ axutil_env_t *env, axutil_date_time_t *time);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_assertion_set_not_on_or_after(saml_assertion_t *a,
+ axutil_env_t *env, axutil_date_time_t *time);
+
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL
+saml_assertion_get_issuer(saml_assertion_t *a, axutil_env_t *env);
+
+AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
+saml_assertion_get_issue_instant(saml_assertion_t *a, axutil_env_t *env);
+
+AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
+saml_assertion_get_not_before(saml_assertion_t *a, axutil_env_t *env);
+
+AXIS2_EXTERN axutil_date_time_t * AXIS2_CALL
+saml_assertion_get_not_on_or_after(saml_assertion_t *a, axutil_env_t *env);
/*AXIS2_EXTERN int AXIS2_CALL saml_assertion_is_signed(saml_assertion_t *a, axutil_env_t *env);
AXIS2_EXTERN int AXIS2_CALL saml_assertion_signature_verify(saml_assertion_t *a, axutil_env_t *env, oxs_sign_ctx_t *sign_ctx);
AXIS2_EXTERN int AXIS2_CALL saml_assertion_sign(saml_assertion_t *a, axutil_env_t *env, oxs_sign_ctx_t *sign_ctx);
AXIS2_EXTERN int AXIS2_CALL saml_assertion_unsign(saml_assertion_t *a, axutil_env_t *env);*/
-AXIS2_EXTERN saml_stmt_t * AXIS2_CALL saml_stmt_create(axutil_env_t *env);
-AXIS2_EXTERN void AXIS2_CALL saml_stmt_free(saml_stmt_t *stmt, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_stmt_build(saml_stmt_t *stmt, axiom_node_t *node, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_stmt_to_om(saml_stmt_t *stmt, axiom_node_t *parent, axutil_env_t *env);
-AXIS2_EXTERN saml_stmt_type_t AXIS2_CALL saml_stmt_get_type(saml_stmt_t *stmt, axutil_env_t *env);
-AXIS2_EXTERN saml_stmt_t * AXIS2_CALL saml_stmt_get_stmt(saml_stmt_t *stmt, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_stmt_set_type(saml_stmt_t *stmt, axutil_env_t *env, saml_stmt_type_t type);
-AXIS2_EXTERN int AXIS2_CALL saml_stmt_set_stmt(saml_stmt_t *stmt, axutil_env_t *env, void *st, saml_stmt_type_t type);
+AXIS2_EXTERN saml_stmt_t * AXIS2_CALL
+saml_stmt_create(axutil_env_t *env);
+
+AXIS2_EXTERN void AXIS2_CALL
+saml_stmt_free(saml_stmt_t *stmt, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_stmt_build(saml_stmt_t *stmt, axiom_node_t *node, axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+saml_stmt_to_om(saml_stmt_t *stmt, axiom_node_t *parent, axutil_env_t *env);
+
+AXIS2_EXTERN saml_stmt_type_t AXIS2_CALL
+saml_stmt_get_type(saml_stmt_t *stmt, axutil_env_t *env);
+
+AXIS2_EXTERN saml_stmt_t * AXIS2_CALL
+saml_stmt_get_stmt(saml_stmt_t *stmt, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_stmt_set_type(saml_stmt_t *stmt, axutil_env_t *env, saml_stmt_type_t type);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_stmt_set_stmt(saml_stmt_t *stmt, axutil_env_t *env,
+ void *st, saml_stmt_type_t type);
+
/*AXIS2_EXTERN int AXIS2_CALL saml_id_init(saml_id_t *id, axutil_env_t *env);*/
AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_id_generate_random_bytes(axutil_env_t *env);
/*AXIS2_EXTERN void AXIS2_CALL saml_id_uninit(saml_id_t *id, axutil_env_t *env);*/
-AXIS2_EXTERN saml_auth_binding_t * AXIS2_CALL saml_auth_binding_create(axutil_env_t *env);
-AXIS2_EXTERN void AXIS2_CALL saml_auth_binding_free(saml_auth_binding_t *auth_bind, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_auth_binding_build(saml_auth_binding_t *auth_bind, axiom_node_t *node, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_auth_binding_to_om(saml_auth_binding_t *auth_binding, axiom_node_t *parent, axutil_env_t *env);
-AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_auth_binding_get_authoity_kind(saml_auth_binding_t *auth_binding, axutil_env_t *env);
-AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_auth_binding_get_binding(saml_auth_binding_t *auth_binding, axutil_env_t *env);
-AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_auth_binding_get_location(saml_auth_binding_t *auth_binding, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_auth_binding_set_authority_kind(saml_auth_binding_t *auth_binding, axutil_env_t *env, axis2_char_t *auth_kind);
-AXIS2_EXTERN int AXIS2_CALL saml_auth_binding_set_binding(saml_auth_binding_t *auth_binding, axutil_env_t *env, axis2_char_t *binding);
-AXIS2_EXTERN int AXIS2_CALL saml_auth_binding_set_location(saml_auth_binding_t *auth_binding, axutil_env_t *env, axis2_char_t *location);
-
-
-AXIS2_EXTERN saml_subject_locality_t * AXIS2_CALL saml_subject_locality_create(axutil_env_t *env);
-AXIS2_EXTERN void AXIS2_CALL saml_subject_locality_free(saml_subject_locality_t *sub_locality, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_locality_build(saml_subject_locality_t *sub_locality, axiom_node_t *node, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t *AXIS2_CALL saml_subject_locality_to_om(saml_subject_locality_t *sub_locality, axiom_node_t *parent, axutil_env_t *env);
-AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_subject_locality_get_ip(saml_subject_locality_t *sub_locality, axutil_env_t *env);
-AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_subject_locality_get_dns(saml_subject_locality_t *sub_locality, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_locality_set_ip(saml_subject_locality_t *sub_locality, axutil_env_t *env, axis2_char_t *ip);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_locality_set_dns(saml_subject_locality_t *sub_locality, axutil_env_t *env, axis2_char_t *dns);
-
-AXIS2_EXTERN saml_subject_t * AXIS2_CALL saml_subject_create(axutil_env_t *env);
-AXIS2_EXTERN void AXIS2_CALL saml_subject_free(saml_subject_t *subject, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_build(saml_subject_t *subject, axiom_node_t *node, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_subject_to_om(saml_subject_t *subject, axiom_node_t *parent, axutil_env_t *env);
-AXIS2_EXTERN saml_named_id_t * AXIS2_CALL saml_subject_get_named_id(saml_subject_t *subject, axutil_env_t *env);
-AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_subject_get_confirmation_methods(saml_subject_t *subject, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_subject_get_confirmation_data(saml_subject_t *subject, axutil_env_t *env);
-AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_subject_get_key_info(saml_subject_t *subject, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_set_named_id(saml_subject_t *subject, axutil_env_t *env, saml_named_id_t *named_id);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_set_confirmation_methods(saml_subject_t *subject, axutil_env_t *env, axutil_array_list_t *list);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_add_confirmation(saml_subject_t *subject, axutil_env_t *env, axis2_char_t *sub_confirmation);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_remove_subject_confiirmation(saml_subject_t *subject, axutil_env_t *env, int index);
-AXIS2_EXTERN int AXIS2_CALL saml_subject_set_key_info(saml_subject_t *subject, axutil_env_t *env, axiom_node_t *node);
+AXIS2_EXTERN saml_auth_binding_t * AXIS2_CALL
+saml_auth_binding_create(axutil_env_t *env);
+
+AXIS2_EXTERN void AXIS2_CALL
+saml_auth_binding_free(saml_auth_binding_t *auth_bind, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_auth_binding_build(saml_auth_binding_t *auth_bind,
+ axiom_node_t *node, axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+saml_auth_binding_to_om(saml_auth_binding_t *auth_binding,
+ axiom_node_t *parent, axutil_env_t *env);
+
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL
+saml_auth_binding_get_authoity_kind(saml_auth_binding_t *auth_binding,
+ axutil_env_t *env);
+
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL
+saml_auth_binding_get_binding(saml_auth_binding_t *auth_binding,
+ axutil_env_t *env);
+
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL
+saml_auth_binding_get_location(saml_auth_binding_t *auth_binding,
+ axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_auth_binding_set_authority_kind(saml_auth_binding_t *auth_binding,
+ axutil_env_t *env, axis2_char_t *auth_kind);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_auth_binding_set_binding(saml_auth_binding_t *auth_binding,
+ axutil_env_t *env, axis2_char_t *binding);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_auth_binding_set_location(saml_auth_binding_t *auth_binding,
+ axutil_env_t *env, axis2_char_t *location);
+
+
+AXIS2_EXTERN saml_subject_locality_t * AXIS2_CALL
+saml_subject_locality_create(axutil_env_t *env);
+
+AXIS2_EXTERN void AXIS2_CALL
+saml_subject_locality_free(saml_subject_locality_t *sub_locality,
+ axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_locality_build(saml_subject_locality_t *sub_locality,
+ axiom_node_t *node, axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t *AXIS2_CALL
+saml_subject_locality_to_om(saml_subject_locality_t *sub_locality,
+ axiom_node_t *parent, axutil_env_t *env);
+
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL
+saml_subject_locality_get_ip(saml_subject_locality_t *sub_locality,
+ axutil_env_t *env);
+
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL
+saml_subject_locality_get_dns(saml_subject_locality_t *sub_locality,
+ axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_locality_set_ip(saml_subject_locality_t *sub_locality,
+ axutil_env_t *env, axis2_char_t *ip);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_locality_set_dns(saml_subject_locality_t *sub_locality,
+ axutil_env_t *env, axis2_char_t *dns);
+
+
+
+AXIS2_EXTERN saml_subject_t * AXIS2_CALL
+saml_subject_create(axutil_env_t *env);
+
+AXIS2_EXTERN void AXIS2_CALL
+saml_subject_free(saml_subject_t *subject, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_build(saml_subject_t *subject,
+ axiom_node_t *node, axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+saml_subject_to_om(saml_subject_t *subject,
+ axiom_node_t *parent, axutil_env_t *env);
+
+AXIS2_EXTERN saml_named_id_t * AXIS2_CALL
+saml_subject_get_named_id(saml_subject_t *subject, axutil_env_t *env);
+
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL
+saml_subject_get_confirmation_methods(saml_subject_t *subject,
+ axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+saml_subject_get_confirmation_data(saml_subject_t *subject, axutil_env_t *env);
+
+AXIS2_EXTERN axiom_node_t * AXIS2_CALL
+saml_subject_get_key_info(saml_subject_t *subject, axutil_env_t *env);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_set_named_id(saml_subject_t *subject,
+ axutil_env_t *env, saml_named_id_t *named_id);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_set_confirmation_methods(saml_subject_t *subject,
+ axutil_env_t *env,
+ axutil_array_list_t *list);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_add_confirmation(saml_subject_t *subject,
+ axutil_env_t *env,
+ axis2_char_t *sub_confirmation);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_remove_subject_confiirmation(saml_subject_t *subject,
+ axutil_env_t *env, int index);
+
+AXIS2_EXTERN int AXIS2_CALL
+saml_subject_set_key_info(saml_subject_t *subject,
+ axutil_env_t *env, axiom_node_t *node);
+
AXIS2_EXTERN int AXIS2_CALL saml_subject_stmt_build(saml_subject_stmt_t *subject_stmt, axiom_node_t *node, axutil_env_t *env);
AXIS2_EXTERN void AXIS2_CALL saml_subject_stmt_free(saml_subject_stmt_t *subject_stmt, axutil_env_t *env);
AXIS2_EXTERN saml_subject_stmt_t * AXIS2_CALL saml_subject_stmt_create(axutil_env_t *env);
AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_subject_stmt_to_om(saml_subject_stmt_t *subject_stmt, axiom_node_t *parent, axutil_env_t *env);
+AXIS2_EXTERN int AXIS2_CALL saml_subject_stmt_set_subject(saml_subject_stmt_t *subject_stmt, axutil_env_t *env, saml_subject_t *subject);
+AXIS2_EXTERN saml_subject_t * AXIS2_CALL saml_subject_stmt_get_subject(saml_subject_stmt_t *subject_stmt, axutil_env_t *env);
AXIS2_EXTERN saml_auth_desicion_stmt_t * AXIS2_CALL saml_auth_desicion_stmt_create(axutil_env_t *env);
AXIS2_EXTERN void AXIS2_CALL saml_auth_desicion_stmt_free(saml_auth_desicion_stmt_t *auth_des_stmt, axutil_env_t *env);
@@ -517,11 +675,19 @@
AXIS2_EXTERN axiom_node_t *AXIS2_CALL saml_audi_restriction_cond_to_om(saml_audi_restriction_cond_t *cond, axiom_node_t *parent, axutil_env_t * env);
AXIS2_EXTERN void AXIS2_CALL saml_audi_restriction_cond_free(saml_audi_restriction_cond_t *arc, axutil_env_t * env);
AXIS2_EXTERN saml_audi_restriction_cond_t * AXIS2_CALL saml_audi_restriction_cond_create(axutil_env_t *env);
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_audi_restriction_cond_get_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env);
+AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_set_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env, axutil_array_list_t *list);
+AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_remove_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env, int index);
+AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_add_audience(saml_audi_restriction_cond_t *cond, axutil_env_t * env, axis2_char_t *audience);
AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_audi_restriction_cond_get_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env);
AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_set_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env, axutil_array_list_t *list);
AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_remove_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env, int index);
AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_add_audience(saml_audi_restriction_cond_t *cond, axutil_env_t * env, axis2_char_t *audience);
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_audi_restriction_cond_get_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env);
+AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_set_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env, axutil_array_list_t *list);
+AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_remove_audiences(saml_audi_restriction_cond_t *cond, axutil_env_t * env, int index);
+AXIS2_EXTERN int AXIS2_CALL saml_audi_restriction_cond_add_audience(saml_audi_restriction_cond_t *cond, axutil_env_t * env, axis2_char_t *audience);
AXIS2_EXTERN saml_action_t * AXIS2_CALL saml_action_create(axutil_env_t *env);
AXIS2_EXTERN void AXIS2_CALL saml_action_free(saml_action_t *action, axutil_env_t *env);
@@ -536,11 +702,23 @@
AXIS2_EXTERN void AXIS2_CALL saml_evidence_free(saml_evidence_t *evidence, axutil_env_t *env);
AXIS2_EXTERN int AXIS2_CALL saml_evidence_build(saml_evidence_t *evidence, axiom_node_t *node, axutil_env_t *env);
AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_evidence_to_om(saml_evidence_t *evidence, axiom_node_t *parent, axutil_env_t *env);
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_evidence_get_assertions(saml_evidence_t *evidence, axutil_env_t *env);
+AXIS2_EXTERN axutil_array_list_t * AXIS2_CALL saml_evidence_get_assertion_ids(saml_evidence_t *evidence, axutil_env_t *env);
+AXIS2_EXTERN int AXIS2_CALL saml_evidence_set_assertions(saml_evidence_t *evidence, axutil_env_t * env, axutil_array_list_t *list);
+AXIS2_EXTERN int AXIS2_CALL saml_evidence_remove_assertion(saml_evidence_t *evidence, axutil_env_t * env, int index);
+AXIS2_EXTERN int AXIS2_CALL saml_evidence_add_assertion(saml_evidence_t *evidence, axutil_env_t * env, saml_assertion_t *assertion);
+AXIS2_EXTERN int AXIS2_CALL saml_evidence_set_assertion_ids(saml_evidence_t *evidence, axutil_env_t * env, axutil_array_list_t *list);
+AXIS2_EXTERN int AXIS2_CALL saml_evidence_remove_assertion_id(saml_evidence_t *evidence, axutil_env_t * env, int index);
+AXIS2_EXTERN int AXIS2_CALL saml_evidence_add_assertion_id(saml_evidence_t *evidence, axutil_env_t * env, axis2_char_t *assertion_id);
-AXIS2_EXTERN int AXIS2_CALL saml_attr_desig_init(saml_attr_desig_t *attr_desig, axutil_env_t *env);
-AXIS2_EXTERN int AXIS2_CALL saml_attr_desig_uninit(saml_attr_desig_t *attr_desig, axutil_env_t *env);
+AXIS2_EXTERN saml_attr_desig_t * AXIS2_CALL saml_attr_desig_create(axutil_env_t *env);
+AXIS2_EXTERN void AXIS2_CALL saml_attr_desig_free(saml_attr_desig_t *attr_desig, axutil_env_t *env);
AXIS2_EXTERN int AXIS2_CALL saml_attr_desig_build(saml_attr_desig_t *attr_desig, axiom_node_t *node, axutil_env_t *env);
AXIS2_EXTERN axiom_node_t * AXIS2_CALL saml_attr_desig_to_om(saml_attr_desig_t *attr_desig, axiom_node_t *parent, axutil_env_t *env);
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_attr_desig_get_name(saml_attr_desig_t *attr_desig, axutil_env_t *env);
+AXIS2_EXTERN axis2_char_t * AXIS2_CALL saml_attr_desig_get_namespace(saml_attr_desig_t *attr_desig, axutil_env_t *env);
+AXIS2_EXTERN int AXIS2_CALL saml_attr_desig_set_name(saml_attr_desig_t *attr_desig, axutil_env_t *env, axis2_char_t *name);
+AXIS2_EXTERN int AXIS2_CALL saml_attr_desig_set_namespace(saml_attr_desig_t *attr_desig, axutil_env_t *env, axis2_char_t *name_space);
AXIS2_EXTERN saml_attr_t * AXIS2_CALL saml_attr_create(axutil_env_t *env);
AXIS2_EXTERN void AXIS2_CALL saml_attr_free(saml_attr_t *attr, axutil_env_t *env);
Modified: webservices/rampart/scratch/c/saml/src/assertion.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/assertion.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/assertion.c (original)
+++ webservices/rampart/scratch/c/saml/src/assertion.c Thu Oct 25 23:15:55 2007
@@ -18,24 +18,28 @@
#include <SAML.h>
-AXIS2_EXTERN int AXIS2_CALL
-saml_assertion_init(saml_assertion_t *assertion, axutil_env_t *env)
+AXIS2_EXTERN saml_assertion_t * AXIS2_CALL
+saml_assertion_create(axutil_env_t *env)
{
- assertion->major_version = NULL;
- assertion->minor_version = NULL;
- assertion->not_before = NULL;
- assertion->not_on_or_after = NULL;
- assertion->assertion_id = NULL;
- assertion->conditions = NULL;
- assertion->statements = axutil_array_list_create(env, (SAML_ARRAY_LIST_DEF) * 2);
- assertion->issuer = NULL;
- assertion->issue_instant = NULL;
- assertion->signature = NULL;
- return AXIS2_SUCCESS;
+ saml_assertion_t *assertion = AXIS2_MALLOC(env->allocator, sizeof(saml_assertion_t));
+ if (assertion)
+ {
+ assertion->major_version = NULL;
+ assertion->minor_version = NULL;
+ assertion->not_before = NULL;
+ assertion->not_on_or_after = NULL;
+ assertion->assertion_id = NULL;
+ assertion->conditions = NULL;
+ assertion->statements = axutil_array_list_create(env, (SAML_ARRAY_LIST_DEF) * 2);
+ assertion->issuer = NULL;
+ assertion->issue_instant = NULL;
+ assertion->signature = NULL;
+ }
+ return assertion;
}
-AXIS2_EXTERN int AXIS2_CALL
-saml_assertion_uninit(saml_assertion_t *assertion, axutil_env_t *env)
+AXIS2_EXTERN void AXIS2_CALL
+saml_assertion_free(saml_assertion_t *assertion, axutil_env_t *env)
{
int i = 0, size = 0;
if (assertion->major_version)
@@ -103,7 +107,7 @@
{
assertion->signature = NULL;
}
- return AXIS2_SUCCESS;
+ AXIS2_FREE(env->allocator, assertion);
}
AXIS2_EXTERN int AXIS2_CALL
@@ -148,7 +152,7 @@
{
cn = axiom_child_element_iterator_next(ci, env);
ce = axiom_node_get_data_element(cn, env);
- if (!axutil_strcmp(axiom_element_get_localname(ce, env), SAML_CONDITIONS))
+ if (0 == axutil_strcmp(axiom_element_get_localname(ce, env), SAML_CONDITIONS))
{
attr_val = axiom_element_get_attribute_value_by_name(ce, env, SAML_NOT_BEFORE);
if (attr_val)
@@ -167,7 +171,7 @@
assertion->conditions = axutil_array_list_create(env, SAML_ARRAY_LIST_DEF);
while(AXIS2_TRUE == axiom_child_element_iterator_has_next(cci, env))
{
- ccn = axiom_child_element_iterator_next(cci, env);
+ ccn = axiom_child_element_iterator_next(ci, env);
cond = saml_condition_create(env);
if(saml_condition_build(cond, ccn, env))
{
@@ -178,26 +182,26 @@
saml_condition_free(cond, env);
}
}
- axiom_child_element_iterator_free(cci, env);
+ /*axiom_child_element_iterator_free(cci, env);*/
}
}
- else if (!axutil_strcmp(axiom_element_get_localname(ce, env), SAML_ADVICE))
+ else if (0 == axutil_strcmp(axiom_element_get_localname(ce, env), SAML_ADVICE))
{
}
- else if (!axutil_strcmp(axiom_element_get_localname(ce, env), SAML_SIGNATURE))
+ else if (0 == axutil_strcmp(axiom_element_get_localname(ce, env), SAML_SIGNATURE))
{
assertion->signature = cn;
}
else
{
- if ((cci = axiom_element_get_child_elements(element, env, node)) != NULL)
+ /*if ((cci = axiom_element_get_child_elements(element, env, node)) != NULL)
{
while(AXIS2_TRUE == axiom_child_element_iterator_has_next(cci, env))
{
- ccn = axiom_child_element_iterator_next(cci, env);
+ ccn = axiom_child_element_iterator_next(cci, env);*/
stmt = saml_stmt_create(env);
- if(saml_stmt_build(stmt, ccn, env))
+ if(saml_stmt_build(stmt, cn, env))
{
axutil_array_list_add(assertion->statements, env, stmt);
}
@@ -205,9 +209,9 @@
{
saml_stmt_free(stmt, env);
}
- }
- axiom_child_element_iterator_free(cci, env);
- }
+ /*}*/
+ /*axiom_child_element_iterator_free(cci, env);*/
+ /*} */
}
}
}
@@ -520,32 +524,16 @@
{
return a->not_on_or_after;
}
-
/*
AXIS2_EXTERN int AXIS2_CALL
saml_assertion_unsign(saml_assertion_t *a, axutil_env_t *env)
{
- if (a->sign_ctx)
- {
- oxs_sign_ctx_free(a->sign_ctx, env);
- }
a->sign_ctx = NULL;
return AXIS2_SUCCESS;
}
AXIS2_EXTERN int AXIS2_CALL
saml_assertion_sign(saml_assertion_t *a, axutil_env_t *env, oxs_sign_ctx_t *sign_ctx)
-{
- if (a->sign_ctx)
- {
- oxs_sign_ctx_free(a->sign_ctx, env);
- }
- a->sign_ctx = sign_ctx;
- return AXIS2_SUCCESS;
-}
-
-AXIS2_EXTERN int AXIS2_CALL
-saml_assertion_sign_with_defaults(saml_assertion_t *a, axutil_env_t *env, oxs_sign_ctx_t *sign_ctx)
{
if (a->sign_ctx)
{
Modified: webservices/rampart/scratch/c/saml/src/attr_stmt.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/attr_stmt.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/attr_stmt.c (original)
+++ webservices/rampart/scratch/c/saml/src/attr_stmt.c Thu Oct 25 23:15:55 2007
@@ -17,16 +17,20 @@
#include <SAML.h>
-AXIS2_EXTERN int AXIS2_CALL
-saml_attr_desig_init(saml_attr_desig_t *attr_desig, axutil_env_t *env)
+AXIS2_EXTERN saml_attr_desig_t * AXIS2_CALL
+saml_attr_desig_create(axutil_env_t *env)
{
- attr_desig->attr_name = NULL;
- attr_desig->attr_nmsp = NULL;
- return AXIS2_SUCCESS;
+ saml_attr_desig_t *attr_desig = AXIS2_MALLOC(env->allocator, sizeof(saml_attr_desig_t));
+ if (attr_desig)
+ {
+ attr_desig->attr_name = NULL;
+ attr_desig->attr_nmsp = NULL;
+ }
+ return attr_desig;
}
-AXIS2_EXTERN int AXIS2_CALL
-saml_attr_desig_uninit(saml_attr_desig_t *attr_desig, axutil_env_t *env)
+AXIS2_EXTERN void AXIS2_CALL
+saml_attr_desig_free(saml_attr_desig_t *attr_desig, axutil_env_t *env)
{
if (attr_desig->attr_name)
{
@@ -36,7 +40,7 @@
{
AXIS2_FREE(env->allocator, attr_desig->attr_nmsp);
}
- return AXIS2_SUCCESS;
+ AXIS2_FREE(env->allocator, attr_desig);
}
AXIS2_EXTERN int AXIS2_CALL
@@ -63,10 +67,10 @@
axutil_hash_this(hi, NULL, NULL, &v);
if (v)
{
- axis2_char_t *attr_val = NULL;
+ axis2_char_t *attr_name = NULL;
axiom_attribute_t *attr = (axiom_attribute_t*)v;
- attr_val = axiom_attribute_get_value(attr, env);
- if (0 != axutil_strcmp(attr_val, SAML_ATTRIBUTE_NAME) && 0 != axutil_strcmp(attr_val, SAML_ATTRIBUTE_NAMESPACE))
+ attr_name = axiom_attribute_get_localname(attr, env);
+ if (0 != axutil_strcmp(attr_name, SAML_ATTRIBUTE_NAME) && 0 != axutil_strcmp(attr_name, SAML_ATTRIBUTE_NAMESPACE))
{
return AXIS2_FALSE;
}
Modified: webservices/rampart/scratch/c/saml/src/auth_des_stmt.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/auth_des_stmt.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/auth_des_stmt.c (original)
+++ webservices/rampart/scratch/c/saml/src/auth_des_stmt.c Thu Oct 25 23:15:55 2007
@@ -165,7 +165,7 @@
assertion = axutil_array_list_get(evidence->assertions, env, i);
if (assertion)
{
- saml_assertion_uninit(assertion, env);
+ saml_assertion_free(assertion, env);
AXIS2_FREE(env->allocator, assertion);
}
}
@@ -449,10 +449,10 @@
axutil_hash_this(hi, NULL, NULL, &v);
if (v)
{
- axis2_char_t *attr_name = NULL;
+ axis2_char_t *attr_val = NULL;
axiom_attribute_t *attr = (axiom_attribute_t*)v;
- attr_name = axiom_attribute_get_localname(attr, env);
- if (0 != axutil_strcmp(attr_name, SAML_RESOURCE) && 0 != axutil_strcmp(attr_name, SAML_DECISION))
+ attr_val = axiom_attribute_get_localname(attr, env);
+ if (0 != axutil_strcmp(attr_val, SAML_RESOURCE) && 0 != axutil_strcmp(attr_val, SAML_DECISION))
{
return AXIS2_FALSE;
}
Modified: webservices/rampart/scratch/c/saml/src/auth_smt.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/auth_smt.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/auth_smt.c (original)
+++ webservices/rampart/scratch/c/saml/src/auth_smt.c Thu Oct 25 23:15:55 2007
@@ -99,22 +99,26 @@
{
cn = axiom_child_element_iterator_next(ci, env);
ce = axiom_node_get_data_element(cn, env);
- if (strcmp(axiom_element_get_localname(ce, env), SAML_SUBJECT) == 0)
+ if (axutil_strcmp(axiom_element_get_localname(ce, env), SAML_SUBJECT) == 0)
{
auth_stmt->subject = saml_subject_create(env);
saml_subject_build(auth_stmt->subject, cn, env);
}
- else if (strcmp(axiom_element_get_localname(ce, env), SAML_SUBJECT_LOCALITY) == 0)
+ else if (axutil_strcmp(axiom_element_get_localname(ce, env), SAML_SUBJECT_LOCALITY) == 0)
{
/*auth_stmt->sub_locality = saml_subject_locality_create(env);
saml_subject_locality_build(auth_stmt->sub_locality, cn, env);*/
auth_stmt->ip = axiom_element_get_attribute_value_by_name(ce, env, SAML_IP_ADDRESS);
auth_stmt->dns = axiom_element_get_attribute_value_by_name(ce, env, SAML_DNS_ADDRESS);
}
- else if (strcmp(axiom_element_get_localname(ce, env), SAML_AUTHORITY_BINDING) == 0)
+ else if (axutil_strcmp(axiom_element_get_localname(ce, env), SAML_AUTHORITY_BINDING) == 0)
{
auth_bind = saml_auth_binding_create(env);
saml_auth_binding_build(auth_bind, cn, env);
+ if (!auth_stmt->auth_binding)
+ {
+ auth_stmt->auth_binding = axutil_array_list_create(env, SAML_ARRAY_LIST_DEF * 2);
+ }
axutil_array_list_add(auth_stmt->auth_binding, env, auth_bind);
}
else
@@ -127,7 +131,7 @@
{
return AXIS2_FAILURE;
}
- return AXIS2_FAILURE;
+ return AXIS2_SUCCESS;
}
AXIS2_EXTERN axiom_node_t *AXIS2_CALL
@@ -382,11 +386,11 @@
axiom_attribute_t *attr = (axiom_attribute_t*)v;
attr_val = axiom_attribute_get_value(attr, env);
attr_lname = axiom_attribute_get_localname(attr, env);
- if (!axutil_strcmp(attr_lname, SAML_IP_ADDRESS))
+ if (0 == axutil_strcmp(attr_lname, SAML_IP_ADDRESS))
{
sub_locality->ip = attr_val;
}
- else if (!axutil_strcmp(attr_lname, SAML_DNS_ADDRESS))
+ else if (0 == axutil_strcmp(attr_lname, SAML_DNS_ADDRESS))
{
sub_locality->dns = attr_val;
}
Modified: webservices/rampart/scratch/c/saml/src/condition.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/condition.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/condition.c (original)
+++ webservices/rampart/scratch/c/saml/src/condition.c Thu Oct 25 23:15:55 2007
@@ -206,7 +206,7 @@
return AXIS2_FAILURE;
}
locname = axiom_element_get_localname(element, env);
- if (!axutil_strcmp(locname, SAML_AUDIENCE_RESTRICTION_CONDITION))
+ if (0 == axutil_strcmp(locname, SAML_AUDIENCE_RESTRICTION_CONDITION))
{
return saml_audi_restriction_cond_build(cond->cond, node, env);
}
Modified: webservices/rampart/scratch/c/saml/src/stmt.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/stmt.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/stmt.c (original)
+++ webservices/rampart/scratch/c/saml/src/stmt.c Thu Oct 25 23:15:55 2007
@@ -66,24 +66,28 @@
return AXIS2_FAILURE;
}
locname = axiom_element_get_localname(element, env);
- if (!axutil_strcmp(locname, SAML_AUTHENTICATION_STATEMENT))
+ if (0 == strcmp(locname, SAML_AUTHENTICATION_STATEMENT))
{
stmt->stmt = saml_auth_stmt_create(env);
+ stmt->type = SAML_STMT_AUTHENTICATIONSTATEMENT;
return saml_auth_stmt_build(stmt->stmt, node, env);
}
- else if (!axutil_strcmp(locname, SAML_AUTHORIZATION_DECISION_STATEMENT))
+ else if (0 == strcmp(locname, SAML_AUTHORIZATION_DECISION_STATEMENT))
{
stmt->stmt = saml_auth_desicion_stmt_create(env);
+ stmt->type = SAML_STMT_AUTHORIZATIONDECISIONSTATEMENT;
return saml_auth_desicion_stmt_build(stmt->stmt, node,env);
}
- else if (!axutil_strcmp(locname, SAML_ATTRIBUTE_STATEMENT))
+ else if (0 == strcmp(locname, SAML_ATTRIBUTE_STATEMENT))
{
stmt->stmt = saml_attr_stmt_create(env);
+ stmt->type = SAML_STMT_ATTRIBUTESTATEMENT;
return saml_attr_stmt_build(stmt->stmt, node, env);
}
- else if (!axutil_strcmp(locname, SAML_SUBJECT_STATEMENT))
+ else if (0 == strcmp(locname, SAML_SUBJECT_STATEMENT))
{
- stmt->stmt = saml_subject_create(env);
+ stmt->stmt = saml_subject_stmt_create(env);
+ stmt->type = SAML_STMT_SUBJECTSTATEMENT;
return saml_subject_stmt_build(stmt->stmt, node, env);
}
return AXIS2_SUCCESS;
@@ -97,16 +101,16 @@
return saml_auth_stmt_to_om(stmt->stmt, parent, env);
}
else if (stmt->type == SAML_STMT_AUTHORIZATIONDECISIONSTATEMENT)
- {
+ {
return saml_auth_desicion_stmt_to_om(stmt->stmt, parent,env);
}
else if (stmt->type == SAML_STMT_ATTRIBUTESTATEMENT)
- {
+ {
return saml_attr_stmt_to_om(stmt->stmt, parent, env);
}
else if (stmt->type == SAML_STMT_SUBJECTSTATEMENT)
- {
- saml_subject_stmt_to_om(stmt->stmt, parent, env);
+ {
+ return saml_subject_stmt_to_om(stmt->stmt, parent, env);
}
return NULL;
}
Modified: webservices/rampart/scratch/c/saml/src/subject.c
URL: http://svn.apache.org/viewvc/webservices/rampart/scratch/c/saml/src/subject.c?rev=588537&r1=588536&r2=588537&view=diff
==============================================================================
--- webservices/rampart/scratch/c/saml/src/subject.c (original)
+++ webservices/rampart/scratch/c/saml/src/subject.c Thu Oct 25 23:15:55 2007
@@ -88,17 +88,17 @@
void *v = NULL;
axutil_hash_this(hi, NULL, NULL, &v);
if (v)
- {
- axis2_char_t *attr_val = NULL;
+ {
+ axis2_char_t *local_name = NULL;
axiom_attribute_t *attr = (axiom_attribute_t*)v;
- attr_val = axiom_attribute_get_value(attr, env);
- if (!axutil_strcmp(attr_val, SAML_NAME_QUALIFIER))
+ local_name = axiom_attribute_get_localname(attr, env);
+ if (0 == axutil_strcmp(local_name, SAML_NAME_QUALIFIER))
{
- named_id->name_qualifier = attr_val;
+ named_id->name_qualifier = axiom_attribute_get_value(attr, env);
}
- else if (!axutil_strcmp(attr_val, SAML_FORMAT))
+ else if (0 == axutil_strcmp(local_name, SAML_FORMAT))
{
- named_id->format = attr_val;
+ named_id->format = axiom_attribute_get_value(attr, env);
}
else
{
@@ -241,61 +241,55 @@
axutil_env_t *env)
{
axiom_element_t *element = NULL;
- axiom_child_element_iterator_t *ci = NULL;
+ axiom_node_t *cn = NULL, *ccn = NULL;
+ axiom_element_t *ce = NULL, *cce = NULL;
+ saml_auth_binding_t *auth_bind = NULL;
+ char *child_name = NULL;
+ axiom_child_element_iterator_t *ci = NULL, *cci = NULL;
+ short is_named_id = AXIS2_FALSE;
if (axiom_node_get_node_type(node, env) != AXIOM_ELEMENT || (element = (axiom_element_t *)axiom_node_get_data_element(node, env)) == NULL)
{
return AXIS2_FAILURE;
}
ci = axiom_element_get_child_elements(element, env, node);
if (ci)
- {
- axiom_node_t *child_node = NULL;
- axiom_element_t *child_element = NULL;
- saml_auth_binding_t *auth_bind = NULL;
- char *child_name = NULL;
- if (AXIS2_TRUE == axiom_child_element_iterator_has_next(ci, env))
- {
- short is_named_id = AXIS2_FALSE;
- axiom_child_element_iterator_t *conf_ci = NULL;
- axiom_node_t *conf_child_node = NULL;
- axiom_element_t *conf_child_element = NULL;
- child_node = axiom_child_element_iterator_next(ci, env);
- element = (axiom_element_t *)axiom_node_get_data_element(node, env);
- if (element != NULL && axutil_strcmp(axiom_element_get_localname(element, env), SAML_NAME_IDENTIFIER) == 0)
+ {
+ while (AXIS2_TRUE == axiom_child_element_iterator_has_next(ci, env))
+ {
+ cn = axiom_child_element_iterator_next(ci, env);
+ ce = axiom_node_get_data_element(cn, env);
+ if (0 == axutil_strcmp(axiom_element_get_localname(ce, env), SAML_NAME_IDENTIFIER))
{
if (!subject->named_id)
{
subject->named_id = saml_named_id_create(env);
}
- saml_named_id_build(subject->named_id, child_node, env);
- element = NULL;
- if (AXIS2_TRUE == axiom_child_element_iterator_has_next(ci, env))
- {
- child_node = axiom_child_element_iterator_next(ci, env);
- element = (axiom_element_t *)axiom_node_get_data_element(node, env);
- }
+ saml_named_id_build(subject->named_id, cn, env);
}
- if (element != NULL && axutil_strcmp(axiom_element_get_localname(element, env), SAML_SUBJECT_CONFIRMATION) == 0)
+ if (0 == axutil_strcmp(axiom_element_get_localname(ce, env), SAML_SUBJECT_CONFIRMATION))
{
- conf_ci = axiom_element_get_child_elements(element, env, node);
- if (conf_ci)
+ cci = axiom_element_get_child_elements(ce, env, cn);
+ if (cci)
{
- while (AXIS2_TRUE == axiom_child_element_iterator_has_next(conf_ci, env))
+ while (AXIS2_TRUE == axiom_child_element_iterator_has_next(cci, env))
{
- conf_child_node = axiom_child_element_iterator_next(conf_ci, env);
- conf_child_element = axiom_node_get_data_element(conf_child_node, env);
-
- if (0 == axutil_strcmp(axiom_element_get_localname(conf_child_element, env), SAML_CONFIRMATION_METHOD))
+ ccn = axiom_child_element_iterator_next(cci, env);
+ cce = axiom_node_get_data_element(ccn, env);
+ if (0 == axutil_strcmp(axiom_element_get_localname(cce, env), SAML_CONFIRMATION_METHOD))
{
- axutil_array_list_add(subject->confirmation_methods, env, axiom_element_get_text(conf_child_element, env, conf_child_node));
+ if (!subject->confirmation_methods)
+ {
+ subject->confirmation_methods = axutil_array_list_create(env, SAML_ARRAY_LIST_DEF);
+ }
+ axutil_array_list_add(subject->confirmation_methods, env, axiom_element_get_text(cce, env, ccn));
}
- else if (0 == axutil_strcmp(axiom_element_get_localname(conf_child_element, env), SAML_SUBJECT_CONFIRMATION_DATA))
+ else if (0 == axutil_strcmp(axiom_element_get_localname(cce, env), SAML_SUBJECT_CONFIRMATION_DATA))
{
- subject->confirmation_data = conf_child_node;
+ subject->confirmation_data = ccn;
}
- else if (0 == axutil_strcmp(axiom_element_get_localname(conf_child_element, env), SAML_KEY_INFO))
+ else if (0 == axutil_strcmp(axiom_element_get_localname(cce, env), SAML_KEY_INFO))
{
- subject->key_info = conf_child_node;
+ subject->key_info = ccn;
}
else
{