<?xml version="1.0"?>
<overrides>
  <!-- Constants -->
  <constant name="LASSO_SAML2_SUPPORT" value="True"/>
  <!-- Functions -->
  <func name="lasso_strerror" rename="strError"/>
  <func name="lasso_profile_is_liberty_query" rename="isLibertyQuery"/>
  <func name="lasso_profile_is_saml_query" rename="isSamlQuery"/>
  <func name="lasso_profile_get_request_type_from_soap_msg"
  	rename="lasso_get_request_type_from_soap_msg"/>
  <func name="lasso_session_get_assertions" return_owner="true">
    <param name="provider_id" optional="true"/>
  </func>
  <func name="lasso_check_version">
    <param name="major"/>
    <param name="minor"/>
    <param name="subminor"/>
    <param name="mode" optional="true" default="c:LASSO_CHECK_VERSION_NUMERIC"/>
  </func>
  <func name="lasso_saml2_encrypted_element_decrypt" skip="true"/>
  <func name="lasso_registry_default_add_direct_mapping" skip="true"/>
  <func name="lasso_registry_default_add_functional_mapping" skip="true"/>
  <func name="lasso_registry_default_get_mapping" skip="true"/>
  <!-- LassoProvider -->
  <func name="lasso_provider_get_metadata_list" return_owner="false"/>
  <!-- LassoProfile -->
  <func name="lasso_profile_get_server" skip="true"/>
  <func name="lasso_profile_get_nameIdentifier"
  	rename="lasso_profile_get_federation_nameIdentifier"
	return_owner="false" />
  <func name="lasso_profile_get_identity" return_owner="false" />
  <func name="lasso_profile_get_session" return_owner="false" />
  <func name="lasso_profile_is_identity_dirty"
  	rename="lasso_profile_has_dirty_identity"/>
  <func name="lasso_profile_is_session_dirty"
  	rename="lasso_profile_has_dirty_session"/>
  <!-- LassoWsfProfile -->
  <func name="lasso_wsf_profile_get_identity" return_owner="false" />
  <func name="lasso_wsf_profile_get_session" return_owner="false" />
  <func name="lasso_wsf_profile_get_remote_provider" skip="java,perl"/>
  <func name="lasso_data_service_get_answer" skip="java,perl"/>
  <func name="lasso_data_service_get_query_item" skip="java,perl"/>
  <func name="lasso_data_service_add_modification" skip="java,perl"/>
  <func name="lasso_data_service_get_answers" skip="java,perl"/>
  <func name="lasso_data_service_get_answers_by_select" skip="java,perl"/>
  <func name="lasso_data_service_get_answers_by_item_id" skip="java,perl"/>
  <func name="lasso_saml2_encrypted_element_decrypt" skip="true"/>
  <!-- LassoIdentity -->
  <func name="lasso_identity_get_federation" return_owner="false" />
  <func name="lasso_identity_get_svc_md_ids" return_type_qualifier="char*"/>
  <func name="lasso_identity_get_offerings" return_type_qualifier="LassoNode*">
    <param name="service_type" optional="true"/>
  </func>
  <func name="lasso_identity_get_resource_offering" return_owner="false"/>
  <!-- LassoServer -->
  <func name="lasso_server_new">
    <param name="metadata" optional="true"/>
    <param name="private_key" optional="true"/>
    <param name="private_key_password" optional="true"/>
    <param name="certificate" optional="true"/>
  </func>
  <func name="lasso_server_add_provider">
    <param name="public_key" optional="true"/>
    <param name="ca_cert_chain" optional="true"/>
  </func>
  <func name="lasso_server_get_svc_metadatas_with_id_and_type">
    <param name="svcMDIDs" type="GList*" elem_type="char*"/>
    <param name="service_type"/>
  </func>
  <func name="lasso_server_get_svc_metadatas" return_owner="false" return_type_qualifier="LassoIdWsf2DiscoSvcMetadata*"/>
  <func name="lasso_server_get_service" return_owner="false"/>
  <!-- LassoSession -->
  <func name="lasso_session_get_endpoint_reference" return_owner="false"/>
  <!-- LassoProvider -->
  <func name="lasso_provider_new">
    <param name="public_key" optional="true"/>
    <param name="ca_cert_chain" optional="true"/>
  </func>
  <!-- LassoLogin -->
  <func name="lasso_login_init_authn_request">
    <param name="remote_providerID" optional="true"/>
    <param name="http_method" optional="true" default="c:LASSO_HTTP_METHOD_REDIRECT"/>
  </func>
  <func name="lasso_login_init_request">
    <param name="response_http_method" optional="true" default="c:LASSO_HTTP_METHOD_REDIRECT"/>
  </func>
  <func name="lasso_login_init_idp_initiated_request">
    <param name="remote_providerID" optional="true"/>
  </func>
  <func name="lasso_login_build_assertion">
    <param name="authenticationMethod" optional="true"/>
    <param name="authenticationInstant" optional="true"/>
    <param name="reauthenticateOnOrAfter" optional="true"/>
    <param name="notBefore" optional="true"/>
    <param name="notOnOrAfter" optional="true"/>
  </func>
  <func name="lasso_login_process_authn_request_msg">
    <param name="authn_request_msg" optional="true"/>
  </func>
  <func name="lasso_login_build_response_msg">
    <param name="remote_providerID" optional="true"/>
  </func>
  <!-- LassoLogout -->
  <func name="lasso_logout_init_request">
    <param name="remote_providerID" optional="true"/>
    <param name="request_method" optional="true" default="c:LASSO_HTTP_METHOD_ANY"/>
  </func>
  <!-- LassoLecp -->
  <func name="lasso_lecp_init_authn_request">
    <param name="remote_providerID" optional="true"/>
  </func>
  <!-- LassoDefederation -->
  <func name="lasso_defederation_init_notification">
    <param name="remote_providerID" optional="true"/>
    <param name="http_method" optional="true" default="c:LASSO_HTTP_METHOD_ANY"/>
  </func>
  <!-- LassoNameIdManagement -->
  <func name="lasso_name_id_management_init_request">
    <param name="remote_provider_id" optional="true"/>
    <param name="new_name_id" optional="true"/>
    <param name="http_method" optional="true" default="c:LASSO_HTTP_METHOD_ANY"/>
  </func>
  <!-- LassoNameIdentifierMapping -->
  <func name="lasso_name_identifier_mapping_init_request">
    <param name="targetNamespace"/>
    <param name="remote_providerID" optional="true" />
  </func>
  <!-- LassoNameRegistration -->
  <func name="lasso_name_registration_init_request">
    <param name="remote_providerID"/>
    <param name="http_method" optional="true" default="c:LASSO_HTTP_METHOD_ANY"/>
  </func>
  <!-- LassoDiscoDescription -->
  <func name="lasso_disco_description_new_with_BriefSoapHttpDescription">
    <param name="securityMechID"/>
    <param name="endpoint"/>
    <param name="soapAction" optional="true"/>
  </func>
  <!-- LassoDstQueryItem -->
  <func name="lasso_dst_query_item_new">
    <param name="select"/>
    <param name="item_id" optional="true"/>
  </func>
  <!-- LassoDiscovery -->
  <func name="lasso_discovery_register_constructor_for_service_type" skip="true"/>
  <func name="lasso_discovery_unregister_constructor_for_service_type" skip="true"/>
  <func name="lasso_discovery_init_insert">
    <param name="new_offering"/>
    <param name="security_mech_id" optional="true"/>
  </func>
  <func name="lasso_discovery_add_requested_service_type" return_owner="false">
    <param name="service_type"/>
    <param name="option" optional="true"/>
  </func>
  <func name="lasso_discovery_process_modify_msg">
    <param name="message"/>
    <param name="security_mech_id" optional="true"/>
  </func>
  <func name="lasso_discovery_process_query_msg">
    <param name="message"/>
    <param name="security_mech_id" optional="true"/>
  </func>
  <func name="lasso_discovery_get_service">
    <param name="service_type" optional="true"/>
  </func>
  <func name="lasso_discovery_get_description_auto" return_owner="false"/>
  <func name="lasso_server_get_service" skip="unless-id-wsf" />
  <func name="lasso_login_set_encryptedResourceId" skip="unless-id-wsf"/>
  <func name="lasso_node_new_from_dump" skip="java"/>
  <func name="lasso_node_new_from_soap" skip="java"/>
  <func name="lasso_node_new_from_xmlNode" skip="java"/>
  <func name="lasso_provider_new_from_dump" skip="java"/>
  <!-- LassoServer -->
  <func name="lasso_server_get_provider" return_owner="false" />
  <func name="lasso_server_load_metadata" skip="perl,java" />
  <!-- IdWsf -->
  <arg name="abstract" rename="abstract_" language="java"/>
  <func name="lasso_personal_profile_service_new_full" rename="lasso_personal_profile_server_new_personal_profile_service_full"/>
  <func name="lasso_wsf_profile_new_full" rename="lasso_wsf_profile_wsf_profile_new_full"/>
  <func name="lasso_wsa_endpoint_reference_get_target_identity_token" skip="true"/>
  <func name="lasso_wsa_endpoint_reference_get_security_token" skip="true"/>
  <func name="lasso_wsa_endpoint_reference_associate_service_to_type" skip="true"/>
  <func name="lasso_authentication_get_type" skip="true"/>
  <func name="lasso_authentication_get_type" skip="true"/>
  <func name="lasso_authentication_new" skip="true"/>
  <func name="lasso_authentication_destroy" skip="true"/>
  <func name="lasso_authentication_client_start" skip="true"/>
  <func name="lasso_authentication_client_step" skip="true"/>
  <func name="lasso_authentication_get_mechanism_list" skip="true"/>
  <func name="lasso_authentication_init_request" skip="true"/>
  <func name="lasso_authentication_process_request_msg" skip="true"/>
  <func name="lasso_authentication_process_response_msg" skip="true"/>
  <func name="lasso_authentication_server_start" skip="true"/>
  <func name="lasso_authentication_server_step" skip="true"/>
  <struct name="LassoAuthentication" skip="true"/>
  <func name="lasso_wsse_username_token_derive_key" skip="true"/>
  <func name="lasso_wsa_endpoint_reference_add_security_token" skip="true"/>
  <func name="lasso_log_set_handler" skip="true"/>
  <func name="lasso_log_remove_handler" skip="true"/>
  <func name="lasso_key_new_for_signature_from_memory" skip="true"/>
  <func name="lasso_samlp2_extensions_get_any" skip="php5,perl,java"/>
  <func name="lasso_samlp2_extensions_set_any" skip="php5,perl,java"/>
  <func name="lasso_samlp2_extensions_get_attributes" skip="php5,perl,java"/>
  <func name="lasso_samlp2_extensions_set_attributes" skip="php5,perl,java"/>
  <!-- Xml -->
  <func name="lasso_node_export_to_soap_with_headers">
    <param name="node"/>
    <param name="headers" type="GList*" elem_type="LassoNode*"/>
  </func>
  <!-- Exceptions -->
  <exception>
    <category name="Profile"/>
    <category name="Provider"/>
    <category name="Server" parent="Provider"/>
    <category name="Login" parent="Profile"/>
    <category name="Logout" parent="Profile"/>
    <category name="Defederation" parent="Profile"/>
    <category name="NameIdentifierMapping" parent="Profile"/>
    <category name="WsfProfile" parent="Profile"/>
    <category name="Discovery" parent="WsfProfile"/>
    <category name="DataService" parent="WsfProfile"/>
    <category name="Dst" parent="WsfProfile"/>
  </exception>
</overrides>
