diff --git a/NEWS b/NEWS index 7f5dba28..7cfe9e1d 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,81 @@ NEWS ==== +2.4.0 - June 6th 2011 +--------------------- +93 files changed, 32160 insertions(+), 607 deletions(-) + +Minor version number increase since ABI was extended (new methods). + + - Improvements to autoconf and automake files to compile under Darwin (Mac Os + X). + - Key rollover support: + Lasso is now able to accept messages signed by any key declared as a signing + key in a metadata and not just the last one. You can also decrypt encrypted + nodes using any of a list of private keys, allowing roll-over of encryption + certificates. Signing key roll-over is automatic, your provider just have to + provide the new signing key in their metadata. For multiple-encryption key + you can load another private key than the one loaded in the LassoServer + constuctor with code like that: + + >>> import lasso + >>> server = lasso.Server(our_metadata, first_private_key_path) + >>> server.setEncryptionPrivateKey(second_private_key_path) + + See the FAQ file for the workflow of a proper key roll-over. + + - Partial logout reponse now produces a specific error code when parsed by + lasso_logout_process_response_msg() + - Bugs in lasso_assertion_query_build_request_msg() were fixed + - Processing of assertions is not stopped when checking that first level + status code is not success, so that later code can check the second level + status code. + - A new generic error for denied request was added, + LASSO_PROFILE_ERROR_REQUEST_DENIED + - A new API lasso_server_load_metadata() was added to load federation files + (XML files containing metadata from multiple providers) and to check + signatures on them. + - Better warning and errors are reported in logs when failing to load a + metadata file. + - Bugs around missing namespace declaration for dump file were fixed, it + prevented reloading dumped object (like LassoLogin). + - lasso_node_get_xml_node_for_any_type() must be able to copy the content of + an XML node to another (namespace, attribute and children). It did not, now + it is fixed. It can be used for example to add specific attribute like « + xsi:type="string" » to a Saml2AttributeValue. Here is a python snippet to do that: + + >>> import lasso + >>> a = lasso.Saml2AttributeValue() + >>> a.setOriginalXmlnode('Value') + >>> print a.debug(0) + Value + - support for symetric keys signatures: for a long time XMLDisg standard has + supported HMAC signature, or signature based on a shared secret key an hash + algorithm. Lasso now does support to share a key with another Lasso using + service or identity provider and to verify and sign SAML exchange using this + key. Performance can be 100 times more than with assymetric cryptography, + i.e. RSA. + - nodes able to hold any XML attribyte (like saml:AttributeValue) contains a + hashtable to for holding those attributes, those hashtable have a new syntax + for attributes of another namespace than the current node namespace, + inspired by the Python ElementTree library: + + {the_namespace}the_attribute_name + + ex: + + {http://www.w3.org/2001/XMLSchema-instance}type + + for the classic xsi:type attribute. + - The perfs benchmarking tools now allows to select a different metadata set + (for example to test with different public key sizes). + - Perl minimal version for the binding was downgraded to 5 + - pseudo-XSchema validation: the new XML deserializer does more to enforce + constraints of the schema defining SAML messages. It means Lasso is less + forgiving with non-conform implementation of SAML. + - a FAQ file was started. + + 2.3.6 - November 29th 2011 -------------------------- diff --git a/abi/abi-2.3.3 b/abi/abi-2.3.3 new file mode 100644 index 00000000..bd6d5799 --- /dev/null +++ b/abi/abi-2.3.3 @@ -0,0 +1,1114 @@ +BACKWARD_COMP_H +LASSO_ASSERTION_QUERY_ERROR_ATTRIBUTE_REQUEST_ALREADY_EXIST +LASSO_ASSERTION_QUERY_ERROR_NOT_AN_ATTRIBUTE_QUERY +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ASSERTION_ID +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ATTRIBUTE +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHN +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHZ_DECISION +LASSO_ASSERTION_QUERY_REQUEST_TYPE_LAST +LASSO_ASSERTION_QUERY_REQUEST_TYPE_UNSET +LASSO_CERTIFICATE_ATTRIBUTE +LASSO_CHECK_VERSIONABI_COMPATIBLE +LASSO_CHECK_VERSION_EXACT +LASSO_CHECK_VERSION_NUMERIC +LASSO_DATA_SERVICE_ERROR_CANNOT_ADD_ITEM +LASSO_DATA_SERVICE_ERROR_UNREGISTERED_DST +LASSO_DEFEDERATION_ERROR_MISSING_NAME_IDENTIFIER +LASSO_DISCOVERY_ERROR_FAILED_TO_BUILD_ENDPOINT_REFERENCE +LASSO_DISCOVERY_ERROR_MISSING_REQUESTED_SERVICE +LASSO_DISCOVERY_ERROR_SVC_METADATA_ASSOCIATION_ADD_FAILED +LASSO_DISCOVERY_ERROR_SVC_METADATA_REGISTER_FAILED +LASSO_DST_ERROR_EMPTY_REQUEST +LASSO_DST_ERROR_MALFORMED_QUERY +LASSO_DST_ERROR_MISSING_SERVICE_DATA +LASSO_DST_ERROR_MODIFY_FAILED +LASSO_DST_ERROR_MODIFY_PARTIALLY_FAILED +LASSO_DST_ERROR_NEW_DATA_MISSING +LASSO_DST_ERROR_NO_DATA +LASSO_DST_ERROR_QUERY_FAILED +LASSO_DST_ERROR_QUERY_NOT_FOUND +LASSO_DST_ERROR_QUERY_PARTIALLY_FAILED +LASSO_DS_ERROR_CA_CERT_CHAIN_LOAD_FAILED +LASSO_DS_ERROR_CERTIFICATE_LOAD_FAILED +LASSO_DS_ERROR_CONTEXT_CREATION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED_MISSING_PRIVATE_KEY +LASSO_DS_ERROR_DIGEST_COMPUTE_FAILED +LASSO_DS_ERROR_ENCRYPTION_FAILED +LASSO_DS_ERROR_INVALID_REFERENCE_FOR_SAML +LASSO_DS_ERROR_INVALID_SIGALG +LASSO_DS_ERROR_INVALID_SIGNATURE +LASSO_DS_ERROR_KEYS_MNGR_CREATION_FAILED +LASSO_DS_ERROR_KEYS_MNGR_INIT_FAILED +LASSO_DS_ERROR_PRIVATE_KEY_LOAD_FAILED +LASSO_DS_ERROR_PUBLIC_KEY_LOAD_FAILED +LASSO_DS_ERROR_SIGNATURE_FAILED +LASSO_DS_ERROR_SIGNATURE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TEMPLATE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TMPL_CREATION_FAILED +LASSO_DS_ERROR_SIGNATURE_VERIFICATION_FAILED +LASSO_DS_ERROR_TOO_MUCH_REFERENCES +LASSO_DS_HREF +LASSO_DS_PREFIX +LASSO_DURATION_DAY +LASSO_DURATION_HOUR +LASSO_DURATION_MINUTE +LASSO_DURATION_WEEK +LASSO_ECP_HREF +LASSO_ECP_PREFIX +LASSO_ENCRYPTION_MODE_ASSERTION +LASSO_ENCRYPTION_MODE_NAMEID +LASSO_ENCRYPTION_MODE_NONE +LASSO_ENCRYPTION_SYM_KEY_TYPE_3DES +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_128 +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_256 +LASSO_ENCRYPTION_SYM_KEY_TYPE_DEFAULT +LASSO_ERROR_CAST_FAILED +LASSO_ERROR_OUT_OF_MEMORY +LASSO_ERROR_UNDEFINED +LASSO_ERROR_UNIMPLEMENTED +LASSO_HTTP_METHOD_ANY +LASSO_HTTP_METHOD_ARTIFACT_GET +LASSO_HTTP_METHOD_ARTIFACT_POST +LASSO_HTTP_METHOD_GET +LASSO_HTTP_METHOD_IDP_INITIATED +LASSO_HTTP_METHOD_LAST +LASSO_HTTP_METHOD_NONE +LASSO_HTTP_METHOD_PAOS +LASSO_HTTP_METHOD_POST +LASSO_HTTP_METHOD_REDIRECT +LASSO_HTTP_METHOD_SOAP +LASSO_IDWSF2_DISCOVERY_ERROR_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_FAILED +LASSO_IDWSF2_DISCOVERY_ERROR_FORBIDDEN +LASSO_IDWSF2_DISCOVERY_ERROR_LOGICAL_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_NOT_FOUND +LASSO_IDWSF2_DISCOVERY_ERROR_NO_RESULTS +LASSO_IDWSF2_DST_ERROR_DUPLICATE_ITEM +LASSO_IDWSF2_DST_ERROR_ITEM_NOT_FOUND +LASSO_IDWSF2_DST_ERROR_PARTIAL_FAILURE +LASSO_IDWSF2_DST_ERROR_UNKNOWN_STATUS_CODE +LASSO_LASSO_HREF +LASSO_LASSO_PREFIX +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD_PROTECTED_TRANSPORT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PREVIOUS_SESSION +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SOFTWARE_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_TIME_SYNC_TOKEN +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_BETTER +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_EXACT +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MAXIMUM +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MINIMUM +LASSO_LIB_CONSENT_INAPPLICABLE +LASSO_LIB_CONSENT_OBTAINED +LASSO_LIB_CONSENT_OBTAINED_CURRENT_EXPLICIT +LASSO_LIB_CONSENT_OBTAINED_CURRENT_IMPLICIT +LASSO_LIB_CONSENT_OBTAINED_PRIOR +LASSO_LIB_CONSENT_UNAVAILABLE +LASSO_LIB_HREF +LASSO_LIB_MAJOR_VERSION_N +LASSO_LIB_MINOR_VERSION_N +LASSO_LIB_NAMEID_POLICY_TYPE_ANY +LASSO_LIB_NAMEID_POLICY_TYPE_FEDERATED +LASSO_LIB_NAMEID_POLICY_TYPE_NONE +LASSO_LIB_NAMEID_POLICY_TYPE_ONE_TIME +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENTITYID +LASSO_LIB_NAME_IDENTIFIER_FORMAT_FEDERATED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ONE_TIME +LASSO_LIB_PREFIX +LASSO_LIB_PROTOCOL_PROFILE_BRWS_ART +LASSO_LIB_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LIB_PROTOCOL_PROFILE_BRWS_POST +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_NIM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_SOAP +LASSO_LIB_STATUS_CODE_FEDERATION_DOES_NOT_EXIST +LASSO_LIB_STATUS_CODE_INVALID_ASSERTION_CONSUMER_SERVICE_INDEX +LASSO_LIB_STATUS_CODE_INVALID_SIGNATURE +LASSO_LIB_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_LIB_STATUS_CODE_NO_AVAILABLEIDP +LASSO_LIB_STATUS_CODE_NO_PASSIVE +LASSO_LIB_STATUS_CODE_NO_SUPPORTEDIDP +LASSO_LIB_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_LIB_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_LIB_STATUS_CODE_UNSIGNED_AUTHN_REQUEST +LASSO_LIB_STATUS_CODE_UNSUPPORTED_PROFILE +LASSO_LOGIN_ERROR_ASSERTION_DOES_NOT_MATCH_REQUEST_ID +LASSO_LOGIN_ERROR_ASSERTION_REPLAY +LASSO_LOGIN_ERROR_CONSENT_NOT_OBTAINED +LASSO_LOGIN_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGIN_ERROR_INVALID_ASSERTION_SIGNATURE +LASSO_LOGIN_ERROR_INVALID_NAMEIDPOLICY +LASSO_LOGIN_ERROR_INVALID_SIGNATURE +LASSO_LOGIN_ERROR_NO_DEFAULT_ENDPOINT +LASSO_LOGIN_ERROR_REQUEST_DENIED +LASSO_LOGIN_ERROR_STATUS_NOT_SUCCESS +LASSO_LOGIN_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGIN_ERROR_UNSIGNED_AUTHN_REQUEST +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_ART +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_POST +LASSO_LOGIN_PROTOCOL_PROFILE_REDIRECT +LASSO_LOGOUT_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGOUT_ERROR_REQUEST_DENIED +LASSO_LOGOUT_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGOUT_ERROR_UNSUPPORTED_PROFILE +LASSO_MD_PROTOCOL_TYPE_ARTIFACT_RESOLUTION +LASSO_MD_PROTOCOL_TYPE_ASSERTION_ID_REQUEST +LASSO_MD_PROTOCOL_TYPE_ATTRIBUTE +LASSO_MD_PROTOCOL_TYPE_AUTHN_QUERY +LASSO_MD_PROTOCOL_TYPE_AUTHZ +LASSO_MD_PROTOCOL_TYPE_FEDERATION_TERMINATION +LASSO_MD_PROTOCOL_TYPE_LAST +LASSO_MD_PROTOCOL_TYPE_MANAGE_NAME_ID +LASSO_MD_PROTOCOL_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_MD_PROTOCOL_TYPE_REGISTER_NAME_IDENTIFIER +LASSO_MD_PROTOCOL_TYPE_SINGLE_LOGOUT +LASSO_MD_PROTOCOL_TYPE_SINGLE_SIGN_ON +LASSO_MESSAGE_FORMAT_BASE64 +LASSO_MESSAGE_FORMAT_ERROR +LASSO_MESSAGE_FORMAT_QUERY +LASSO_MESSAGE_FORMAT_SOAP +LASSO_MESSAGE_FORMAT_UNKNOWN +LASSO_MESSAGE_FORMAT_XML +LASSO_MESSAGE_FORMAT_XSCHEMA_ERROR +LASSO_METADATA_HREF +LASSO_METADATA_PREFIX +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_FORBIDDEN_CALL_ON_THIS_SIDE +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_IDENTIFIER +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_NAMESPACE +LASSO_PAOS_HREF +LASSO_PAOS_PREFIX +LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ +LASSO_PARAM_ERROR_CHECK_FAILED +LASSO_PARAM_ERROR_INVALID_VALUE +LASSO_PARAM_ERROR_NON_INITIALIZED_OBJECT +LASSO_PRIVATE_KEY_ATTRIBUTE +LASSO_PRIVATE_KEY_PASSWORD_ATTRIBUTE +LASSO_PRIVATE_STATUS_CODE_FAILED_TO_RESTORE_ARTIFACT +LASSO_PROFILE_ERROR_BAD_IDENTITY_DUMP +LASSO_PROFILE_ERROR_BAD_SESSION_DUMP +LASSO_PROFILE_ERROR_BUILDING_MESSAGE_FAILED +LASSO_PROFILE_ERROR_BUILDING_QUERY_FAILED +LASSO_PROFILE_ERROR_BUILDING_REQUEST_FAILED +LASSO_PROFILE_ERROR_BUILDING_RESPONSE_FAILED +LASSO_PROFILE_ERROR_CANNOT_FIND_A_PROVIDER +LASSO_PROFILE_ERROR_CANNOT_VERIFY_SIGNATURE +LASSO_PROFILE_ERROR_FEDERATION_NOT_FOUND +LASSO_PROFILE_ERROR_IDENTITY_NOT_FOUND +LASSO_PROFILE_ERROR_INVALID_ARTIFACT +LASSO_PROFILE_ERROR_INVALID_ASSERTION +LASSO_PROFILE_ERROR_INVALID_ASSERTION_CONDITIONS +LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD +LASSO_PROFILE_ERROR_INVALID_ISSUER +LASSO_PROFILE_ERROR_INVALID_MSG +LASSO_PROFILE_ERROR_INVALID_POST_MSG +LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE +LASSO_PROFILE_ERROR_INVALID_QUERY +LASSO_PROFILE_ERROR_INVALID_REQUEST +LASSO_PROFILE_ERROR_INVALID_RESPONSE +LASSO_PROFILE_ERROR_INVALID_SOAP_MSG +LASSO_PROFILE_ERROR_ISSUER_IS_NOT_AN_IDP +LASSO_PROFILE_ERROR_MISSING_ARTIFACT +LASSO_PROFILE_ERROR_MISSING_ASSERTION +LASSO_PROFILE_ERROR_MISSING_ENCRYPTION_PRIVATE_KEY +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE_ADDRESS +LASSO_PROFILE_ERROR_MISSING_ISSUER +LASSO_PROFILE_ERROR_MISSING_NAME_IDENTIFIER +LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID +LASSO_PROFILE_ERROR_MISSING_REQUEST +LASSO_PROFILE_ERROR_MISSING_RESOURCE_OFFERING +LASSO_PROFILE_ERROR_MISSING_RESPONSE +LASSO_PROFILE_ERROR_MISSING_SERVER +LASSO_PROFILE_ERROR_MISSING_SERVICE_DESCRIPTION +LASSO_PROFILE_ERROR_MISSING_SERVICE_INSTANCE +LASSO_PROFILE_ERROR_MISSING_SERVICE_TYPE +LASSO_PROFILE_ERROR_MISSING_STATUS_CODE +LASSO_PROFILE_ERROR_MISSING_SUBJECT +LASSO_PROFILE_ERROR_NAME_IDENTIFIER_NOT_FOUND +LASSO_PROFILE_ERROR_RESPONSE_DOES_NOT_MATCH_REQUEST +LASSO_PROFILE_ERROR_SESSION_NOT_FOUND +LASSO_PROFILE_ERROR_STATUS_NOT_SUCCESS +LASSO_PROFILE_ERROR_UNKNOWN_ISSUER +LASSO_PROFILE_ERROR_UNKNOWN_PROFILE_URL +LASSO_PROFILE_ERROR_UNKNOWN_PROVIDER +LASSO_PROFILE_ERROR_UNSUPPORTED_BINDING +LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE +LASSO_PROFILE_SIGNATURE_HINT_FORBID +LASSO_PROFILE_SIGNATURE_HINT_FORCE +LASSO_PROFILE_SIGNATURE_HINT_MAYBE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_FORCE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_IGNORE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_LAST +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_MAYBE +LASSO_PROTOCOL_LIBERTY_1_0 +LASSO_PROTOCOL_LIBERTY_1_1 +LASSO_PROTOCOL_LIBERTY_1_2 +LASSO_PROTOCOL_NONE +LASSO_PROTOCOL_SAML_2_0 +LASSO_PROVIDER_ERROR_MISSING_PUBLIC_KEY +LASSO_PROVIDER_ROLE_ANY +LASSO_PROVIDER_ROLE_ATTRIBUTE_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHN_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHZ_AUTHORITY +LASSO_PROVIDER_ROLE_BOTH +LASSO_PROVIDER_ROLE_IDP +LASSO_PROVIDER_ROLE_LAST +LASSO_PROVIDER_ROLE_NONE +LASSO_PROVIDER_ROLE_SP +LASSO_PYTHON_HREF +LASSO_REGISTRY_ERROR_KEY_EXISTS +LASSO_REQUEST_TYPE_DEFEDERATION +LASSO_REQUEST_TYPE_DISCO_MODIFY +LASSO_REQUEST_TYPE_DISCO_QUERY +LASSO_REQUEST_TYPE_DST_MODIFY +LASSO_REQUEST_TYPE_DST_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_ASSOCIATION_ADD +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_REGISTER +LASSO_REQUEST_TYPE_INVALID +LASSO_REQUEST_TYPE_LECP +LASSO_REQUEST_TYPE_LOGIN +LASSO_REQUEST_TYPE_LOGOUT +LASSO_REQUEST_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_REQUEST_TYPE_NAME_ID_MANAGEMENT +LASSO_REQUEST_TYPE_NAME_REGISTRATION +LASSO_REQUEST_TYPE_SASL_REQUEST +LASSO_SAML2_ACTION_GHPP_GET +LASSO_SAML2_ACTION_GHPP_HEAD +LASSO_SAML2_ACTION_GHPP_POST +LASSO_SAML2_ACTION_GHPP_PUT +LASSO_SAML2_ACTION_NAMESPACE_GHPP +LASSO_SAML2_ACTION_NAMESPACE_RWEDC +LASSO_SAML2_ACTION_NAMESPACE_RWEDC_NEGATION +LASSO_SAML2_ACTION_NAMESPACE_UNIX +LASSO_SAML2_ACTION_RWEDC_CONTROL +LASSO_SAML2_ACTION_RWEDC_DELETE +LASSO_SAML2_ACTION_RWEDC_EXECUTE +LASSO_SAML2_ACTION_RWEDC_NEGATION +LASSO_SAML2_ACTION_RWEDC_READ +LASSO_SAML2_ACTION_RWEDC_WRITE +LASSO_SAML2_ASSERTION_HREF +LASSO_SAML2_ASSERTION_INDETERMINATE +LASSO_SAML2_ASSERTION_INVALID +LASSO_SAML2_ASSERTION_PREFIX +LASSO_SAML2_ASSERTION_VALID +LASSO_SAML2_ATTRIBUTE_NAME_EPR +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_BASIC +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_UNSPECIFIED +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_URI +LASSO_SAML2_ATTRIBUTE_PROFILE_BASIC +LASSO_SAML2_ATTRIBUTE_PROFILE_DCE +LASSO_SAML2_ATTRIBUTE_PROFILE_UUID +LASSO_SAML2_ATTRIBUTE_PROFILE_X500 +LASSO_SAML2_AUTHN_CONTEXT_AUTHENTICATED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_KERBEROS +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_NOMAD_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD_PROTECTED_TRANSPORT +LASSO_SAML2_AUTHN_CONTEXT_PERSONALIZED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PGP +LASSO_SAML2_AUTHN_CONTEXT_PREVIOUS_SESSION +LASSO_SAML2_AUTHN_CONTEXT_SECURE_REMOTE_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD_PKI +LASSO_SAML2_AUTHN_CONTEXT_SOFTWARE_PKI +LASSO_SAML2_AUTHN_CONTEXT_SPKI +LASSO_SAML2_AUTHN_CONTEXT_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_TIME_SYNC_TOKEN +LASSO_SAML2_AUTHN_CONTEXT_TLS_CLIENT +LASSO_SAML2_AUTHN_CONTEXT_UNSPECIFIED +LASSO_SAML2_AUTHN_CONTEXT_X509 +LASSO_SAML2_AUTHN_CONTEXT_XMLDSIG +LASSO_SAML2_CONFIRMATION_METHOD_BEARER +LASSO_SAML2_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML2_CONSENT_EXPLICIT +LASSO_SAML2_CONSENT_IMPLICIT +LASSO_SAML2_CONSENT_INAPPLICABLE +LASSO_SAML2_CONSENT_OBTAINED +LASSO_SAML2_CONSENT_PRIOR +LASSO_SAML2_CONSENT_UNAVAILABLE +LASSO_SAML2_DEFLATE_ENCODING +LASSO_SAML2_FIELD_ARTIFACT +LASSO_SAML2_FIELD_ENCODING +LASSO_SAML2_FIELD_RELAYSTATE +LASSO_SAML2_FIELD_REQUEST +LASSO_SAML2_FIELD_RESPONSE +LASSO_SAML2_FIELD_SIGALG +LASSO_SAML2_FIELD_SIGNATURE +LASSO_SAML2_METADATA_BINDING_ARTIFACT +LASSO_SAML2_METADATA_BINDING_PAOS +LASSO_SAML2_METADATA_BINDING_POST +LASSO_SAML2_METADATA_BINDING_REDIRECT +LASSO_SAML2_METADATA_BINDING_SOAP +LASSO_SAML2_METADATA_BINDING_URI +LASSO_SAML2_METADATA_HREF +LASSO_SAML2_METADATA_PREFIX +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_EMAIL +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENTITY +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_KERBEROS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_PERSISTENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_TRANSIENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_UNSPECIFIED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_WINDOWS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_X509 +LASSO_SAML2_PROTOCOL_HREF +LASSO_SAML2_PROTOCOL_PREFIX +LASSO_SAML2_STATUS_CODE_AUTHN_FAILED +LASSO_SAML2_STATUS_CODE_INVALID_ATTR_NAME +LASSO_SAML2_STATUS_CODE_INVALID_NAME_ID_POLICY +LASSO_SAML2_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_SAML2_STATUS_CODE_NO_AVAILABLE_IDP +LASSO_SAML2_STATUS_CODE_NO_PASSIVE +LASSO_SAML2_STATUS_CODE_NO_SUPPORTED_IDP +LASSO_SAML2_STATUS_CODE_PARTIAL_LOGOUT +LASSO_SAML2_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_SAML2_STATUS_CODE_REQUESTER +LASSO_SAML2_STATUS_CODE_REQUEST_DENIED +LASSO_SAML2_STATUS_CODE_REQUEST_UNSUPPORTED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML2_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML2_STATUS_CODE_RESPONDER +LASSO_SAML2_STATUS_CODE_SUCCESS +LASSO_SAML2_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML2_STATUS_CODE_UNKNOWN_ATTR_PROFILE +LASSO_SAML2_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_SAML2_STATUS_CODE_UNSUPPORTED_BINDING +LASSO_SAML2_STATUS_CODE_VERSION_MISMATCH +LASSO_SAML_ASSERTION_HREF +LASSO_SAML_ASSERTION_PREFIX +LASSO_SAML_AUTHENTICATION_METHODS_PKI +LASSO_SAML_AUTHENTICATION_METHOD_HARDWARE_TOKEN +LASSO_SAML_AUTHENTICATION_METHOD_KERBEROS +LASSO_SAML_AUTHENTICATION_METHOD_LIBERTY +LASSO_SAML_AUTHENTICATION_METHOD_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_PGP +LASSO_SAML_AUTHENTICATION_METHOD_SECURE_REMOTE_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_SMARTCARD_PKI +LASSO_SAML_AUTHENTICATION_METHOD_SOFTWARE_PKI +LASSO_SAML_AUTHENTICATION_METHOD_UNSPECIFIED +LASSO_SAML_AUTHENTICATION_METHOD_XKMS +LASSO_SAML_AUTHENTICATION_METHOD_XMLD_SIG +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT01 +LASSO_SAML_CONFIRMATION_METHOD_BEARER +LASSO_SAML_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML_CONFIRMATION_METHOD_SENDER_VOUCHES +LASSO_SAML_MAJOR_VERSION_N +LASSO_SAML_MINOR_VERSION_N +LASSO_SAML_PROTOCOL_HREF +LASSO_SAML_PROTOCOL_PREFIX +LASSO_SAML_STATUS_CODE_REQUESTER +LASSO_SAML_STATUS_CODE_REQUEST_DENIED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML_STATUS_CODE_RESPONDER +LASSO_SAML_STATUS_CODE_SUCCESS +LASSO_SAML_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML_STATUS_CODE_VERSION_MISMATCH +LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED +LASSO_SERVER_ERROR_ADD_PROVIDER_PROTOCOL_MISMATCH +LASSO_SERVER_ERROR_INVALID_XML +LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND +LASSO_SERVER_ERROR_SET_ENCRYPTION_PRIVATE_KEY_FAILED +LASSO_SIGNATURE_METHOD_ATTRIBUTE +LASSO_SIGNATURE_METHOD_DSA_SHA1 +LASSO_SIGNATURE_METHOD_LAST +LASSO_SIGNATURE_METHOD_RSA_SHA1 +LASSO_SIGNATURE_TYPE_ATTRIBUTE +LASSO_SIGNATURE_TYPE_LAST +LASSO_SIGNATURE_TYPE_NONE +LASSO_SIGNATURE_TYPE_SIMPLE +LASSO_SIGNATURE_TYPE_WITHX509 +LASSO_SOAP_ENV_ACTOR +LASSO_SOAP_ENV_HREF +LASSO_SOAP_ENV_PREFIX +LASSO_SOAP_ERROR_MISSING_BODY +LASSO_SOAP_ERROR_MISSING_ENVELOPE +LASSO_SOAP_ERROR_MISSING_HEADER +LASSO_SOAP_ERROR_MISSING_SOAP_FAULT_DETAIL +LASSO_SOAP_ERROR_REDIRECT_REQUEST_FAULT +LASSO_SOAP_FAULT_CODE_CLIENT +LASSO_SOAP_FAULT_CODE_MUST_UNDERSTAND +LASSO_SOAP_FAULT_CODE_SERVER +LASSO_SOAP_FAULT_CODE_VERSION_MISMATCH +LASSO_SOAP_FAULT_REDIRECT_REQUEST +LASSO_WSF_ENABLED +LASSO_WSF_PROFILE_ERROR_INVALID_OR_MISSING_REFERENCE_TO_MESSAGE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_ASSERTION_ID +LASSO_WSF_PROFILE_ERROR_MISSING_CORRELATION +LASSO_WSF_PROFILE_ERROR_MISSING_CREDENTIAL_REF +LASSO_WSF_PROFILE_ERROR_MISSING_DESCRIPTION +LASSO_WSF_PROFILE_ERROR_MISSING_ENDPOINT +LASSO_WSF_PROFILE_ERROR_MISSING_RESOURCE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_SECURITY +LASSO_WSF_PROFILE_ERROR_MISSING_SENDER_ID +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST_UNSUPPORTED_BY_REQUESTER +LASSO_WSF_PROFILE_ERROR_SECURITY_MECHANISM_CHECK_FAILED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED_FOR_DATA +LASSO_WSF_PROFILE_ERROR_SOAP_FAULT +LASSO_WSF_PROFILE_ERROR_UNKNOWN_STATUS_CODE +LASSO_WSF_PROFILE_ERROR_UNSUPPORTED_SECURITY_MECHANISM +LASSO_WSSEC_ERROR_BAD_PASSWORD +LASSO_WSSEC_ERROR_MISSING_SECURITY_TOKEN +LASSO_WSUTIL1_HREF +LASSO_WSUTIL1_PREFIX +LASSO_XML_ERROR_ATTR_NOT_FOUND +LASSO_XML_ERROR_ATTR_VALUE_NOT_FOUND +LASSO_XML_ERROR_INVALID_FILE +LASSO_XML_ERROR_MISSING_NAMESPACE +LASSO_XML_ERROR_NODE_CONTENT_NOT_FOUND +LASSO_XML_ERROR_NODE_NOT_FOUND +LASSO_XML_ERROR_OBJECT_CONSTRUCTION_FAILED +LASSO_XML_ERROR_SCHEMA_INVALID_FRAGMENT +LASSO_XSI_HREF +LASSO_XSI_PREFIX +struct LassoAssertionQuery { LassoAssertionQueryPrivate* private_data } +LassoAssertionQueryRequestType +LassoCheckVersionMode +struct LassoDefederation { } +struct LassoDsKeyInfo { LassoDsKeyValue* KeyValue } +struct LassoDsKeyValue { LassoDsRsaKeyValue* RSAKeyValue } +struct LassoDsRsaKeyValue { char* Modulus, char* Exponent } +struct LassoEcp { gchar* assertionConsumerURL, LassoEcpPrivate* private_data } +LassoEncryptionMode +LassoEncryptionSymKeyType +struct LassoFederation { gchar* remote_providerID, LassoNode* local_nameIdentifier, LassoNode* remote_nameIdentifier, LassoFederationPrivate* private_data } +LassoHttpMethod +struct LassoIdentity { GHashTable* federations, gboolean is_dirty, LassoIdentityPrivate* private_data } +struct LassoLecp { LassoLibAuthnRequestEnvelope* authnRequestEnvelope, LassoLibAuthnResponseEnvelope* authnResponseEnvelope, char* assertionConsumerServiceURL } +struct LassoLibAssertion { char* InResponseTo } +struct LassoLibAuthenticationStatement { LassoLibAuthnContext* AuthnContext, char* ReauthenticateOnOrAfter, char* SessionIndex } +struct LassoLibAuthnContext { char* AuthnContextClassRef, char* AuthnContextStatementRef } +struct LassoLibAuthnRequest { GList* Extension, char* ProviderID, char* AffiliationID, char* NameIDPolicy, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolProfile, char* AssertionConsumerServiceID, LassoLibRequestAuthnContext* RequestAuthnContext, char* RelayState, LassoLibScoping* Scoping, char* consent } +struct LassoLibAuthnRequestEnvelope { GList* Extension, LassoLibAuthnRequest* AuthnRequest, char* ProviderID, char* ProviderName, char* AssertionConsumerServiceURL, LassoLibIDPList* IDPList, gboolean IsPassive } +struct LassoLibAuthnResponse { GList* Extension, char* ProviderID, char* RelayState, char* consent } +struct LassoLibAuthnResponseEnvelope { GList* Extension, LassoLibAuthnResponse* AuthnResponse, char* AssertionConsumerServiceURL } +struct LassoLibFederationTerminationNotification { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* consent, char* RelayState } +struct LassoLibIDPEntries { GList* IDPEntry } +struct LassoLibIDPEntry { char* ProviderID, char* ProviderName, char* Loc } +struct LassoLibIDPList { LassoLibIDPEntries* IDPEntries, char* GetComplete } +struct LassoLibLogoutRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* SessionIndex, char* RelayState, char* consent, char* NotOnOrAfter } +struct LassoLibLogoutResponse { } +struct LassoLibNameIdentifierMappingRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* TargetNamespace, char* consent } +struct LassoLibNameIdentifierMappingResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, LassoSamlNameIdentifier* NameIdentifier } +struct LassoLibRegisterNameIdentifierRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* IDPProvidedNameIdentifier, LassoSamlNameIdentifier* SPProvidedNameIdentifier, LassoSamlNameIdentifier* OldProvidedNameIdentifier, char* RelayState } +struct LassoLibRegisterNameIdentifierResponse { } +struct LassoLibRequestAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextStatementRef, char* AuthnContextComparison } +struct LassoLibScoping { int ProxyCount, LassoLibIDPList* IDPList } +struct LassoLibStatusResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, char* RelayState } +struct LassoLibSubject { LassoSamlNameIdentifier* IDPProvidedNameIdentifier } +struct LassoLogin { LassoLoginProtocolProfile protocolProfile, gchar* assertionArtifact, LassoSamlAssertion* assertion, gchar* nameIDPolicy, LassoHttpMethod http_method, LassoLoginPrivate* private_data } +LassoLoginProtocolProfile +struct LassoLogout { LassoNode* initial_request, LassoNode* initial_response, gchar* initial_remote_providerID, gint providerID_index, LassoHttpMethod initial_http_request_method, LassoLogoutPrivate* private_data } +LassoMdProtocolType +LassoMessageFormat +struct LassoMiscTextNode { char* content, char* name, char* ns_href, char* ns_prefix, gboolean text_child } +struct LassoNameIdManagement { } +struct LassoNameIdentifierMapping { gchar* targetNameIdentifier } +struct LassoNameRegistration { LassoSamlNameIdentifier* oldNameIdentifier } +struct LassoNode { } +struct LassoProfile { LassoServer* server, LassoNode* request, LassoNode* response, LassoNode* nameIdentifier, gchar* remote_providerID, gchar* msg_url, gchar* msg_body, gchar* msg_relayState, LassoIdentity* identity, LassoSession* session, LassoHttpMethod http_request_method, gint signature_status, LassoProfilePrivate* private_data } +LassoProfileSignatureHint +LassoProfileSignatureVerifyHint +LassoProtocolConformance +struct LassoProvider { gchar* ProviderID, LassoProviderRole role, char* metadata_filename, gchar* public_key, gchar* ca_cert_chain, LassoProviderPrivate* private_data } +LassoProviderRole +LassoRequestType +struct LassoSaml2Action { char* content, char* Namespace } +struct LassoSaml2Advice { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2Assertion { LassoSaml2NameID* Issuer, LassoSaml2Subject* Subject, LassoSaml2Conditions* Conditions, LassoSaml2Advice* Advice, GList* Statement, GList* AuthnStatement, GList* AuthzDecisionStatement, GList* AttributeStatement, char* Version, char* ID, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file, gboolean encryption_activated, char* encryption_public_key_str, LassoEncryptionSymKeyType encryption_sym_key_type } +LassoSaml2AssertionValidationState +struct LassoSaml2Attribute { GList* AttributeValue, char* Name, char* NameFormat, char* FriendlyName } +struct LassoSaml2AttributeStatement { GList* Attribute, GList* EncryptedAttribute } +struct LassoSaml2AttributeValue { GList* any } +struct LassoSaml2AudienceRestriction { char* Audience } +struct LassoSaml2AuthnContext { char* AuthnContextClassRef, char* AuthnContextDeclRef, char* AuthenticatingAuthority } +struct LassoSaml2AuthnStatement { LassoSaml2SubjectLocality* SubjectLocality, LassoSaml2AuthnContext* AuthnContext, char* AuthnInstant, char* SessionIndex, char* SessionNotOnOrAfter } +struct LassoSaml2AuthzDecisionStatement { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource, char* Decision } +struct LassoSaml2BaseIDAbstract { char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2ConditionAbstract { } +struct LassoSaml2Conditions { GList* Condition, GList* AudienceRestriction, GList* OneTimeUse, GList* ProxyRestriction, char* NotBefore, char* NotOnOrAfter } +struct LassoSaml2EncryptedElement { xmlNode* EncryptedData, GList* EncryptedKey, LassoNode* original_data } +struct LassoSaml2Evidence { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2KeyInfoConfirmationData { } +struct LassoSaml2NameID { char* content, char* Format, char* SPProvidedID, char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2OneTimeUse { } +struct LassoSaml2ProxyRestriction { char* Audience, char* Count } +struct LassoSaml2StatementAbstract { } +struct LassoSaml2Subject { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmation* SubjectConfirmation } +struct LassoSaml2SubjectConfirmation { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmationData* SubjectConfirmationData, char* Method } +struct LassoSaml2SubjectConfirmationData { char* NotBefore, char* NotOnOrAfter, char* Recipient, char* InResponseTo, char* Address } +struct LassoSaml2SubjectLocality { char* Address, char* DNSName } +struct LassoSamlAdvice { GList* AssertionIDReference, LassoNode* Assertion } +struct LassoSamlAssertion { LassoSamlConditions* Conditions, LassoSamlAdvice* Advice, LassoSamlSubjectStatement* SubjectStatement, LassoSamlAuthenticationStatement* AuthenticationStatement, LassoSamlAttributeStatement* AttributeStatement, int MajorVersion, int MinorVersion, char* AssertionID, char* Issuer, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlAttribute { gchar* attributeName, gchar* attributeNameSpace, GList* AttributeValue } +struct LassoSamlAttributeDesignator { char* AttributeName, char* AttributeNamespace } +struct LassoSamlAttributeStatement { GList* Attribute } +struct LassoSamlAttributeValue { GList* any } +struct LassoSamlAudienceRestrictionCondition { GList* Audience } +struct LassoSamlAuthenticationStatement { LassoSamlSubjectLocality* SubjectLocality, GList* AuthorityBinding, char* AuthenticationMethod, char* AuthenticationInstant } +struct LassoSamlAuthorityBinding { char* AuthorityKind, char* Location, char* Binding } +struct LassoSamlConditionAbstract { } +struct LassoSamlConditions { GList* Condition, GList* AudienceRestrictionCondition, char* NotBefore, char* NotOnOrAfter } +struct LassoSamlNameIdentifier { char* NameQualifier, char* Format, char* content } +struct LassoSamlStatementAbstract { } +struct LassoSamlSubject { LassoSamlNameIdentifier* NameIdentifier, LassoSamlSubjectConfirmation* SubjectConfirmation, LassoSaml2EncryptedElement* EncryptedNameIdentifier } +struct LassoSamlSubjectConfirmation { GList* ConfirmationMethod, char* SubjectConfirmationData, LassoDsKeyInfo* KeyInfo } +struct LassoSamlSubjectLocality { char* IPAddress, char* DNSAddress } +struct LassoSamlSubjectStatement { } +struct LassoSamlSubjectStatementAbstract { LassoSamlSubject* Subject } +struct LassoSamlp2ArtifactResolve { char* Artifact } +struct LassoSamlp2ArtifactResponse { LassoNode* any } +struct LassoSamlp2AssertionIDRequest { char* AssertionIDRef } +struct LassoSamlp2AttributeQuery { GList* Attribute } +struct LassoSamlp2AuthnQuery { LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, char* SessionIndex } +struct LassoSamlp2AuthnRequest { LassoSaml2Subject* Subject, LassoSamlp2NameIDPolicy* NameIDPolicy, LassoSaml2Conditions* Conditions, LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, LassoSamlp2Scoping* Scoping, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolBinding, int AssertionConsumerServiceIndex, char* AssertionConsumerServiceURL, int AttributeConsumingServiceIndex, char* ProviderName, G_GNUC_DEPRECATED char } +struct LassoSamlp2AuthzDecisionQuery { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource } +struct LassoSamlp2Extensions { } +struct LassoSamlp2IDPEntry { char* ProviderID, char* Name, char* Loc } +struct LassoSamlp2IDPList { LassoSamlp2IDPEntry* IDPEntry, char* GetComplete } +struct LassoSamlp2LogoutRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* SessionIndex, char* Reason, char* NotOnOrAfter, G_GNUC_DEPRECATED char } +struct LassoSamlp2LogoutResponse { G_GNUC_DEPRECATED char } +struct LassoSamlp2ManageNameIDRequest { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* NewID, LassoSaml2EncryptedElement* NewEncryptedID, LassoSamlp2Terminate* Terminate } +struct LassoSamlp2ManageNameIDResponse { } +struct LassoSamlp2NameIDMappingRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSamlp2NameIDPolicy* NameIDPolicy } +struct LassoSamlp2NameIDMappingResponse { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID } +struct LassoSamlp2NameIDPolicy { char* Format, char* SPNameQualifier, gboolean AllowCreate } +struct LassoSamlp2RequestAbstract { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, char* ID, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2RequestedAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextDeclRef, char* Comparison } +struct LassoSamlp2Response { GList* Assertion, GList* EncryptedAssertion } +struct LassoSamlp2Scoping { LassoSamlp2IDPList* IDPList, char* RequesterID, char* ProxyCount } +struct LassoSamlp2Status { LassoSamlp2StatusCode* StatusCode, char* StatusMessage, LassoSamlp2StatusDetail* StatusDetail } +struct LassoSamlp2StatusCode { LassoSamlp2StatusCode* StatusCode, char* Value } +struct LassoSamlp2StatusDetail { } +struct LassoSamlp2StatusResponse { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, LassoSamlp2Status* Status, char* ID, char* InResponseTo, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2SubjectQueryAbstract { LassoSaml2Subject* Subject } +struct LassoSamlp2Terminate { } +struct LassoSamlpRequest { char* AssertionArtifact } +struct LassoSamlpRequestAbstract { GList* RespondWith, char* RequestID, int MajorVersion, int MinorVersion, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpResponse { LassoSamlpStatus* Status, GList* Assertion } +struct LassoSamlpResponseAbstract { char* ResponseID, char* InResponseTo, int MajorVersion, int MinorVersion, char* IssueInstant, char* Recipient, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpStatus { LassoSamlpStatusCode* StatusCode, char* StatusMessage } +struct LassoSamlpStatusCode { LassoSamlpStatusCode* StatusCode, char* Value } +struct LassoServer { GHashTable* providers, GHashTable* services, gchar* private_key, gchar* private_key_password, gchar* certificate, LassoSignatureMethod signature_method, LassoServerPrivate* private_data } +struct LassoSession { GHashTable* assertions, gboolean is_dirty, LassoSessionPrivate* private_data } +LassoSignatureMethod +LassoSignatureType +struct LassoSoapBody { GList* any, gchar* Id } +struct LassoSoapDetail { GList* any } +struct LassoSoapEnvelope { LassoSoapHeader* Header, LassoSoapBody* Body } +struct LassoSoapFault { gchar* faultcode, gchar* faultstring, GList* faultactor, LassoSoapDetail* Detail } +struct LassoSoapHeader { GList* Other } +lasso_error_t lasso_assertion_query_add_attribute_request ( LassoAssertionQuery* assertion_query, char* format, char* name ) +lasso_error_t lasso_assertion_query_build_request_msg ( LassoAssertionQuery* assertion_query ) +lasso_error_t lasso_assertion_query_build_response_msg ( LassoAssertionQuery* assertion_query ) +None lasso_assertion_query_destroy ( LassoAssertionQuery* assertion_query ) +LassoAssertionQueryRequestType lasso_assertion_query_get_request_type ( LassoAssertionQuery* assertion_query ) +GType lasso_assertion_query_get_type ( ) +lasso_error_t lasso_assertion_query_init_request ( LassoAssertionQuery* assertion_query, char* remote_provider_id, LassoHttpMethod http_method, LassoAssertionQueryRequestType query_request_type ) +LassoAssertionQuery* lasso_assertion_query_new ( LassoServer* server ) +lasso_error_t lasso_assertion_query_process_request_msg ( LassoAssertionQuery* assertion_query, gchar* request_msg ) +lasso_error_t lasso_assertion_query_process_response_msg ( LassoAssertionQuery* assertion_query, gchar* response_msg ) +lasso_error_t lasso_assertion_query_validate_request ( LassoAssertionQuery* assertion_query ) +char* lasso_build_unique_id ( unsigned int size ) +int lasso_check_version ( int major, int minor, int subminor, LassoCheckVersionMode mode ) +lasso_error_t lasso_defederation_build_notification_msg ( LassoDefederation* defederation ) +None lasso_defederation_destroy ( LassoDefederation* defederation ) +GType lasso_defederation_get_type ( ) +lasso_error_t lasso_defederation_init_notification ( LassoDefederation* defederation, gchar* remote_providerID, LassoHttpMethod http_method ) +LassoDefederation* lasso_defederation_new ( LassoServer* server ) +lasso_error_t lasso_defederation_process_notification_msg ( LassoDefederation* defederation, gchar* notification_msg ) +lasso_error_t lasso_defederation_validate_notification ( LassoDefederation* defederation ) +GType lasso_ds_key_info_get_type ( ) +LassoDsKeyInfo* lasso_ds_key_info_new ( ) +GType lasso_ds_key_value_get_type ( ) +LassoDsKeyValue* lasso_ds_key_value_new ( ) +GType lasso_ds_rsa_key_value_get_type ( ) +LassoDsRsaKeyValue* lasso_ds_rsa_key_value_new ( ) +None lasso_ecp_destroy ( LassoEcp* ecp ) +GType lasso_ecp_get_type ( ) +LassoEcp* lasso_ecp_new ( LassoServer* server ) +lasso_error_t lasso_ecp_process_authn_request_msg ( LassoEcp* ecp, const char* authn_request_msg ) +lasso_error_t lasso_ecp_process_response_msg ( LassoEcp* ecp, const char* response_msg ) +None lasso_federation_build_local_name_identifier ( LassoFederation* federation, const gchar* nameQualifier, const gchar* format, const gchar* content ) +None lasso_federation_destroy ( LassoFederation* federation ) +GType lasso_federation_get_type ( ) +LassoFederation* lasso_federation_new ( const gchar* remote_providerID ) +gboolean lasso_federation_verify_name_identifier ( LassoFederation* federation, LassoNode* name_identifier ) +char* lasso_get_prefix_for_dst_service_href ( const char* href ) +gchar* lasso_get_prefix_for_idwsf2_dst_service_href ( const gchar* href ) +None lasso_identity_destroy ( LassoIdentity* identity ) +gchar* lasso_identity_dump ( LassoIdentity* identity ) +LassoFederation* lasso_identity_get_federation ( LassoIdentity* identity, const char* providerID ) +GType lasso_identity_get_type ( ) +LassoIdentity* lasso_identity_new ( ) +LassoIdentity* lasso_identity_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_init ( ) +lasso_error_t lasso_lecp_build_authn_request_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_request_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_msg ( LassoLecp* lecp ) +None lasso_lecp_destroy ( LassoLecp* lecp ) +GType lasso_lecp_get_type ( ) +lasso_error_t lasso_lecp_init_authn_request ( LassoLecp* lecp, const char* remote_providerID ) +LassoLecp* lasso_lecp_new ( LassoServer* server ) +lasso_error_t lasso_lecp_process_authn_request_envelope_msg ( LassoLecp* lecp, const char* request_msg ) +lasso_error_t lasso_lecp_process_authn_request_msg ( LassoLecp* lecp, const char* authn_request_msg ) +lasso_error_t lasso_lecp_process_authn_response_envelope_msg ( LassoLecp* lecp, const char* response_msg ) +GType lasso_lib_assertion_get_type ( ) +LassoLibAssertion* lasso_lib_assertion_new ( ) +LassoLibAssertion* lasso_lib_assertion_new_full ( const char* issuer, const char* requestID, const char* audience, const char* notBefore, const char* notOnOrAfter ) +GType lasso_lib_authentication_statement_get_type ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new_full ( const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, LassoSamlNameIdentifier* sp_identifier, LassoSamlNameIdentifier* idp_identifier ) +GType lasso_lib_authn_context_get_type ( ) +LassoNode* lasso_lib_authn_context_new ( ) +GType lasso_lib_authn_request_envelope_get_type ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new_full ( LassoLibAuthnRequest* authnRequest, char* providerID, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_request_get_type ( ) +LassoLibAuthnRequest* lasso_lib_authn_request_new ( ) +GType lasso_lib_authn_response_envelope_get_type ( ) +LassoLibAuthnResponseEnvelope* lasso_lib_authn_response_envelope_new ( LassoLibAuthnResponse* response, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_response_get_type ( ) +LassoNode* lasso_lib_authn_response_new ( char* providerID, LassoLibAuthnRequest* request ) +GType lasso_lib_federation_termination_notification_get_type ( ) +LassoNode* lasso_lib_federation_termination_notification_new ( ) +LassoNode* lasso_lib_federation_termination_notification_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_idp_entries_get_type ( ) +LassoNode* lasso_lib_idp_entries_new ( ) +GType lasso_lib_idp_entry_get_type ( ) +LassoNode* lasso_lib_idp_entry_new ( ) +GType lasso_lib_idp_list_get_type ( ) +LassoNode* lasso_lib_idp_list_new ( ) +GType lasso_lib_logout_request_get_type ( ) +LassoNode* lasso_lib_logout_request_new ( ) +LassoNode* lasso_lib_logout_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_logout_response_get_type ( ) +LassoNode* lasso_lib_logout_response_new ( ) +LassoNode* lasso_lib_logout_response_new_full ( char* providerID, const char* statusCodeValue, LassoLibLogoutRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_request_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, const char* targetNamespace, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_response_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new_full ( char* provideRID, const char* statusCodeValue, LassoLibNameIdentifierMappingRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_request_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_request_new ( ) +LassoNode* lasso_lib_register_name_identifier_request_new_full ( const char* providerID, LassoSamlNameIdentifier* idpNameIdentifier, LassoSamlNameIdentifier* spNameIdentifier, LassoSamlNameIdentifier* oldNameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_response_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_response_new ( ) +LassoNode* lasso_lib_register_name_identifier_response_new_full ( const char* providerID, const char* statusCodeValue, LassoLibRegisterNameIdentifierRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_request_authn_context_get_type ( ) +LassoLibRequestAuthnContext* lasso_lib_request_authn_context_new ( ) +GType lasso_lib_scoping_get_type ( ) +LassoLibScoping* lasso_lib_scoping_new ( ) +GType lasso_lib_status_response_get_type ( ) +LassoNode* lasso_lib_status_response_new ( ) +GType lasso_lib_subject_get_type ( ) +LassoLibSubject* lasso_lib_subject_new ( ) +lasso_error_t lasso_login_accept_sso ( LassoLogin* login ) +lasso_error_t lasso_login_build_artifact_msg ( LassoLogin* login, LassoHttpMethod http_method ) +lasso_error_t lasso_login_build_assertion ( LassoLogin* login, const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, const char* notBefore, const char* notOnOrAfter ) +lasso_error_t lasso_login_build_authn_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_authn_response_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_response_msg ( LassoLogin* login, gchar* remote_providerID ) +None lasso_login_destroy ( LassoLogin* login ) +gchar* lasso_login_dump ( LassoLogin* login ) +LassoNode* lasso_login_get_assertion ( LassoLogin* login ) +GType lasso_login_get_type ( ) +lasso_error_t lasso_login_init_authn_request ( LassoLogin* login, const gchar* remote_providerID, LassoHttpMethod http_method ) +lasso_error_t lasso_login_init_idp_initiated_authn_request ( LassoLogin* login, const gchar* remote_providerID ) +lasso_error_t lasso_login_init_request ( LassoLogin* login, gchar* response_msg, LassoHttpMethod response_http_method ) +gboolean lasso_login_must_ask_for_consent ( LassoLogin* login ) +gboolean lasso_login_must_authenticate ( LassoLogin* login ) +LassoLogin* lasso_login_new ( LassoServer* server ) +LassoLogin* lasso_login_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_login_process_authn_request_msg ( LassoLogin* login, const char* authn_request_msg ) +lasso_error_t lasso_login_process_authn_response_msg ( LassoLogin* login, gchar* authn_response_msg ) +lasso_error_t lasso_login_process_paos_response_msg ( LassoLogin* login, gchar* msg ) +lasso_error_t lasso_login_process_request_msg ( LassoLogin* login, gchar* request_msg ) +lasso_error_t lasso_login_process_response_msg ( LassoLogin* login, gchar* response_msg ) +lasso_error_t lasso_login_validate_request_msg ( LassoLogin* login, gboolean authentication_result, gboolean is_consent_obtained ) +lasso_error_t lasso_logout_build_request_msg ( LassoLogout* logout ) +lasso_error_t lasso_logout_build_response_msg ( LassoLogout* logout ) +None lasso_logout_destroy ( LassoLogout* logout ) +gchar* lasso_logout_dump ( LassoLogout* logout ) +gchar* lasso_logout_get_next_providerID ( LassoLogout* logout ) +GType lasso_logout_get_type ( ) +lasso_error_t lasso_logout_init_request ( LassoLogout* logout, gchar* remote_providerID, LassoHttpMethod request_method ) +LassoLogout* lasso_logout_new ( LassoServer* server ) +LassoLogout* lasso_logout_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_logout_process_request_msg ( LassoLogout* logout, gchar* request_msg ) +lasso_error_t lasso_logout_process_response_msg ( LassoLogout* logout, gchar* response_msg ) +lasso_error_t lasso_logout_reset_providerID_index ( LassoLogout* logout ) +lasso_error_t lasso_logout_validate_request ( LassoLogout* logout ) +GType lasso_misc_text_node_get_type ( ) +xmlNode* lasso_misc_text_node_get_xml_content ( LassoMiscTextNode* misc_text_node ) +LassoNode* lasso_misc_text_node_new ( ) +LassoMiscTextNode* lasso_misc_text_node_new_with_string ( const char* content ) +LassoMiscTextNode* lasso_misc_text_node_new_with_xml_node ( xmlNode* xml_node ) +None lasso_misc_text_node_set_xml_content ( LassoMiscTextNode* misc_text_node, xmlNode* node ) +lasso_error_t lasso_name_id_management_build_request_msg ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_id_management_build_response_msg ( LassoNameIdManagement* name_id_management ) +None lasso_name_id_management_destroy ( LassoNameIdManagement* name_id_management ) +char* lasso_name_id_management_dump ( LassoNameIdManagement* name_id_management ) +GType lasso_name_id_management_get_type ( ) +lasso_error_t lasso_name_id_management_init_request ( LassoNameIdManagement* name_id_management, char* remote_provider_id, char* new_name_id, LassoHttpMethod http_method ) +LassoNameIdManagement* lasso_name_id_management_new ( LassoServer* server ) +LassoNameIdManagement* lasso_name_id_management_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_id_management_process_request_msg ( LassoNameIdManagement* name_id_management, gchar* request_msg ) +lasso_error_t lasso_name_id_management_process_response_msg ( LassoNameIdManagement* name_id_management, gchar* response_msg ) +lasso_error_t lasso_name_id_management_validate_request ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_identifier_mapping_build_request_msg ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_identifier_mapping_build_response_msg ( LassoNameIdentifierMapping* mapping ) +None lasso_name_identifier_mapping_destroy ( LassoNameIdentifierMapping* mapping ) +GType lasso_name_identifier_mapping_get_type ( ) +lasso_error_t lasso_name_identifier_mapping_init_request ( LassoNameIdentifierMapping* mapping, gchar* targetNamespace, gchar* remote_providerID ) +LassoNameIdentifierMapping* lasso_name_identifier_mapping_new ( LassoServer* server ) +lasso_error_t lasso_name_identifier_mapping_process_request_msg ( LassoNameIdentifierMapping* mapping, gchar* request_msg ) +lasso_error_t lasso_name_identifier_mapping_process_response_msg ( LassoNameIdentifierMapping* mapping, gchar* response_msg ) +lasso_error_t lasso_name_identifier_mapping_validate_request ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_registration_build_request_msg ( LassoNameRegistration* name_registration ) +lasso_error_t lasso_name_registration_build_response_msg ( LassoNameRegistration* name_registration ) +None lasso_name_registration_destroy ( LassoNameRegistration* name_registration ) +gchar* lasso_name_registration_dump ( LassoNameRegistration* name_registration ) +GType lasso_name_registration_get_type ( ) +lasso_error_t lasso_name_registration_init_request ( LassoNameRegistration* name_registration, char* remote_providerID, LassoHttpMethod http_method ) +LassoNameRegistration* lasso_name_registration_new ( LassoServer* server ) +LassoNameRegistration* lasso_name_registration_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_registration_process_request_msg ( LassoNameRegistration* name_registration, gchar* request_msg ) +lasso_error_t lasso_name_registration_process_response_msg ( LassoNameRegistration* name_registration, gchar* response_msg ) +lasso_error_t lasso_name_registration_validate_request ( LassoNameRegistration* name_registration ) +None lasso_node_cleanup_original_xmlnodes ( LassoNode* node ) +char* lasso_node_debug ( LassoNode* node, int level ) +None lasso_node_destroy ( LassoNode* node ) +char* lasso_node_dump ( LassoNode* node ) +char* lasso_node_export_to_base64 ( LassoNode* node ) +char* lasso_node_export_to_ecp_soap_response ( LassoNode* node, const char* assertionConsumerURL ) +char* lasso_node_export_to_paos_request ( LassoNode* node, const char* issuer, const char* responseConsumerURL, const char* relay_state ) +char* lasso_node_export_to_query ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file ) +char* lasso_node_export_to_query_with_password ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file, const char* private_key_file_password ) +char* lasso_node_export_to_soap ( LassoNode* node ) +gchar* lasso_node_export_to_xml ( LassoNode* node ) +const char* lasso_node_get_name ( LassoNode* node ) +const char* lasso_node_get_namespace ( LassoNode* node ) +xmlNode* lasso_node_get_original_xmlnode ( LassoNode* node ) +GType lasso_node_get_type ( ) +xmlNode* lasso_node_get_xmlNode ( LassoNode* node, gboolean lasso_dump ) +LassoMessageFormat lasso_node_init_from_message ( LassoNode* node, const char* message ) +gboolean lasso_node_init_from_query ( LassoNode* node, const char* query ) +lasso_error_t lasso_node_init_from_xml ( LassoNode* node, xmlNode* xmlnode ) +LassoNode* lasso_node_new ( ) +LassoNode* lasso_node_new_from_dump ( const char* dump ) +LassoNode* lasso_node_new_from_soap ( const char* soap ) +LassoNode* lasso_node_new_from_xmlNode ( xmlNode* node ) +None lasso_node_set_custom_namespace ( LassoNode* node, const char* prefix, const char* href ) +None lasso_node_set_custom_nodename ( LassoNode* node, const char* nodename ) +None lasso_node_set_original_xmlnode ( LassoNode* node, xmlNode* xmlnode ) +char* lasso_profile_get_artifact ( LassoProfile* profile ) +char* lasso_profile_get_artifact_message ( LassoProfile* profile ) +LassoIdentity* lasso_profile_get_identity ( LassoProfile* profile ) +LassoNode* lasso_profile_get_nameIdentifier ( LassoProfile* profile ) +LassoRequestType lasso_profile_get_request_type_from_soap_msg ( const gchar* soap ) +LassoSession* lasso_profile_get_session ( LassoProfile* profile ) +LassoProfileSignatureHint lasso_profile_get_signature_hint ( LassoProfile* profile ) +lasso_error_t lasso_profile_get_signature_status ( LassoProfile* profile ) +LassoProfileSignatureVerifyHint lasso_profile_get_signature_verify_hint ( LassoProfile* profile ) +GType lasso_profile_get_type ( ) +gboolean lasso_profile_is_identity_dirty ( LassoProfile* profile ) +gboolean lasso_profile_is_liberty_query ( const gchar* query ) +gboolean lasso_profile_is_saml_query ( const gchar* query ) +gboolean lasso_profile_is_session_dirty ( LassoProfile* profile ) +None lasso_profile_set_artifact_message ( LassoProfile* profile, const char* message ) +lasso_error_t lasso_profile_set_identity_from_dump ( LassoProfile* profile, const gchar* dump ) +lasso_error_t lasso_profile_set_session_from_dump ( LassoProfile* profile, const gchar* dump ) +None lasso_profile_set_signature_hint ( LassoProfile* profile, LassoProfileSignatureHint signature_hint ) +None lasso_profile_set_signature_verify_hint ( LassoProfile* profile, LassoProfileSignatureVerifyHint signature_verify_hint ) +lasso_error_t lasso_profile_set_soap_fault_response ( LassoProfile* profile, const char* faultcode, const char* faultstring, GList* details ) +LassoProviderRole lasso_profile_sso_role_with ( LassoProfile* profile, const char* remote_provider_id ) +gboolean lasso_provider_accept_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type, LassoHttpMethod http_method, gboolean initiate_profile ) +gchar* lasso_provider_get_assertion_consumer_service_url ( LassoProvider* provider, const char* service_id ) +gchar* lasso_provider_get_base64_succinct_id ( const LassoProvider* provider ) +char* lasso_provider_get_cache_duration ( LassoProvider* provider ) +gchar* lasso_provider_get_default_name_id_format ( LassoProvider* provider ) +LassoEncryptionMode lasso_provider_get_encryption_mode ( LassoProvider* provider ) +LassoHttpMethod lasso_provider_get_first_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type ) +GList* lasso_provider_get_idp_supported_attributes ( LassoProvider* provider ) +GList* lasso_provider_get_metadata_keys_for_role ( LassoProvider* provider, LassoProviderRole role ) +GList* lasso_provider_get_metadata_list ( LassoProvider* provider, const char* name ) +GList* lasso_provider_get_metadata_list_for_role ( const LassoProvider* provider, LassoProviderRole role, const char* name ) +gchar* lasso_provider_get_metadata_one ( LassoProvider* provider, const char* name ) +char* lasso_provider_get_metadata_one_for_role ( LassoProvider* provider, LassoProviderRole role, const char* name ) +xmlNode* lasso_provider_get_organization ( const LassoProvider* provider ) +LassoProtocolConformance lasso_provider_get_protocol_conformance ( const LassoProvider* provider ) +LassoProviderRole lasso_provider_get_roles ( LassoProvider* provider ) +const char* lasso_provider_get_sp_name_qualifier ( LassoProvider* provider ) +GType lasso_provider_get_type ( ) +char* lasso_provider_get_valid_until ( LassoProvider* provider ) +gboolean lasso_provider_has_protocol_profile ( LassoProvider* provider, LassoMdProtocolType protocol_type, const char* protocol_profile ) +gboolean lasso_provider_match_conformance ( LassoProvider* provider, LassoProvider* another_provider ) +LassoProvider* lasso_provider_new ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_buffer ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_dump ( const gchar* dump ) +LassoSaml2EncryptedElement* lasso_provider_saml2_node_encrypt ( const LassoProvider* provider, LassoNode* lasso_node ) +None lasso_provider_set_encryption_mode ( LassoProvider* provider, LassoEncryptionMode encryption_mode ) +None lasso_provider_set_encryption_sym_key_type ( LassoProvider* provider, LassoEncryptionSymKeyType encryption_sym_key_type ) +lasso_error_t lasso_provider_verify_single_node_signature ( LassoProvider* provider, LassoNode* node, const char* id_attr_name ) +None lasso_register_dst_service ( const char* prefix, const char* href ) +None lasso_register_idwsf2_dst_service ( const gchar* prefix, const gchar* href ) +GType lasso_saml2_action_get_type ( ) +LassoNode* lasso_saml2_action_new ( ) +LassoNode* lasso_saml2_action_new_with_string ( char* content ) +GType lasso_saml2_advice_get_type ( ) +LassoNode* lasso_saml2_advice_new ( ) +lasso_error_t lasso_saml2_assertion_add_attribute_with_node ( LassoSaml2Assertion* assertion, const char* name, const char* nameformat, LassoNode* content ) +None lasso_saml2_assertion_add_audience_restriction ( LassoSaml2Assertion* saml2_assertion, const char* providerID ) +None lasso_saml2_assertion_add_proxy_limit ( LassoSaml2Assertion* saml2_assertion, int proxy_count, GList* proxy_audiences ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying ( LassoSaml2Assertion* saml2_assertion ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying_to ( LassoSaml2Assertion* saml2_assertion, const char* audience ) +lasso_error_t lasso_saml2_assertion_decrypt_subject ( LassoSaml2Assertion* assertion, LassoServer* server ) +const char* lasso_saml2_assertion_get_in_response_to ( LassoSaml2Assertion* assertion ) +LassoProvider* lasso_saml2_assertion_get_issuer_provider ( const LassoSaml2Assertion* saml2_assertion, const LassoServer* server ) +LassoSaml2SubjectConfirmationData* lasso_saml2_assertion_get_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, gboolean create ) +GType lasso_saml2_assertion_get_type ( ) +gboolean lasso_saml2_assertion_has_audience_restriction ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_has_one_time_use ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_is_audience_restricted ( LassoSaml2Assertion* saml2_assertion, char* providerID ) +LassoNode* lasso_saml2_assertion_new ( ) +None lasso_saml2_assertion_set_basic_conditions ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, gboolean one_time_use ) +None lasso_saml2_assertion_set_one_time_use ( LassoSaml2Assertion* saml2_assertion, gboolean one_time_use ) +None lasso_saml2_assertion_set_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, const char* Recipient, const char* InResponseTo, const char* Address ) +None lasso_saml2_assertion_set_subject_confirmation_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +None lasso_saml2_assertion_set_subject_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_audience ( LassoSaml2Assertion* saml2_assertion, const gchar* audience ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_conditions ( LassoSaml2Assertion* saml2_assertion, const char* relaying_party_providerID ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_time_checks ( LassoSaml2Assertion* saml2_assertion, unsigned int tolerance, time_t now ) +GType lasso_saml2_attribute_get_type ( ) +LassoNode* lasso_saml2_attribute_new ( ) +GType lasso_saml2_attribute_statement_get_type ( ) +LassoNode* lasso_saml2_attribute_statement_new ( ) +GType lasso_saml2_attribute_value_get_type ( ) +LassoSaml2AttributeValue* lasso_saml2_attribute_value_new ( ) +GType lasso_saml2_audience_restriction_get_type ( ) +LassoNode* lasso_saml2_audience_restriction_new ( ) +GType lasso_saml2_authn_context_get_type ( ) +LassoNode* lasso_saml2_authn_context_new ( ) +GType lasso_saml2_authn_statement_get_type ( ) +LassoNode* lasso_saml2_authn_statement_new ( ) +GType lasso_saml2_authz_decision_statement_get_type ( ) +LassoNode* lasso_saml2_authz_decision_statement_new ( ) +GType lasso_saml2_base_idabstract_get_type ( ) +LassoNode* lasso_saml2_base_idabstract_new ( ) +GType lasso_saml2_condition_abstract_get_type ( ) +LassoNode* lasso_saml2_condition_abstract_new ( ) +GType lasso_saml2_conditions_get_type ( ) +LassoNode* lasso_saml2_conditions_new ( ) +LassoSaml2EncryptedElement* lasso_saml2_encrypted_element_build_encrypted_persistent_name_id ( const char* id, const char* idpID, const LassoProvider* provider ) +GType lasso_saml2_encrypted_element_get_type ( ) +LassoNode* lasso_saml2_encrypted_element_new ( ) +lasso_error_t lasso_saml2_encrypted_element_server_decrypt ( LassoSaml2EncryptedElement* encrypted_element, LassoServer* server, LassoNode** decrypted_node ) +GType lasso_saml2_evidence_get_type ( ) +LassoNode* lasso_saml2_evidence_new ( ) +GType lasso_saml2_key_info_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_key_info_confirmation_data_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_build_persistent ( const char* id, const char* idpID, const char* providerID ) +gboolean lasso_saml2_name_id_equals ( LassoSaml2NameID* name_id, LassoSaml2NameID* other_name_id ) +GType lasso_saml2_name_id_get_type ( ) +LassoNode* lasso_saml2_name_id_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_new_with_persistent_format ( const char* id, const char* idpID, const char* providerID ) +LassoNode* lasso_saml2_name_id_new_with_string ( char* content ) +GType lasso_saml2_one_time_use_get_type ( ) +LassoNode* lasso_saml2_one_time_use_new ( ) +GType lasso_saml2_proxy_restriction_get_type ( ) +LassoNode* lasso_saml2_proxy_restriction_new ( ) +GType lasso_saml2_statement_abstract_get_type ( ) +LassoNode* lasso_saml2_statement_abstract_new ( ) +GType lasso_saml2_subject_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_data_new ( ) +GType lasso_saml2_subject_confirmation_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_new ( ) +GType lasso_saml2_subject_get_type ( ) +GType lasso_saml2_subject_locality_get_type ( ) +LassoNode* lasso_saml2_subject_locality_new ( ) +LassoNode* lasso_saml2_subject_new ( ) +GType lasso_saml_advice_get_type ( ) +LassoNode* lasso_saml_advice_new ( ) +GType lasso_saml_assertion_get_type ( ) +LassoSamlAssertion* lasso_saml_assertion_new ( ) +GType lasso_saml_attribute_designator_get_type ( ) +LassoNode* lasso_saml_attribute_designator_new ( ) +GType lasso_saml_attribute_get_type ( ) +LassoSamlAttribute* lasso_saml_attribute_new ( ) +GType lasso_saml_attribute_statement_get_type ( ) +LassoSamlAttributeStatement* lasso_saml_attribute_statement_new ( ) +GType lasso_saml_attribute_value_get_type ( ) +LassoSamlAttributeValue* lasso_saml_attribute_value_new ( ) +GType lasso_saml_audience_restriction_condition_get_type ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new_full ( const char* audience ) +GType lasso_saml_authentication_statement_get_type ( ) +LassoNode* lasso_saml_authentication_statement_new ( ) +GType lasso_saml_authority_binding_get_type ( ) +LassoNode* lasso_saml_authority_binding_new ( ) +GType lasso_saml_condition_abstract_get_type ( ) +GType lasso_saml_conditions_get_type ( ) +LassoSamlConditions* lasso_saml_conditions_new ( ) +GType lasso_saml_name_identifier_get_type ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new_from_xmlNode ( xmlNode* xmlnode ) +GType lasso_saml_statement_abstract_get_type ( ) +GType lasso_saml_subject_confirmation_get_type ( ) +LassoSamlSubjectConfirmation* lasso_saml_subject_confirmation_new ( ) +GType lasso_saml_subject_get_type ( ) +GType lasso_saml_subject_locality_get_type ( ) +LassoNode* lasso_saml_subject_locality_new ( ) +LassoNode* lasso_saml_subject_new ( ) +GType lasso_saml_subject_statement_abstract_get_type ( ) +GType lasso_saml_subject_statement_get_type ( ) +LassoNode* lasso_saml_subject_statement_new ( ) +GType lasso_samlp2_artifact_resolve_get_type ( ) +LassoNode* lasso_samlp2_artifact_resolve_new ( ) +GType lasso_samlp2_artifact_response_get_type ( ) +LassoNode* lasso_samlp2_artifact_response_new ( ) +GType lasso_samlp2_assertion_id_request_get_type ( ) +LassoNode* lasso_samlp2_assertion_id_request_new ( ) +GType lasso_samlp2_attribute_query_get_type ( ) +LassoNode* lasso_samlp2_attribute_query_new ( ) +GType lasso_samlp2_authn_query_get_type ( ) +LassoNode* lasso_samlp2_authn_query_new ( ) +GType lasso_samlp2_authn_request_get_type ( ) +LassoNode* lasso_samlp2_authn_request_new ( ) +GType lasso_samlp2_authz_decision_query_get_type ( ) +LassoNode* lasso_samlp2_authz_decision_query_new ( ) +GType lasso_samlp2_extensions_get_type ( ) +LassoNode* lasso_samlp2_extensions_new ( ) +GType lasso_samlp2_idp_entry_get_type ( ) +LassoNode* lasso_samlp2_idp_entry_new ( ) +GType lasso_samlp2_idp_list_get_type ( ) +LassoNode* lasso_samlp2_idp_list_new ( ) +GList* lasso_samlp2_logout_request_get_session_indexes ( LassoSamlp2LogoutRequest* logout_request ) +GType lasso_samlp2_logout_request_get_type ( ) +LassoNode* lasso_samlp2_logout_request_new ( ) +None lasso_samlp2_logout_request_set_session_indexes ( LassoSamlp2LogoutRequest* logout_request, GList* session_index ) +GType lasso_samlp2_logout_response_get_type ( ) +LassoNode* lasso_samlp2_logout_response_new ( ) +GType lasso_samlp2_manage_name_id_request_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_request_new ( ) +GType lasso_samlp2_manage_name_id_response_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_response_new ( ) +GType lasso_samlp2_name_id_mapping_request_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_request_new ( ) +GType lasso_samlp2_name_id_mapping_response_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_response_new ( ) +GType lasso_samlp2_name_id_policy_get_type ( ) +LassoNode* lasso_samlp2_name_id_policy_new ( ) +GType lasso_samlp2_request_abstract_get_type ( ) +LassoNode* lasso_samlp2_request_abstract_new ( ) +GType lasso_samlp2_requested_authn_context_get_type ( ) +LassoNode* lasso_samlp2_requested_authn_context_new ( ) +GType lasso_samlp2_response_get_type ( ) +LassoNode* lasso_samlp2_response_new ( ) +GType lasso_samlp2_scoping_get_type ( ) +LassoNode* lasso_samlp2_scoping_new ( ) +GType lasso_samlp2_status_code_get_type ( ) +LassoNode* lasso_samlp2_status_code_new ( ) +GType lasso_samlp2_status_detail_get_type ( ) +LassoNode* lasso_samlp2_status_detail_new ( ) +GType lasso_samlp2_status_get_type ( ) +LassoNode* lasso_samlp2_status_new ( ) +GType lasso_samlp2_status_response_get_type ( ) +LassoNode* lasso_samlp2_status_response_new ( ) +GType lasso_samlp2_subject_query_abstract_get_type ( ) +LassoNode* lasso_samlp2_subject_query_abstract_new ( ) +GType lasso_samlp2_terminate_get_type ( ) +LassoNode* lasso_samlp2_terminate_new ( ) +GType lasso_samlp_request_abstract_get_type ( ) +GType lasso_samlp_request_get_type ( ) +LassoNode* lasso_samlp_request_new ( ) +None lasso_samlp_response_abstract_fill ( LassoSamlpResponseAbstract* response, const char* InResponseTo, const char* Recipient ) +GType lasso_samlp_response_abstract_get_type ( ) +GType lasso_samlp_response_get_type ( ) +LassoNode* lasso_samlp_response_new ( ) +GType lasso_samlp_status_code_get_type ( ) +LassoSamlpStatusCode* lasso_samlp_status_code_new ( ) +GType lasso_samlp_status_get_type ( ) +LassoSamlpStatus* lasso_samlp_status_new ( ) +lasso_error_t lasso_server_add_provider ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +lasso_error_t lasso_server_add_provider_from_buffer ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +None lasso_server_destroy ( LassoServer* server ) +gchar* lasso_server_dump ( LassoServer* server ) +LassoProvider* lasso_server_get_provider ( const LassoServer* server, const gchar* providerID ) +GType lasso_server_get_type ( ) +lasso_error_t lasso_server_load_affiliation ( LassoServer* server, const gchar* filename ) +LassoServer* lasso_server_new ( const gchar* metadata, const gchar* private_key, const gchar* private_key_password, const gchar* certificate ) +LassoServer* lasso_server_new_from_buffers ( const gchar* metadata, const gchar* private_key_content, const gchar* private_key_password, const gchar* certificate_content ) +LassoServer* lasso_server_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_server_saml2_assertion_setup_signature ( LassoServer* server, LassoSaml2Assertion* saml2_assertion ) +lasso_error_t lasso_server_set_encryption_private_key ( LassoServer* server, const gchar* filename_or_buffer ) +lasso_error_t lasso_server_set_encryption_private_key_with_password ( LassoServer* server, const gchar* filename_or_buffer, const gchar* password ) +lasso_error_t lasso_session_add_assertion ( LassoSession* session, const char* providerID, LassoNode* assertion ) +None lasso_session_destroy ( LassoSession* session ) +gchar* lasso_session_dump ( LassoSession* session ) +LassoNode* lasso_session_get_assertion ( LassoSession* session, const gchar* providerID ) +GList* lasso_session_get_assertions ( LassoSession* session, const char* provider_id ) +gchar* lasso_session_get_provider_index ( LassoSession* session, gint index ) +GType lasso_session_get_type ( ) +gboolean lasso_session_is_empty ( LassoSession* session ) +LassoSession* lasso_session_new ( ) +LassoSession* lasso_session_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_session_remove_assertion ( LassoSession* session, const gchar* providerID ) +None lasso_set_flag ( char* flag ) +lasso_error_t lasso_shutdown ( ) +GType lasso_soap_body_get_type ( ) +LassoSoapBody* lasso_soap_body_new ( ) +LassoSoapBody* lasso_soap_body_new_from_message ( const gchar* message ) +GType lasso_soap_detail_get_type ( ) +LassoSoapDetail* lasso_soap_detail_new ( ) +LassoSoapDetail* lasso_soap_detail_new_from_message ( const gchar* message ) +GType lasso_soap_envelope_get_type ( ) +LassoSoapEnvelope* lasso_soap_envelope_new ( LassoSoapBody* body ) +LassoSoapEnvelope* lasso_soap_envelope_new_from_message ( const gchar* message ) +GType lasso_soap_fault_get_type ( ) +LassoSoapFault* lasso_soap_fault_new ( ) +LassoSoapFault* lasso_soap_fault_new_from_message ( const gchar* message ) +LassoSoapFault* lasso_soap_fault_new_full ( const char* faultcode, const char* faultstring ) +GType lasso_soap_header_get_type ( ) +LassoSoapHeader* lasso_soap_header_new ( ) +LassoSoapHeader* lasso_soap_header_new_from_message ( const gchar* message ) +const char* lasso_strerror ( int error_code ) diff --git a/abi/abi-2.3.4 b/abi/abi-2.3.4 new file mode 100644 index 00000000..bd6d5799 --- /dev/null +++ b/abi/abi-2.3.4 @@ -0,0 +1,1114 @@ +BACKWARD_COMP_H +LASSO_ASSERTION_QUERY_ERROR_ATTRIBUTE_REQUEST_ALREADY_EXIST +LASSO_ASSERTION_QUERY_ERROR_NOT_AN_ATTRIBUTE_QUERY +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ASSERTION_ID +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ATTRIBUTE +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHN +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHZ_DECISION +LASSO_ASSERTION_QUERY_REQUEST_TYPE_LAST +LASSO_ASSERTION_QUERY_REQUEST_TYPE_UNSET +LASSO_CERTIFICATE_ATTRIBUTE +LASSO_CHECK_VERSIONABI_COMPATIBLE +LASSO_CHECK_VERSION_EXACT +LASSO_CHECK_VERSION_NUMERIC +LASSO_DATA_SERVICE_ERROR_CANNOT_ADD_ITEM +LASSO_DATA_SERVICE_ERROR_UNREGISTERED_DST +LASSO_DEFEDERATION_ERROR_MISSING_NAME_IDENTIFIER +LASSO_DISCOVERY_ERROR_FAILED_TO_BUILD_ENDPOINT_REFERENCE +LASSO_DISCOVERY_ERROR_MISSING_REQUESTED_SERVICE +LASSO_DISCOVERY_ERROR_SVC_METADATA_ASSOCIATION_ADD_FAILED +LASSO_DISCOVERY_ERROR_SVC_METADATA_REGISTER_FAILED +LASSO_DST_ERROR_EMPTY_REQUEST +LASSO_DST_ERROR_MALFORMED_QUERY +LASSO_DST_ERROR_MISSING_SERVICE_DATA +LASSO_DST_ERROR_MODIFY_FAILED +LASSO_DST_ERROR_MODIFY_PARTIALLY_FAILED +LASSO_DST_ERROR_NEW_DATA_MISSING +LASSO_DST_ERROR_NO_DATA +LASSO_DST_ERROR_QUERY_FAILED +LASSO_DST_ERROR_QUERY_NOT_FOUND +LASSO_DST_ERROR_QUERY_PARTIALLY_FAILED +LASSO_DS_ERROR_CA_CERT_CHAIN_LOAD_FAILED +LASSO_DS_ERROR_CERTIFICATE_LOAD_FAILED +LASSO_DS_ERROR_CONTEXT_CREATION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED_MISSING_PRIVATE_KEY +LASSO_DS_ERROR_DIGEST_COMPUTE_FAILED +LASSO_DS_ERROR_ENCRYPTION_FAILED +LASSO_DS_ERROR_INVALID_REFERENCE_FOR_SAML +LASSO_DS_ERROR_INVALID_SIGALG +LASSO_DS_ERROR_INVALID_SIGNATURE +LASSO_DS_ERROR_KEYS_MNGR_CREATION_FAILED +LASSO_DS_ERROR_KEYS_MNGR_INIT_FAILED +LASSO_DS_ERROR_PRIVATE_KEY_LOAD_FAILED +LASSO_DS_ERROR_PUBLIC_KEY_LOAD_FAILED +LASSO_DS_ERROR_SIGNATURE_FAILED +LASSO_DS_ERROR_SIGNATURE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TEMPLATE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TMPL_CREATION_FAILED +LASSO_DS_ERROR_SIGNATURE_VERIFICATION_FAILED +LASSO_DS_ERROR_TOO_MUCH_REFERENCES +LASSO_DS_HREF +LASSO_DS_PREFIX +LASSO_DURATION_DAY +LASSO_DURATION_HOUR +LASSO_DURATION_MINUTE +LASSO_DURATION_WEEK +LASSO_ECP_HREF +LASSO_ECP_PREFIX +LASSO_ENCRYPTION_MODE_ASSERTION +LASSO_ENCRYPTION_MODE_NAMEID +LASSO_ENCRYPTION_MODE_NONE +LASSO_ENCRYPTION_SYM_KEY_TYPE_3DES +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_128 +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_256 +LASSO_ENCRYPTION_SYM_KEY_TYPE_DEFAULT +LASSO_ERROR_CAST_FAILED +LASSO_ERROR_OUT_OF_MEMORY +LASSO_ERROR_UNDEFINED +LASSO_ERROR_UNIMPLEMENTED +LASSO_HTTP_METHOD_ANY +LASSO_HTTP_METHOD_ARTIFACT_GET +LASSO_HTTP_METHOD_ARTIFACT_POST +LASSO_HTTP_METHOD_GET +LASSO_HTTP_METHOD_IDP_INITIATED +LASSO_HTTP_METHOD_LAST +LASSO_HTTP_METHOD_NONE +LASSO_HTTP_METHOD_PAOS +LASSO_HTTP_METHOD_POST +LASSO_HTTP_METHOD_REDIRECT +LASSO_HTTP_METHOD_SOAP +LASSO_IDWSF2_DISCOVERY_ERROR_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_FAILED +LASSO_IDWSF2_DISCOVERY_ERROR_FORBIDDEN +LASSO_IDWSF2_DISCOVERY_ERROR_LOGICAL_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_NOT_FOUND +LASSO_IDWSF2_DISCOVERY_ERROR_NO_RESULTS +LASSO_IDWSF2_DST_ERROR_DUPLICATE_ITEM +LASSO_IDWSF2_DST_ERROR_ITEM_NOT_FOUND +LASSO_IDWSF2_DST_ERROR_PARTIAL_FAILURE +LASSO_IDWSF2_DST_ERROR_UNKNOWN_STATUS_CODE +LASSO_LASSO_HREF +LASSO_LASSO_PREFIX +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD_PROTECTED_TRANSPORT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PREVIOUS_SESSION +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SOFTWARE_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_TIME_SYNC_TOKEN +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_BETTER +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_EXACT +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MAXIMUM +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MINIMUM +LASSO_LIB_CONSENT_INAPPLICABLE +LASSO_LIB_CONSENT_OBTAINED +LASSO_LIB_CONSENT_OBTAINED_CURRENT_EXPLICIT +LASSO_LIB_CONSENT_OBTAINED_CURRENT_IMPLICIT +LASSO_LIB_CONSENT_OBTAINED_PRIOR +LASSO_LIB_CONSENT_UNAVAILABLE +LASSO_LIB_HREF +LASSO_LIB_MAJOR_VERSION_N +LASSO_LIB_MINOR_VERSION_N +LASSO_LIB_NAMEID_POLICY_TYPE_ANY +LASSO_LIB_NAMEID_POLICY_TYPE_FEDERATED +LASSO_LIB_NAMEID_POLICY_TYPE_NONE +LASSO_LIB_NAMEID_POLICY_TYPE_ONE_TIME +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENTITYID +LASSO_LIB_NAME_IDENTIFIER_FORMAT_FEDERATED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ONE_TIME +LASSO_LIB_PREFIX +LASSO_LIB_PROTOCOL_PROFILE_BRWS_ART +LASSO_LIB_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LIB_PROTOCOL_PROFILE_BRWS_POST +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_NIM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_SOAP +LASSO_LIB_STATUS_CODE_FEDERATION_DOES_NOT_EXIST +LASSO_LIB_STATUS_CODE_INVALID_ASSERTION_CONSUMER_SERVICE_INDEX +LASSO_LIB_STATUS_CODE_INVALID_SIGNATURE +LASSO_LIB_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_LIB_STATUS_CODE_NO_AVAILABLEIDP +LASSO_LIB_STATUS_CODE_NO_PASSIVE +LASSO_LIB_STATUS_CODE_NO_SUPPORTEDIDP +LASSO_LIB_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_LIB_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_LIB_STATUS_CODE_UNSIGNED_AUTHN_REQUEST +LASSO_LIB_STATUS_CODE_UNSUPPORTED_PROFILE +LASSO_LOGIN_ERROR_ASSERTION_DOES_NOT_MATCH_REQUEST_ID +LASSO_LOGIN_ERROR_ASSERTION_REPLAY +LASSO_LOGIN_ERROR_CONSENT_NOT_OBTAINED +LASSO_LOGIN_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGIN_ERROR_INVALID_ASSERTION_SIGNATURE +LASSO_LOGIN_ERROR_INVALID_NAMEIDPOLICY +LASSO_LOGIN_ERROR_INVALID_SIGNATURE +LASSO_LOGIN_ERROR_NO_DEFAULT_ENDPOINT +LASSO_LOGIN_ERROR_REQUEST_DENIED +LASSO_LOGIN_ERROR_STATUS_NOT_SUCCESS +LASSO_LOGIN_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGIN_ERROR_UNSIGNED_AUTHN_REQUEST +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_ART +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_POST +LASSO_LOGIN_PROTOCOL_PROFILE_REDIRECT +LASSO_LOGOUT_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGOUT_ERROR_REQUEST_DENIED +LASSO_LOGOUT_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGOUT_ERROR_UNSUPPORTED_PROFILE +LASSO_MD_PROTOCOL_TYPE_ARTIFACT_RESOLUTION +LASSO_MD_PROTOCOL_TYPE_ASSERTION_ID_REQUEST +LASSO_MD_PROTOCOL_TYPE_ATTRIBUTE +LASSO_MD_PROTOCOL_TYPE_AUTHN_QUERY +LASSO_MD_PROTOCOL_TYPE_AUTHZ +LASSO_MD_PROTOCOL_TYPE_FEDERATION_TERMINATION +LASSO_MD_PROTOCOL_TYPE_LAST +LASSO_MD_PROTOCOL_TYPE_MANAGE_NAME_ID +LASSO_MD_PROTOCOL_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_MD_PROTOCOL_TYPE_REGISTER_NAME_IDENTIFIER +LASSO_MD_PROTOCOL_TYPE_SINGLE_LOGOUT +LASSO_MD_PROTOCOL_TYPE_SINGLE_SIGN_ON +LASSO_MESSAGE_FORMAT_BASE64 +LASSO_MESSAGE_FORMAT_ERROR +LASSO_MESSAGE_FORMAT_QUERY +LASSO_MESSAGE_FORMAT_SOAP +LASSO_MESSAGE_FORMAT_UNKNOWN +LASSO_MESSAGE_FORMAT_XML +LASSO_MESSAGE_FORMAT_XSCHEMA_ERROR +LASSO_METADATA_HREF +LASSO_METADATA_PREFIX +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_FORBIDDEN_CALL_ON_THIS_SIDE +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_IDENTIFIER +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_NAMESPACE +LASSO_PAOS_HREF +LASSO_PAOS_PREFIX +LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ +LASSO_PARAM_ERROR_CHECK_FAILED +LASSO_PARAM_ERROR_INVALID_VALUE +LASSO_PARAM_ERROR_NON_INITIALIZED_OBJECT +LASSO_PRIVATE_KEY_ATTRIBUTE +LASSO_PRIVATE_KEY_PASSWORD_ATTRIBUTE +LASSO_PRIVATE_STATUS_CODE_FAILED_TO_RESTORE_ARTIFACT +LASSO_PROFILE_ERROR_BAD_IDENTITY_DUMP +LASSO_PROFILE_ERROR_BAD_SESSION_DUMP +LASSO_PROFILE_ERROR_BUILDING_MESSAGE_FAILED +LASSO_PROFILE_ERROR_BUILDING_QUERY_FAILED +LASSO_PROFILE_ERROR_BUILDING_REQUEST_FAILED +LASSO_PROFILE_ERROR_BUILDING_RESPONSE_FAILED +LASSO_PROFILE_ERROR_CANNOT_FIND_A_PROVIDER +LASSO_PROFILE_ERROR_CANNOT_VERIFY_SIGNATURE +LASSO_PROFILE_ERROR_FEDERATION_NOT_FOUND +LASSO_PROFILE_ERROR_IDENTITY_NOT_FOUND +LASSO_PROFILE_ERROR_INVALID_ARTIFACT +LASSO_PROFILE_ERROR_INVALID_ASSERTION +LASSO_PROFILE_ERROR_INVALID_ASSERTION_CONDITIONS +LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD +LASSO_PROFILE_ERROR_INVALID_ISSUER +LASSO_PROFILE_ERROR_INVALID_MSG +LASSO_PROFILE_ERROR_INVALID_POST_MSG +LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE +LASSO_PROFILE_ERROR_INVALID_QUERY +LASSO_PROFILE_ERROR_INVALID_REQUEST +LASSO_PROFILE_ERROR_INVALID_RESPONSE +LASSO_PROFILE_ERROR_INVALID_SOAP_MSG +LASSO_PROFILE_ERROR_ISSUER_IS_NOT_AN_IDP +LASSO_PROFILE_ERROR_MISSING_ARTIFACT +LASSO_PROFILE_ERROR_MISSING_ASSERTION +LASSO_PROFILE_ERROR_MISSING_ENCRYPTION_PRIVATE_KEY +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE_ADDRESS +LASSO_PROFILE_ERROR_MISSING_ISSUER +LASSO_PROFILE_ERROR_MISSING_NAME_IDENTIFIER +LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID +LASSO_PROFILE_ERROR_MISSING_REQUEST +LASSO_PROFILE_ERROR_MISSING_RESOURCE_OFFERING +LASSO_PROFILE_ERROR_MISSING_RESPONSE +LASSO_PROFILE_ERROR_MISSING_SERVER +LASSO_PROFILE_ERROR_MISSING_SERVICE_DESCRIPTION +LASSO_PROFILE_ERROR_MISSING_SERVICE_INSTANCE +LASSO_PROFILE_ERROR_MISSING_SERVICE_TYPE +LASSO_PROFILE_ERROR_MISSING_STATUS_CODE +LASSO_PROFILE_ERROR_MISSING_SUBJECT +LASSO_PROFILE_ERROR_NAME_IDENTIFIER_NOT_FOUND +LASSO_PROFILE_ERROR_RESPONSE_DOES_NOT_MATCH_REQUEST +LASSO_PROFILE_ERROR_SESSION_NOT_FOUND +LASSO_PROFILE_ERROR_STATUS_NOT_SUCCESS +LASSO_PROFILE_ERROR_UNKNOWN_ISSUER +LASSO_PROFILE_ERROR_UNKNOWN_PROFILE_URL +LASSO_PROFILE_ERROR_UNKNOWN_PROVIDER +LASSO_PROFILE_ERROR_UNSUPPORTED_BINDING +LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE +LASSO_PROFILE_SIGNATURE_HINT_FORBID +LASSO_PROFILE_SIGNATURE_HINT_FORCE +LASSO_PROFILE_SIGNATURE_HINT_MAYBE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_FORCE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_IGNORE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_LAST +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_MAYBE +LASSO_PROTOCOL_LIBERTY_1_0 +LASSO_PROTOCOL_LIBERTY_1_1 +LASSO_PROTOCOL_LIBERTY_1_2 +LASSO_PROTOCOL_NONE +LASSO_PROTOCOL_SAML_2_0 +LASSO_PROVIDER_ERROR_MISSING_PUBLIC_KEY +LASSO_PROVIDER_ROLE_ANY +LASSO_PROVIDER_ROLE_ATTRIBUTE_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHN_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHZ_AUTHORITY +LASSO_PROVIDER_ROLE_BOTH +LASSO_PROVIDER_ROLE_IDP +LASSO_PROVIDER_ROLE_LAST +LASSO_PROVIDER_ROLE_NONE +LASSO_PROVIDER_ROLE_SP +LASSO_PYTHON_HREF +LASSO_REGISTRY_ERROR_KEY_EXISTS +LASSO_REQUEST_TYPE_DEFEDERATION +LASSO_REQUEST_TYPE_DISCO_MODIFY +LASSO_REQUEST_TYPE_DISCO_QUERY +LASSO_REQUEST_TYPE_DST_MODIFY +LASSO_REQUEST_TYPE_DST_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_ASSOCIATION_ADD +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_REGISTER +LASSO_REQUEST_TYPE_INVALID +LASSO_REQUEST_TYPE_LECP +LASSO_REQUEST_TYPE_LOGIN +LASSO_REQUEST_TYPE_LOGOUT +LASSO_REQUEST_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_REQUEST_TYPE_NAME_ID_MANAGEMENT +LASSO_REQUEST_TYPE_NAME_REGISTRATION +LASSO_REQUEST_TYPE_SASL_REQUEST +LASSO_SAML2_ACTION_GHPP_GET +LASSO_SAML2_ACTION_GHPP_HEAD +LASSO_SAML2_ACTION_GHPP_POST +LASSO_SAML2_ACTION_GHPP_PUT +LASSO_SAML2_ACTION_NAMESPACE_GHPP +LASSO_SAML2_ACTION_NAMESPACE_RWEDC +LASSO_SAML2_ACTION_NAMESPACE_RWEDC_NEGATION +LASSO_SAML2_ACTION_NAMESPACE_UNIX +LASSO_SAML2_ACTION_RWEDC_CONTROL +LASSO_SAML2_ACTION_RWEDC_DELETE +LASSO_SAML2_ACTION_RWEDC_EXECUTE +LASSO_SAML2_ACTION_RWEDC_NEGATION +LASSO_SAML2_ACTION_RWEDC_READ +LASSO_SAML2_ACTION_RWEDC_WRITE +LASSO_SAML2_ASSERTION_HREF +LASSO_SAML2_ASSERTION_INDETERMINATE +LASSO_SAML2_ASSERTION_INVALID +LASSO_SAML2_ASSERTION_PREFIX +LASSO_SAML2_ASSERTION_VALID +LASSO_SAML2_ATTRIBUTE_NAME_EPR +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_BASIC +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_UNSPECIFIED +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_URI +LASSO_SAML2_ATTRIBUTE_PROFILE_BASIC +LASSO_SAML2_ATTRIBUTE_PROFILE_DCE +LASSO_SAML2_ATTRIBUTE_PROFILE_UUID +LASSO_SAML2_ATTRIBUTE_PROFILE_X500 +LASSO_SAML2_AUTHN_CONTEXT_AUTHENTICATED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_KERBEROS +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_NOMAD_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD_PROTECTED_TRANSPORT +LASSO_SAML2_AUTHN_CONTEXT_PERSONALIZED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PGP +LASSO_SAML2_AUTHN_CONTEXT_PREVIOUS_SESSION +LASSO_SAML2_AUTHN_CONTEXT_SECURE_REMOTE_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD_PKI +LASSO_SAML2_AUTHN_CONTEXT_SOFTWARE_PKI +LASSO_SAML2_AUTHN_CONTEXT_SPKI +LASSO_SAML2_AUTHN_CONTEXT_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_TIME_SYNC_TOKEN +LASSO_SAML2_AUTHN_CONTEXT_TLS_CLIENT +LASSO_SAML2_AUTHN_CONTEXT_UNSPECIFIED +LASSO_SAML2_AUTHN_CONTEXT_X509 +LASSO_SAML2_AUTHN_CONTEXT_XMLDSIG +LASSO_SAML2_CONFIRMATION_METHOD_BEARER +LASSO_SAML2_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML2_CONSENT_EXPLICIT +LASSO_SAML2_CONSENT_IMPLICIT +LASSO_SAML2_CONSENT_INAPPLICABLE +LASSO_SAML2_CONSENT_OBTAINED +LASSO_SAML2_CONSENT_PRIOR +LASSO_SAML2_CONSENT_UNAVAILABLE +LASSO_SAML2_DEFLATE_ENCODING +LASSO_SAML2_FIELD_ARTIFACT +LASSO_SAML2_FIELD_ENCODING +LASSO_SAML2_FIELD_RELAYSTATE +LASSO_SAML2_FIELD_REQUEST +LASSO_SAML2_FIELD_RESPONSE +LASSO_SAML2_FIELD_SIGALG +LASSO_SAML2_FIELD_SIGNATURE +LASSO_SAML2_METADATA_BINDING_ARTIFACT +LASSO_SAML2_METADATA_BINDING_PAOS +LASSO_SAML2_METADATA_BINDING_POST +LASSO_SAML2_METADATA_BINDING_REDIRECT +LASSO_SAML2_METADATA_BINDING_SOAP +LASSO_SAML2_METADATA_BINDING_URI +LASSO_SAML2_METADATA_HREF +LASSO_SAML2_METADATA_PREFIX +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_EMAIL +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENTITY +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_KERBEROS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_PERSISTENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_TRANSIENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_UNSPECIFIED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_WINDOWS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_X509 +LASSO_SAML2_PROTOCOL_HREF +LASSO_SAML2_PROTOCOL_PREFIX +LASSO_SAML2_STATUS_CODE_AUTHN_FAILED +LASSO_SAML2_STATUS_CODE_INVALID_ATTR_NAME +LASSO_SAML2_STATUS_CODE_INVALID_NAME_ID_POLICY +LASSO_SAML2_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_SAML2_STATUS_CODE_NO_AVAILABLE_IDP +LASSO_SAML2_STATUS_CODE_NO_PASSIVE +LASSO_SAML2_STATUS_CODE_NO_SUPPORTED_IDP +LASSO_SAML2_STATUS_CODE_PARTIAL_LOGOUT +LASSO_SAML2_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_SAML2_STATUS_CODE_REQUESTER +LASSO_SAML2_STATUS_CODE_REQUEST_DENIED +LASSO_SAML2_STATUS_CODE_REQUEST_UNSUPPORTED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML2_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML2_STATUS_CODE_RESPONDER +LASSO_SAML2_STATUS_CODE_SUCCESS +LASSO_SAML2_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML2_STATUS_CODE_UNKNOWN_ATTR_PROFILE +LASSO_SAML2_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_SAML2_STATUS_CODE_UNSUPPORTED_BINDING +LASSO_SAML2_STATUS_CODE_VERSION_MISMATCH +LASSO_SAML_ASSERTION_HREF +LASSO_SAML_ASSERTION_PREFIX +LASSO_SAML_AUTHENTICATION_METHODS_PKI +LASSO_SAML_AUTHENTICATION_METHOD_HARDWARE_TOKEN +LASSO_SAML_AUTHENTICATION_METHOD_KERBEROS +LASSO_SAML_AUTHENTICATION_METHOD_LIBERTY +LASSO_SAML_AUTHENTICATION_METHOD_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_PGP +LASSO_SAML_AUTHENTICATION_METHOD_SECURE_REMOTE_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_SMARTCARD_PKI +LASSO_SAML_AUTHENTICATION_METHOD_SOFTWARE_PKI +LASSO_SAML_AUTHENTICATION_METHOD_UNSPECIFIED +LASSO_SAML_AUTHENTICATION_METHOD_XKMS +LASSO_SAML_AUTHENTICATION_METHOD_XMLD_SIG +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT01 +LASSO_SAML_CONFIRMATION_METHOD_BEARER +LASSO_SAML_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML_CONFIRMATION_METHOD_SENDER_VOUCHES +LASSO_SAML_MAJOR_VERSION_N +LASSO_SAML_MINOR_VERSION_N +LASSO_SAML_PROTOCOL_HREF +LASSO_SAML_PROTOCOL_PREFIX +LASSO_SAML_STATUS_CODE_REQUESTER +LASSO_SAML_STATUS_CODE_REQUEST_DENIED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML_STATUS_CODE_RESPONDER +LASSO_SAML_STATUS_CODE_SUCCESS +LASSO_SAML_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML_STATUS_CODE_VERSION_MISMATCH +LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED +LASSO_SERVER_ERROR_ADD_PROVIDER_PROTOCOL_MISMATCH +LASSO_SERVER_ERROR_INVALID_XML +LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND +LASSO_SERVER_ERROR_SET_ENCRYPTION_PRIVATE_KEY_FAILED +LASSO_SIGNATURE_METHOD_ATTRIBUTE +LASSO_SIGNATURE_METHOD_DSA_SHA1 +LASSO_SIGNATURE_METHOD_LAST +LASSO_SIGNATURE_METHOD_RSA_SHA1 +LASSO_SIGNATURE_TYPE_ATTRIBUTE +LASSO_SIGNATURE_TYPE_LAST +LASSO_SIGNATURE_TYPE_NONE +LASSO_SIGNATURE_TYPE_SIMPLE +LASSO_SIGNATURE_TYPE_WITHX509 +LASSO_SOAP_ENV_ACTOR +LASSO_SOAP_ENV_HREF +LASSO_SOAP_ENV_PREFIX +LASSO_SOAP_ERROR_MISSING_BODY +LASSO_SOAP_ERROR_MISSING_ENVELOPE +LASSO_SOAP_ERROR_MISSING_HEADER +LASSO_SOAP_ERROR_MISSING_SOAP_FAULT_DETAIL +LASSO_SOAP_ERROR_REDIRECT_REQUEST_FAULT +LASSO_SOAP_FAULT_CODE_CLIENT +LASSO_SOAP_FAULT_CODE_MUST_UNDERSTAND +LASSO_SOAP_FAULT_CODE_SERVER +LASSO_SOAP_FAULT_CODE_VERSION_MISMATCH +LASSO_SOAP_FAULT_REDIRECT_REQUEST +LASSO_WSF_ENABLED +LASSO_WSF_PROFILE_ERROR_INVALID_OR_MISSING_REFERENCE_TO_MESSAGE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_ASSERTION_ID +LASSO_WSF_PROFILE_ERROR_MISSING_CORRELATION +LASSO_WSF_PROFILE_ERROR_MISSING_CREDENTIAL_REF +LASSO_WSF_PROFILE_ERROR_MISSING_DESCRIPTION +LASSO_WSF_PROFILE_ERROR_MISSING_ENDPOINT +LASSO_WSF_PROFILE_ERROR_MISSING_RESOURCE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_SECURITY +LASSO_WSF_PROFILE_ERROR_MISSING_SENDER_ID +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST_UNSUPPORTED_BY_REQUESTER +LASSO_WSF_PROFILE_ERROR_SECURITY_MECHANISM_CHECK_FAILED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED_FOR_DATA +LASSO_WSF_PROFILE_ERROR_SOAP_FAULT +LASSO_WSF_PROFILE_ERROR_UNKNOWN_STATUS_CODE +LASSO_WSF_PROFILE_ERROR_UNSUPPORTED_SECURITY_MECHANISM +LASSO_WSSEC_ERROR_BAD_PASSWORD +LASSO_WSSEC_ERROR_MISSING_SECURITY_TOKEN +LASSO_WSUTIL1_HREF +LASSO_WSUTIL1_PREFIX +LASSO_XML_ERROR_ATTR_NOT_FOUND +LASSO_XML_ERROR_ATTR_VALUE_NOT_FOUND +LASSO_XML_ERROR_INVALID_FILE +LASSO_XML_ERROR_MISSING_NAMESPACE +LASSO_XML_ERROR_NODE_CONTENT_NOT_FOUND +LASSO_XML_ERROR_NODE_NOT_FOUND +LASSO_XML_ERROR_OBJECT_CONSTRUCTION_FAILED +LASSO_XML_ERROR_SCHEMA_INVALID_FRAGMENT +LASSO_XSI_HREF +LASSO_XSI_PREFIX +struct LassoAssertionQuery { LassoAssertionQueryPrivate* private_data } +LassoAssertionQueryRequestType +LassoCheckVersionMode +struct LassoDefederation { } +struct LassoDsKeyInfo { LassoDsKeyValue* KeyValue } +struct LassoDsKeyValue { LassoDsRsaKeyValue* RSAKeyValue } +struct LassoDsRsaKeyValue { char* Modulus, char* Exponent } +struct LassoEcp { gchar* assertionConsumerURL, LassoEcpPrivate* private_data } +LassoEncryptionMode +LassoEncryptionSymKeyType +struct LassoFederation { gchar* remote_providerID, LassoNode* local_nameIdentifier, LassoNode* remote_nameIdentifier, LassoFederationPrivate* private_data } +LassoHttpMethod +struct LassoIdentity { GHashTable* federations, gboolean is_dirty, LassoIdentityPrivate* private_data } +struct LassoLecp { LassoLibAuthnRequestEnvelope* authnRequestEnvelope, LassoLibAuthnResponseEnvelope* authnResponseEnvelope, char* assertionConsumerServiceURL } +struct LassoLibAssertion { char* InResponseTo } +struct LassoLibAuthenticationStatement { LassoLibAuthnContext* AuthnContext, char* ReauthenticateOnOrAfter, char* SessionIndex } +struct LassoLibAuthnContext { char* AuthnContextClassRef, char* AuthnContextStatementRef } +struct LassoLibAuthnRequest { GList* Extension, char* ProviderID, char* AffiliationID, char* NameIDPolicy, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolProfile, char* AssertionConsumerServiceID, LassoLibRequestAuthnContext* RequestAuthnContext, char* RelayState, LassoLibScoping* Scoping, char* consent } +struct LassoLibAuthnRequestEnvelope { GList* Extension, LassoLibAuthnRequest* AuthnRequest, char* ProviderID, char* ProviderName, char* AssertionConsumerServiceURL, LassoLibIDPList* IDPList, gboolean IsPassive } +struct LassoLibAuthnResponse { GList* Extension, char* ProviderID, char* RelayState, char* consent } +struct LassoLibAuthnResponseEnvelope { GList* Extension, LassoLibAuthnResponse* AuthnResponse, char* AssertionConsumerServiceURL } +struct LassoLibFederationTerminationNotification { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* consent, char* RelayState } +struct LassoLibIDPEntries { GList* IDPEntry } +struct LassoLibIDPEntry { char* ProviderID, char* ProviderName, char* Loc } +struct LassoLibIDPList { LassoLibIDPEntries* IDPEntries, char* GetComplete } +struct LassoLibLogoutRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* SessionIndex, char* RelayState, char* consent, char* NotOnOrAfter } +struct LassoLibLogoutResponse { } +struct LassoLibNameIdentifierMappingRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* TargetNamespace, char* consent } +struct LassoLibNameIdentifierMappingResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, LassoSamlNameIdentifier* NameIdentifier } +struct LassoLibRegisterNameIdentifierRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* IDPProvidedNameIdentifier, LassoSamlNameIdentifier* SPProvidedNameIdentifier, LassoSamlNameIdentifier* OldProvidedNameIdentifier, char* RelayState } +struct LassoLibRegisterNameIdentifierResponse { } +struct LassoLibRequestAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextStatementRef, char* AuthnContextComparison } +struct LassoLibScoping { int ProxyCount, LassoLibIDPList* IDPList } +struct LassoLibStatusResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, char* RelayState } +struct LassoLibSubject { LassoSamlNameIdentifier* IDPProvidedNameIdentifier } +struct LassoLogin { LassoLoginProtocolProfile protocolProfile, gchar* assertionArtifact, LassoSamlAssertion* assertion, gchar* nameIDPolicy, LassoHttpMethod http_method, LassoLoginPrivate* private_data } +LassoLoginProtocolProfile +struct LassoLogout { LassoNode* initial_request, LassoNode* initial_response, gchar* initial_remote_providerID, gint providerID_index, LassoHttpMethod initial_http_request_method, LassoLogoutPrivate* private_data } +LassoMdProtocolType +LassoMessageFormat +struct LassoMiscTextNode { char* content, char* name, char* ns_href, char* ns_prefix, gboolean text_child } +struct LassoNameIdManagement { } +struct LassoNameIdentifierMapping { gchar* targetNameIdentifier } +struct LassoNameRegistration { LassoSamlNameIdentifier* oldNameIdentifier } +struct LassoNode { } +struct LassoProfile { LassoServer* server, LassoNode* request, LassoNode* response, LassoNode* nameIdentifier, gchar* remote_providerID, gchar* msg_url, gchar* msg_body, gchar* msg_relayState, LassoIdentity* identity, LassoSession* session, LassoHttpMethod http_request_method, gint signature_status, LassoProfilePrivate* private_data } +LassoProfileSignatureHint +LassoProfileSignatureVerifyHint +LassoProtocolConformance +struct LassoProvider { gchar* ProviderID, LassoProviderRole role, char* metadata_filename, gchar* public_key, gchar* ca_cert_chain, LassoProviderPrivate* private_data } +LassoProviderRole +LassoRequestType +struct LassoSaml2Action { char* content, char* Namespace } +struct LassoSaml2Advice { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2Assertion { LassoSaml2NameID* Issuer, LassoSaml2Subject* Subject, LassoSaml2Conditions* Conditions, LassoSaml2Advice* Advice, GList* Statement, GList* AuthnStatement, GList* AuthzDecisionStatement, GList* AttributeStatement, char* Version, char* ID, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file, gboolean encryption_activated, char* encryption_public_key_str, LassoEncryptionSymKeyType encryption_sym_key_type } +LassoSaml2AssertionValidationState +struct LassoSaml2Attribute { GList* AttributeValue, char* Name, char* NameFormat, char* FriendlyName } +struct LassoSaml2AttributeStatement { GList* Attribute, GList* EncryptedAttribute } +struct LassoSaml2AttributeValue { GList* any } +struct LassoSaml2AudienceRestriction { char* Audience } +struct LassoSaml2AuthnContext { char* AuthnContextClassRef, char* AuthnContextDeclRef, char* AuthenticatingAuthority } +struct LassoSaml2AuthnStatement { LassoSaml2SubjectLocality* SubjectLocality, LassoSaml2AuthnContext* AuthnContext, char* AuthnInstant, char* SessionIndex, char* SessionNotOnOrAfter } +struct LassoSaml2AuthzDecisionStatement { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource, char* Decision } +struct LassoSaml2BaseIDAbstract { char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2ConditionAbstract { } +struct LassoSaml2Conditions { GList* Condition, GList* AudienceRestriction, GList* OneTimeUse, GList* ProxyRestriction, char* NotBefore, char* NotOnOrAfter } +struct LassoSaml2EncryptedElement { xmlNode* EncryptedData, GList* EncryptedKey, LassoNode* original_data } +struct LassoSaml2Evidence { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2KeyInfoConfirmationData { } +struct LassoSaml2NameID { char* content, char* Format, char* SPProvidedID, char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2OneTimeUse { } +struct LassoSaml2ProxyRestriction { char* Audience, char* Count } +struct LassoSaml2StatementAbstract { } +struct LassoSaml2Subject { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmation* SubjectConfirmation } +struct LassoSaml2SubjectConfirmation { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmationData* SubjectConfirmationData, char* Method } +struct LassoSaml2SubjectConfirmationData { char* NotBefore, char* NotOnOrAfter, char* Recipient, char* InResponseTo, char* Address } +struct LassoSaml2SubjectLocality { char* Address, char* DNSName } +struct LassoSamlAdvice { GList* AssertionIDReference, LassoNode* Assertion } +struct LassoSamlAssertion { LassoSamlConditions* Conditions, LassoSamlAdvice* Advice, LassoSamlSubjectStatement* SubjectStatement, LassoSamlAuthenticationStatement* AuthenticationStatement, LassoSamlAttributeStatement* AttributeStatement, int MajorVersion, int MinorVersion, char* AssertionID, char* Issuer, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlAttribute { gchar* attributeName, gchar* attributeNameSpace, GList* AttributeValue } +struct LassoSamlAttributeDesignator { char* AttributeName, char* AttributeNamespace } +struct LassoSamlAttributeStatement { GList* Attribute } +struct LassoSamlAttributeValue { GList* any } +struct LassoSamlAudienceRestrictionCondition { GList* Audience } +struct LassoSamlAuthenticationStatement { LassoSamlSubjectLocality* SubjectLocality, GList* AuthorityBinding, char* AuthenticationMethod, char* AuthenticationInstant } +struct LassoSamlAuthorityBinding { char* AuthorityKind, char* Location, char* Binding } +struct LassoSamlConditionAbstract { } +struct LassoSamlConditions { GList* Condition, GList* AudienceRestrictionCondition, char* NotBefore, char* NotOnOrAfter } +struct LassoSamlNameIdentifier { char* NameQualifier, char* Format, char* content } +struct LassoSamlStatementAbstract { } +struct LassoSamlSubject { LassoSamlNameIdentifier* NameIdentifier, LassoSamlSubjectConfirmation* SubjectConfirmation, LassoSaml2EncryptedElement* EncryptedNameIdentifier } +struct LassoSamlSubjectConfirmation { GList* ConfirmationMethod, char* SubjectConfirmationData, LassoDsKeyInfo* KeyInfo } +struct LassoSamlSubjectLocality { char* IPAddress, char* DNSAddress } +struct LassoSamlSubjectStatement { } +struct LassoSamlSubjectStatementAbstract { LassoSamlSubject* Subject } +struct LassoSamlp2ArtifactResolve { char* Artifact } +struct LassoSamlp2ArtifactResponse { LassoNode* any } +struct LassoSamlp2AssertionIDRequest { char* AssertionIDRef } +struct LassoSamlp2AttributeQuery { GList* Attribute } +struct LassoSamlp2AuthnQuery { LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, char* SessionIndex } +struct LassoSamlp2AuthnRequest { LassoSaml2Subject* Subject, LassoSamlp2NameIDPolicy* NameIDPolicy, LassoSaml2Conditions* Conditions, LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, LassoSamlp2Scoping* Scoping, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolBinding, int AssertionConsumerServiceIndex, char* AssertionConsumerServiceURL, int AttributeConsumingServiceIndex, char* ProviderName, G_GNUC_DEPRECATED char } +struct LassoSamlp2AuthzDecisionQuery { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource } +struct LassoSamlp2Extensions { } +struct LassoSamlp2IDPEntry { char* ProviderID, char* Name, char* Loc } +struct LassoSamlp2IDPList { LassoSamlp2IDPEntry* IDPEntry, char* GetComplete } +struct LassoSamlp2LogoutRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* SessionIndex, char* Reason, char* NotOnOrAfter, G_GNUC_DEPRECATED char } +struct LassoSamlp2LogoutResponse { G_GNUC_DEPRECATED char } +struct LassoSamlp2ManageNameIDRequest { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* NewID, LassoSaml2EncryptedElement* NewEncryptedID, LassoSamlp2Terminate* Terminate } +struct LassoSamlp2ManageNameIDResponse { } +struct LassoSamlp2NameIDMappingRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSamlp2NameIDPolicy* NameIDPolicy } +struct LassoSamlp2NameIDMappingResponse { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID } +struct LassoSamlp2NameIDPolicy { char* Format, char* SPNameQualifier, gboolean AllowCreate } +struct LassoSamlp2RequestAbstract { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, char* ID, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2RequestedAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextDeclRef, char* Comparison } +struct LassoSamlp2Response { GList* Assertion, GList* EncryptedAssertion } +struct LassoSamlp2Scoping { LassoSamlp2IDPList* IDPList, char* RequesterID, char* ProxyCount } +struct LassoSamlp2Status { LassoSamlp2StatusCode* StatusCode, char* StatusMessage, LassoSamlp2StatusDetail* StatusDetail } +struct LassoSamlp2StatusCode { LassoSamlp2StatusCode* StatusCode, char* Value } +struct LassoSamlp2StatusDetail { } +struct LassoSamlp2StatusResponse { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, LassoSamlp2Status* Status, char* ID, char* InResponseTo, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2SubjectQueryAbstract { LassoSaml2Subject* Subject } +struct LassoSamlp2Terminate { } +struct LassoSamlpRequest { char* AssertionArtifact } +struct LassoSamlpRequestAbstract { GList* RespondWith, char* RequestID, int MajorVersion, int MinorVersion, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpResponse { LassoSamlpStatus* Status, GList* Assertion } +struct LassoSamlpResponseAbstract { char* ResponseID, char* InResponseTo, int MajorVersion, int MinorVersion, char* IssueInstant, char* Recipient, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpStatus { LassoSamlpStatusCode* StatusCode, char* StatusMessage } +struct LassoSamlpStatusCode { LassoSamlpStatusCode* StatusCode, char* Value } +struct LassoServer { GHashTable* providers, GHashTable* services, gchar* private_key, gchar* private_key_password, gchar* certificate, LassoSignatureMethod signature_method, LassoServerPrivate* private_data } +struct LassoSession { GHashTable* assertions, gboolean is_dirty, LassoSessionPrivate* private_data } +LassoSignatureMethod +LassoSignatureType +struct LassoSoapBody { GList* any, gchar* Id } +struct LassoSoapDetail { GList* any } +struct LassoSoapEnvelope { LassoSoapHeader* Header, LassoSoapBody* Body } +struct LassoSoapFault { gchar* faultcode, gchar* faultstring, GList* faultactor, LassoSoapDetail* Detail } +struct LassoSoapHeader { GList* Other } +lasso_error_t lasso_assertion_query_add_attribute_request ( LassoAssertionQuery* assertion_query, char* format, char* name ) +lasso_error_t lasso_assertion_query_build_request_msg ( LassoAssertionQuery* assertion_query ) +lasso_error_t lasso_assertion_query_build_response_msg ( LassoAssertionQuery* assertion_query ) +None lasso_assertion_query_destroy ( LassoAssertionQuery* assertion_query ) +LassoAssertionQueryRequestType lasso_assertion_query_get_request_type ( LassoAssertionQuery* assertion_query ) +GType lasso_assertion_query_get_type ( ) +lasso_error_t lasso_assertion_query_init_request ( LassoAssertionQuery* assertion_query, char* remote_provider_id, LassoHttpMethod http_method, LassoAssertionQueryRequestType query_request_type ) +LassoAssertionQuery* lasso_assertion_query_new ( LassoServer* server ) +lasso_error_t lasso_assertion_query_process_request_msg ( LassoAssertionQuery* assertion_query, gchar* request_msg ) +lasso_error_t lasso_assertion_query_process_response_msg ( LassoAssertionQuery* assertion_query, gchar* response_msg ) +lasso_error_t lasso_assertion_query_validate_request ( LassoAssertionQuery* assertion_query ) +char* lasso_build_unique_id ( unsigned int size ) +int lasso_check_version ( int major, int minor, int subminor, LassoCheckVersionMode mode ) +lasso_error_t lasso_defederation_build_notification_msg ( LassoDefederation* defederation ) +None lasso_defederation_destroy ( LassoDefederation* defederation ) +GType lasso_defederation_get_type ( ) +lasso_error_t lasso_defederation_init_notification ( LassoDefederation* defederation, gchar* remote_providerID, LassoHttpMethod http_method ) +LassoDefederation* lasso_defederation_new ( LassoServer* server ) +lasso_error_t lasso_defederation_process_notification_msg ( LassoDefederation* defederation, gchar* notification_msg ) +lasso_error_t lasso_defederation_validate_notification ( LassoDefederation* defederation ) +GType lasso_ds_key_info_get_type ( ) +LassoDsKeyInfo* lasso_ds_key_info_new ( ) +GType lasso_ds_key_value_get_type ( ) +LassoDsKeyValue* lasso_ds_key_value_new ( ) +GType lasso_ds_rsa_key_value_get_type ( ) +LassoDsRsaKeyValue* lasso_ds_rsa_key_value_new ( ) +None lasso_ecp_destroy ( LassoEcp* ecp ) +GType lasso_ecp_get_type ( ) +LassoEcp* lasso_ecp_new ( LassoServer* server ) +lasso_error_t lasso_ecp_process_authn_request_msg ( LassoEcp* ecp, const char* authn_request_msg ) +lasso_error_t lasso_ecp_process_response_msg ( LassoEcp* ecp, const char* response_msg ) +None lasso_federation_build_local_name_identifier ( LassoFederation* federation, const gchar* nameQualifier, const gchar* format, const gchar* content ) +None lasso_federation_destroy ( LassoFederation* federation ) +GType lasso_federation_get_type ( ) +LassoFederation* lasso_federation_new ( const gchar* remote_providerID ) +gboolean lasso_federation_verify_name_identifier ( LassoFederation* federation, LassoNode* name_identifier ) +char* lasso_get_prefix_for_dst_service_href ( const char* href ) +gchar* lasso_get_prefix_for_idwsf2_dst_service_href ( const gchar* href ) +None lasso_identity_destroy ( LassoIdentity* identity ) +gchar* lasso_identity_dump ( LassoIdentity* identity ) +LassoFederation* lasso_identity_get_federation ( LassoIdentity* identity, const char* providerID ) +GType lasso_identity_get_type ( ) +LassoIdentity* lasso_identity_new ( ) +LassoIdentity* lasso_identity_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_init ( ) +lasso_error_t lasso_lecp_build_authn_request_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_request_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_msg ( LassoLecp* lecp ) +None lasso_lecp_destroy ( LassoLecp* lecp ) +GType lasso_lecp_get_type ( ) +lasso_error_t lasso_lecp_init_authn_request ( LassoLecp* lecp, const char* remote_providerID ) +LassoLecp* lasso_lecp_new ( LassoServer* server ) +lasso_error_t lasso_lecp_process_authn_request_envelope_msg ( LassoLecp* lecp, const char* request_msg ) +lasso_error_t lasso_lecp_process_authn_request_msg ( LassoLecp* lecp, const char* authn_request_msg ) +lasso_error_t lasso_lecp_process_authn_response_envelope_msg ( LassoLecp* lecp, const char* response_msg ) +GType lasso_lib_assertion_get_type ( ) +LassoLibAssertion* lasso_lib_assertion_new ( ) +LassoLibAssertion* lasso_lib_assertion_new_full ( const char* issuer, const char* requestID, const char* audience, const char* notBefore, const char* notOnOrAfter ) +GType lasso_lib_authentication_statement_get_type ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new_full ( const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, LassoSamlNameIdentifier* sp_identifier, LassoSamlNameIdentifier* idp_identifier ) +GType lasso_lib_authn_context_get_type ( ) +LassoNode* lasso_lib_authn_context_new ( ) +GType lasso_lib_authn_request_envelope_get_type ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new_full ( LassoLibAuthnRequest* authnRequest, char* providerID, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_request_get_type ( ) +LassoLibAuthnRequest* lasso_lib_authn_request_new ( ) +GType lasso_lib_authn_response_envelope_get_type ( ) +LassoLibAuthnResponseEnvelope* lasso_lib_authn_response_envelope_new ( LassoLibAuthnResponse* response, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_response_get_type ( ) +LassoNode* lasso_lib_authn_response_new ( char* providerID, LassoLibAuthnRequest* request ) +GType lasso_lib_federation_termination_notification_get_type ( ) +LassoNode* lasso_lib_federation_termination_notification_new ( ) +LassoNode* lasso_lib_federation_termination_notification_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_idp_entries_get_type ( ) +LassoNode* lasso_lib_idp_entries_new ( ) +GType lasso_lib_idp_entry_get_type ( ) +LassoNode* lasso_lib_idp_entry_new ( ) +GType lasso_lib_idp_list_get_type ( ) +LassoNode* lasso_lib_idp_list_new ( ) +GType lasso_lib_logout_request_get_type ( ) +LassoNode* lasso_lib_logout_request_new ( ) +LassoNode* lasso_lib_logout_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_logout_response_get_type ( ) +LassoNode* lasso_lib_logout_response_new ( ) +LassoNode* lasso_lib_logout_response_new_full ( char* providerID, const char* statusCodeValue, LassoLibLogoutRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_request_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, const char* targetNamespace, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_response_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new_full ( char* provideRID, const char* statusCodeValue, LassoLibNameIdentifierMappingRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_request_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_request_new ( ) +LassoNode* lasso_lib_register_name_identifier_request_new_full ( const char* providerID, LassoSamlNameIdentifier* idpNameIdentifier, LassoSamlNameIdentifier* spNameIdentifier, LassoSamlNameIdentifier* oldNameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_response_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_response_new ( ) +LassoNode* lasso_lib_register_name_identifier_response_new_full ( const char* providerID, const char* statusCodeValue, LassoLibRegisterNameIdentifierRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_request_authn_context_get_type ( ) +LassoLibRequestAuthnContext* lasso_lib_request_authn_context_new ( ) +GType lasso_lib_scoping_get_type ( ) +LassoLibScoping* lasso_lib_scoping_new ( ) +GType lasso_lib_status_response_get_type ( ) +LassoNode* lasso_lib_status_response_new ( ) +GType lasso_lib_subject_get_type ( ) +LassoLibSubject* lasso_lib_subject_new ( ) +lasso_error_t lasso_login_accept_sso ( LassoLogin* login ) +lasso_error_t lasso_login_build_artifact_msg ( LassoLogin* login, LassoHttpMethod http_method ) +lasso_error_t lasso_login_build_assertion ( LassoLogin* login, const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, const char* notBefore, const char* notOnOrAfter ) +lasso_error_t lasso_login_build_authn_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_authn_response_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_response_msg ( LassoLogin* login, gchar* remote_providerID ) +None lasso_login_destroy ( LassoLogin* login ) +gchar* lasso_login_dump ( LassoLogin* login ) +LassoNode* lasso_login_get_assertion ( LassoLogin* login ) +GType lasso_login_get_type ( ) +lasso_error_t lasso_login_init_authn_request ( LassoLogin* login, const gchar* remote_providerID, LassoHttpMethod http_method ) +lasso_error_t lasso_login_init_idp_initiated_authn_request ( LassoLogin* login, const gchar* remote_providerID ) +lasso_error_t lasso_login_init_request ( LassoLogin* login, gchar* response_msg, LassoHttpMethod response_http_method ) +gboolean lasso_login_must_ask_for_consent ( LassoLogin* login ) +gboolean lasso_login_must_authenticate ( LassoLogin* login ) +LassoLogin* lasso_login_new ( LassoServer* server ) +LassoLogin* lasso_login_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_login_process_authn_request_msg ( LassoLogin* login, const char* authn_request_msg ) +lasso_error_t lasso_login_process_authn_response_msg ( LassoLogin* login, gchar* authn_response_msg ) +lasso_error_t lasso_login_process_paos_response_msg ( LassoLogin* login, gchar* msg ) +lasso_error_t lasso_login_process_request_msg ( LassoLogin* login, gchar* request_msg ) +lasso_error_t lasso_login_process_response_msg ( LassoLogin* login, gchar* response_msg ) +lasso_error_t lasso_login_validate_request_msg ( LassoLogin* login, gboolean authentication_result, gboolean is_consent_obtained ) +lasso_error_t lasso_logout_build_request_msg ( LassoLogout* logout ) +lasso_error_t lasso_logout_build_response_msg ( LassoLogout* logout ) +None lasso_logout_destroy ( LassoLogout* logout ) +gchar* lasso_logout_dump ( LassoLogout* logout ) +gchar* lasso_logout_get_next_providerID ( LassoLogout* logout ) +GType lasso_logout_get_type ( ) +lasso_error_t lasso_logout_init_request ( LassoLogout* logout, gchar* remote_providerID, LassoHttpMethod request_method ) +LassoLogout* lasso_logout_new ( LassoServer* server ) +LassoLogout* lasso_logout_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_logout_process_request_msg ( LassoLogout* logout, gchar* request_msg ) +lasso_error_t lasso_logout_process_response_msg ( LassoLogout* logout, gchar* response_msg ) +lasso_error_t lasso_logout_reset_providerID_index ( LassoLogout* logout ) +lasso_error_t lasso_logout_validate_request ( LassoLogout* logout ) +GType lasso_misc_text_node_get_type ( ) +xmlNode* lasso_misc_text_node_get_xml_content ( LassoMiscTextNode* misc_text_node ) +LassoNode* lasso_misc_text_node_new ( ) +LassoMiscTextNode* lasso_misc_text_node_new_with_string ( const char* content ) +LassoMiscTextNode* lasso_misc_text_node_new_with_xml_node ( xmlNode* xml_node ) +None lasso_misc_text_node_set_xml_content ( LassoMiscTextNode* misc_text_node, xmlNode* node ) +lasso_error_t lasso_name_id_management_build_request_msg ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_id_management_build_response_msg ( LassoNameIdManagement* name_id_management ) +None lasso_name_id_management_destroy ( LassoNameIdManagement* name_id_management ) +char* lasso_name_id_management_dump ( LassoNameIdManagement* name_id_management ) +GType lasso_name_id_management_get_type ( ) +lasso_error_t lasso_name_id_management_init_request ( LassoNameIdManagement* name_id_management, char* remote_provider_id, char* new_name_id, LassoHttpMethod http_method ) +LassoNameIdManagement* lasso_name_id_management_new ( LassoServer* server ) +LassoNameIdManagement* lasso_name_id_management_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_id_management_process_request_msg ( LassoNameIdManagement* name_id_management, gchar* request_msg ) +lasso_error_t lasso_name_id_management_process_response_msg ( LassoNameIdManagement* name_id_management, gchar* response_msg ) +lasso_error_t lasso_name_id_management_validate_request ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_identifier_mapping_build_request_msg ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_identifier_mapping_build_response_msg ( LassoNameIdentifierMapping* mapping ) +None lasso_name_identifier_mapping_destroy ( LassoNameIdentifierMapping* mapping ) +GType lasso_name_identifier_mapping_get_type ( ) +lasso_error_t lasso_name_identifier_mapping_init_request ( LassoNameIdentifierMapping* mapping, gchar* targetNamespace, gchar* remote_providerID ) +LassoNameIdentifierMapping* lasso_name_identifier_mapping_new ( LassoServer* server ) +lasso_error_t lasso_name_identifier_mapping_process_request_msg ( LassoNameIdentifierMapping* mapping, gchar* request_msg ) +lasso_error_t lasso_name_identifier_mapping_process_response_msg ( LassoNameIdentifierMapping* mapping, gchar* response_msg ) +lasso_error_t lasso_name_identifier_mapping_validate_request ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_registration_build_request_msg ( LassoNameRegistration* name_registration ) +lasso_error_t lasso_name_registration_build_response_msg ( LassoNameRegistration* name_registration ) +None lasso_name_registration_destroy ( LassoNameRegistration* name_registration ) +gchar* lasso_name_registration_dump ( LassoNameRegistration* name_registration ) +GType lasso_name_registration_get_type ( ) +lasso_error_t lasso_name_registration_init_request ( LassoNameRegistration* name_registration, char* remote_providerID, LassoHttpMethod http_method ) +LassoNameRegistration* lasso_name_registration_new ( LassoServer* server ) +LassoNameRegistration* lasso_name_registration_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_registration_process_request_msg ( LassoNameRegistration* name_registration, gchar* request_msg ) +lasso_error_t lasso_name_registration_process_response_msg ( LassoNameRegistration* name_registration, gchar* response_msg ) +lasso_error_t lasso_name_registration_validate_request ( LassoNameRegistration* name_registration ) +None lasso_node_cleanup_original_xmlnodes ( LassoNode* node ) +char* lasso_node_debug ( LassoNode* node, int level ) +None lasso_node_destroy ( LassoNode* node ) +char* lasso_node_dump ( LassoNode* node ) +char* lasso_node_export_to_base64 ( LassoNode* node ) +char* lasso_node_export_to_ecp_soap_response ( LassoNode* node, const char* assertionConsumerURL ) +char* lasso_node_export_to_paos_request ( LassoNode* node, const char* issuer, const char* responseConsumerURL, const char* relay_state ) +char* lasso_node_export_to_query ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file ) +char* lasso_node_export_to_query_with_password ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file, const char* private_key_file_password ) +char* lasso_node_export_to_soap ( LassoNode* node ) +gchar* lasso_node_export_to_xml ( LassoNode* node ) +const char* lasso_node_get_name ( LassoNode* node ) +const char* lasso_node_get_namespace ( LassoNode* node ) +xmlNode* lasso_node_get_original_xmlnode ( LassoNode* node ) +GType lasso_node_get_type ( ) +xmlNode* lasso_node_get_xmlNode ( LassoNode* node, gboolean lasso_dump ) +LassoMessageFormat lasso_node_init_from_message ( LassoNode* node, const char* message ) +gboolean lasso_node_init_from_query ( LassoNode* node, const char* query ) +lasso_error_t lasso_node_init_from_xml ( LassoNode* node, xmlNode* xmlnode ) +LassoNode* lasso_node_new ( ) +LassoNode* lasso_node_new_from_dump ( const char* dump ) +LassoNode* lasso_node_new_from_soap ( const char* soap ) +LassoNode* lasso_node_new_from_xmlNode ( xmlNode* node ) +None lasso_node_set_custom_namespace ( LassoNode* node, const char* prefix, const char* href ) +None lasso_node_set_custom_nodename ( LassoNode* node, const char* nodename ) +None lasso_node_set_original_xmlnode ( LassoNode* node, xmlNode* xmlnode ) +char* lasso_profile_get_artifact ( LassoProfile* profile ) +char* lasso_profile_get_artifact_message ( LassoProfile* profile ) +LassoIdentity* lasso_profile_get_identity ( LassoProfile* profile ) +LassoNode* lasso_profile_get_nameIdentifier ( LassoProfile* profile ) +LassoRequestType lasso_profile_get_request_type_from_soap_msg ( const gchar* soap ) +LassoSession* lasso_profile_get_session ( LassoProfile* profile ) +LassoProfileSignatureHint lasso_profile_get_signature_hint ( LassoProfile* profile ) +lasso_error_t lasso_profile_get_signature_status ( LassoProfile* profile ) +LassoProfileSignatureVerifyHint lasso_profile_get_signature_verify_hint ( LassoProfile* profile ) +GType lasso_profile_get_type ( ) +gboolean lasso_profile_is_identity_dirty ( LassoProfile* profile ) +gboolean lasso_profile_is_liberty_query ( const gchar* query ) +gboolean lasso_profile_is_saml_query ( const gchar* query ) +gboolean lasso_profile_is_session_dirty ( LassoProfile* profile ) +None lasso_profile_set_artifact_message ( LassoProfile* profile, const char* message ) +lasso_error_t lasso_profile_set_identity_from_dump ( LassoProfile* profile, const gchar* dump ) +lasso_error_t lasso_profile_set_session_from_dump ( LassoProfile* profile, const gchar* dump ) +None lasso_profile_set_signature_hint ( LassoProfile* profile, LassoProfileSignatureHint signature_hint ) +None lasso_profile_set_signature_verify_hint ( LassoProfile* profile, LassoProfileSignatureVerifyHint signature_verify_hint ) +lasso_error_t lasso_profile_set_soap_fault_response ( LassoProfile* profile, const char* faultcode, const char* faultstring, GList* details ) +LassoProviderRole lasso_profile_sso_role_with ( LassoProfile* profile, const char* remote_provider_id ) +gboolean lasso_provider_accept_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type, LassoHttpMethod http_method, gboolean initiate_profile ) +gchar* lasso_provider_get_assertion_consumer_service_url ( LassoProvider* provider, const char* service_id ) +gchar* lasso_provider_get_base64_succinct_id ( const LassoProvider* provider ) +char* lasso_provider_get_cache_duration ( LassoProvider* provider ) +gchar* lasso_provider_get_default_name_id_format ( LassoProvider* provider ) +LassoEncryptionMode lasso_provider_get_encryption_mode ( LassoProvider* provider ) +LassoHttpMethod lasso_provider_get_first_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type ) +GList* lasso_provider_get_idp_supported_attributes ( LassoProvider* provider ) +GList* lasso_provider_get_metadata_keys_for_role ( LassoProvider* provider, LassoProviderRole role ) +GList* lasso_provider_get_metadata_list ( LassoProvider* provider, const char* name ) +GList* lasso_provider_get_metadata_list_for_role ( const LassoProvider* provider, LassoProviderRole role, const char* name ) +gchar* lasso_provider_get_metadata_one ( LassoProvider* provider, const char* name ) +char* lasso_provider_get_metadata_one_for_role ( LassoProvider* provider, LassoProviderRole role, const char* name ) +xmlNode* lasso_provider_get_organization ( const LassoProvider* provider ) +LassoProtocolConformance lasso_provider_get_protocol_conformance ( const LassoProvider* provider ) +LassoProviderRole lasso_provider_get_roles ( LassoProvider* provider ) +const char* lasso_provider_get_sp_name_qualifier ( LassoProvider* provider ) +GType lasso_provider_get_type ( ) +char* lasso_provider_get_valid_until ( LassoProvider* provider ) +gboolean lasso_provider_has_protocol_profile ( LassoProvider* provider, LassoMdProtocolType protocol_type, const char* protocol_profile ) +gboolean lasso_provider_match_conformance ( LassoProvider* provider, LassoProvider* another_provider ) +LassoProvider* lasso_provider_new ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_buffer ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_dump ( const gchar* dump ) +LassoSaml2EncryptedElement* lasso_provider_saml2_node_encrypt ( const LassoProvider* provider, LassoNode* lasso_node ) +None lasso_provider_set_encryption_mode ( LassoProvider* provider, LassoEncryptionMode encryption_mode ) +None lasso_provider_set_encryption_sym_key_type ( LassoProvider* provider, LassoEncryptionSymKeyType encryption_sym_key_type ) +lasso_error_t lasso_provider_verify_single_node_signature ( LassoProvider* provider, LassoNode* node, const char* id_attr_name ) +None lasso_register_dst_service ( const char* prefix, const char* href ) +None lasso_register_idwsf2_dst_service ( const gchar* prefix, const gchar* href ) +GType lasso_saml2_action_get_type ( ) +LassoNode* lasso_saml2_action_new ( ) +LassoNode* lasso_saml2_action_new_with_string ( char* content ) +GType lasso_saml2_advice_get_type ( ) +LassoNode* lasso_saml2_advice_new ( ) +lasso_error_t lasso_saml2_assertion_add_attribute_with_node ( LassoSaml2Assertion* assertion, const char* name, const char* nameformat, LassoNode* content ) +None lasso_saml2_assertion_add_audience_restriction ( LassoSaml2Assertion* saml2_assertion, const char* providerID ) +None lasso_saml2_assertion_add_proxy_limit ( LassoSaml2Assertion* saml2_assertion, int proxy_count, GList* proxy_audiences ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying ( LassoSaml2Assertion* saml2_assertion ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying_to ( LassoSaml2Assertion* saml2_assertion, const char* audience ) +lasso_error_t lasso_saml2_assertion_decrypt_subject ( LassoSaml2Assertion* assertion, LassoServer* server ) +const char* lasso_saml2_assertion_get_in_response_to ( LassoSaml2Assertion* assertion ) +LassoProvider* lasso_saml2_assertion_get_issuer_provider ( const LassoSaml2Assertion* saml2_assertion, const LassoServer* server ) +LassoSaml2SubjectConfirmationData* lasso_saml2_assertion_get_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, gboolean create ) +GType lasso_saml2_assertion_get_type ( ) +gboolean lasso_saml2_assertion_has_audience_restriction ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_has_one_time_use ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_is_audience_restricted ( LassoSaml2Assertion* saml2_assertion, char* providerID ) +LassoNode* lasso_saml2_assertion_new ( ) +None lasso_saml2_assertion_set_basic_conditions ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, gboolean one_time_use ) +None lasso_saml2_assertion_set_one_time_use ( LassoSaml2Assertion* saml2_assertion, gboolean one_time_use ) +None lasso_saml2_assertion_set_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, const char* Recipient, const char* InResponseTo, const char* Address ) +None lasso_saml2_assertion_set_subject_confirmation_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +None lasso_saml2_assertion_set_subject_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_audience ( LassoSaml2Assertion* saml2_assertion, const gchar* audience ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_conditions ( LassoSaml2Assertion* saml2_assertion, const char* relaying_party_providerID ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_time_checks ( LassoSaml2Assertion* saml2_assertion, unsigned int tolerance, time_t now ) +GType lasso_saml2_attribute_get_type ( ) +LassoNode* lasso_saml2_attribute_new ( ) +GType lasso_saml2_attribute_statement_get_type ( ) +LassoNode* lasso_saml2_attribute_statement_new ( ) +GType lasso_saml2_attribute_value_get_type ( ) +LassoSaml2AttributeValue* lasso_saml2_attribute_value_new ( ) +GType lasso_saml2_audience_restriction_get_type ( ) +LassoNode* lasso_saml2_audience_restriction_new ( ) +GType lasso_saml2_authn_context_get_type ( ) +LassoNode* lasso_saml2_authn_context_new ( ) +GType lasso_saml2_authn_statement_get_type ( ) +LassoNode* lasso_saml2_authn_statement_new ( ) +GType lasso_saml2_authz_decision_statement_get_type ( ) +LassoNode* lasso_saml2_authz_decision_statement_new ( ) +GType lasso_saml2_base_idabstract_get_type ( ) +LassoNode* lasso_saml2_base_idabstract_new ( ) +GType lasso_saml2_condition_abstract_get_type ( ) +LassoNode* lasso_saml2_condition_abstract_new ( ) +GType lasso_saml2_conditions_get_type ( ) +LassoNode* lasso_saml2_conditions_new ( ) +LassoSaml2EncryptedElement* lasso_saml2_encrypted_element_build_encrypted_persistent_name_id ( const char* id, const char* idpID, const LassoProvider* provider ) +GType lasso_saml2_encrypted_element_get_type ( ) +LassoNode* lasso_saml2_encrypted_element_new ( ) +lasso_error_t lasso_saml2_encrypted_element_server_decrypt ( LassoSaml2EncryptedElement* encrypted_element, LassoServer* server, LassoNode** decrypted_node ) +GType lasso_saml2_evidence_get_type ( ) +LassoNode* lasso_saml2_evidence_new ( ) +GType lasso_saml2_key_info_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_key_info_confirmation_data_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_build_persistent ( const char* id, const char* idpID, const char* providerID ) +gboolean lasso_saml2_name_id_equals ( LassoSaml2NameID* name_id, LassoSaml2NameID* other_name_id ) +GType lasso_saml2_name_id_get_type ( ) +LassoNode* lasso_saml2_name_id_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_new_with_persistent_format ( const char* id, const char* idpID, const char* providerID ) +LassoNode* lasso_saml2_name_id_new_with_string ( char* content ) +GType lasso_saml2_one_time_use_get_type ( ) +LassoNode* lasso_saml2_one_time_use_new ( ) +GType lasso_saml2_proxy_restriction_get_type ( ) +LassoNode* lasso_saml2_proxy_restriction_new ( ) +GType lasso_saml2_statement_abstract_get_type ( ) +LassoNode* lasso_saml2_statement_abstract_new ( ) +GType lasso_saml2_subject_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_data_new ( ) +GType lasso_saml2_subject_confirmation_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_new ( ) +GType lasso_saml2_subject_get_type ( ) +GType lasso_saml2_subject_locality_get_type ( ) +LassoNode* lasso_saml2_subject_locality_new ( ) +LassoNode* lasso_saml2_subject_new ( ) +GType lasso_saml_advice_get_type ( ) +LassoNode* lasso_saml_advice_new ( ) +GType lasso_saml_assertion_get_type ( ) +LassoSamlAssertion* lasso_saml_assertion_new ( ) +GType lasso_saml_attribute_designator_get_type ( ) +LassoNode* lasso_saml_attribute_designator_new ( ) +GType lasso_saml_attribute_get_type ( ) +LassoSamlAttribute* lasso_saml_attribute_new ( ) +GType lasso_saml_attribute_statement_get_type ( ) +LassoSamlAttributeStatement* lasso_saml_attribute_statement_new ( ) +GType lasso_saml_attribute_value_get_type ( ) +LassoSamlAttributeValue* lasso_saml_attribute_value_new ( ) +GType lasso_saml_audience_restriction_condition_get_type ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new_full ( const char* audience ) +GType lasso_saml_authentication_statement_get_type ( ) +LassoNode* lasso_saml_authentication_statement_new ( ) +GType lasso_saml_authority_binding_get_type ( ) +LassoNode* lasso_saml_authority_binding_new ( ) +GType lasso_saml_condition_abstract_get_type ( ) +GType lasso_saml_conditions_get_type ( ) +LassoSamlConditions* lasso_saml_conditions_new ( ) +GType lasso_saml_name_identifier_get_type ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new_from_xmlNode ( xmlNode* xmlnode ) +GType lasso_saml_statement_abstract_get_type ( ) +GType lasso_saml_subject_confirmation_get_type ( ) +LassoSamlSubjectConfirmation* lasso_saml_subject_confirmation_new ( ) +GType lasso_saml_subject_get_type ( ) +GType lasso_saml_subject_locality_get_type ( ) +LassoNode* lasso_saml_subject_locality_new ( ) +LassoNode* lasso_saml_subject_new ( ) +GType lasso_saml_subject_statement_abstract_get_type ( ) +GType lasso_saml_subject_statement_get_type ( ) +LassoNode* lasso_saml_subject_statement_new ( ) +GType lasso_samlp2_artifact_resolve_get_type ( ) +LassoNode* lasso_samlp2_artifact_resolve_new ( ) +GType lasso_samlp2_artifact_response_get_type ( ) +LassoNode* lasso_samlp2_artifact_response_new ( ) +GType lasso_samlp2_assertion_id_request_get_type ( ) +LassoNode* lasso_samlp2_assertion_id_request_new ( ) +GType lasso_samlp2_attribute_query_get_type ( ) +LassoNode* lasso_samlp2_attribute_query_new ( ) +GType lasso_samlp2_authn_query_get_type ( ) +LassoNode* lasso_samlp2_authn_query_new ( ) +GType lasso_samlp2_authn_request_get_type ( ) +LassoNode* lasso_samlp2_authn_request_new ( ) +GType lasso_samlp2_authz_decision_query_get_type ( ) +LassoNode* lasso_samlp2_authz_decision_query_new ( ) +GType lasso_samlp2_extensions_get_type ( ) +LassoNode* lasso_samlp2_extensions_new ( ) +GType lasso_samlp2_idp_entry_get_type ( ) +LassoNode* lasso_samlp2_idp_entry_new ( ) +GType lasso_samlp2_idp_list_get_type ( ) +LassoNode* lasso_samlp2_idp_list_new ( ) +GList* lasso_samlp2_logout_request_get_session_indexes ( LassoSamlp2LogoutRequest* logout_request ) +GType lasso_samlp2_logout_request_get_type ( ) +LassoNode* lasso_samlp2_logout_request_new ( ) +None lasso_samlp2_logout_request_set_session_indexes ( LassoSamlp2LogoutRequest* logout_request, GList* session_index ) +GType lasso_samlp2_logout_response_get_type ( ) +LassoNode* lasso_samlp2_logout_response_new ( ) +GType lasso_samlp2_manage_name_id_request_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_request_new ( ) +GType lasso_samlp2_manage_name_id_response_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_response_new ( ) +GType lasso_samlp2_name_id_mapping_request_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_request_new ( ) +GType lasso_samlp2_name_id_mapping_response_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_response_new ( ) +GType lasso_samlp2_name_id_policy_get_type ( ) +LassoNode* lasso_samlp2_name_id_policy_new ( ) +GType lasso_samlp2_request_abstract_get_type ( ) +LassoNode* lasso_samlp2_request_abstract_new ( ) +GType lasso_samlp2_requested_authn_context_get_type ( ) +LassoNode* lasso_samlp2_requested_authn_context_new ( ) +GType lasso_samlp2_response_get_type ( ) +LassoNode* lasso_samlp2_response_new ( ) +GType lasso_samlp2_scoping_get_type ( ) +LassoNode* lasso_samlp2_scoping_new ( ) +GType lasso_samlp2_status_code_get_type ( ) +LassoNode* lasso_samlp2_status_code_new ( ) +GType lasso_samlp2_status_detail_get_type ( ) +LassoNode* lasso_samlp2_status_detail_new ( ) +GType lasso_samlp2_status_get_type ( ) +LassoNode* lasso_samlp2_status_new ( ) +GType lasso_samlp2_status_response_get_type ( ) +LassoNode* lasso_samlp2_status_response_new ( ) +GType lasso_samlp2_subject_query_abstract_get_type ( ) +LassoNode* lasso_samlp2_subject_query_abstract_new ( ) +GType lasso_samlp2_terminate_get_type ( ) +LassoNode* lasso_samlp2_terminate_new ( ) +GType lasso_samlp_request_abstract_get_type ( ) +GType lasso_samlp_request_get_type ( ) +LassoNode* lasso_samlp_request_new ( ) +None lasso_samlp_response_abstract_fill ( LassoSamlpResponseAbstract* response, const char* InResponseTo, const char* Recipient ) +GType lasso_samlp_response_abstract_get_type ( ) +GType lasso_samlp_response_get_type ( ) +LassoNode* lasso_samlp_response_new ( ) +GType lasso_samlp_status_code_get_type ( ) +LassoSamlpStatusCode* lasso_samlp_status_code_new ( ) +GType lasso_samlp_status_get_type ( ) +LassoSamlpStatus* lasso_samlp_status_new ( ) +lasso_error_t lasso_server_add_provider ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +lasso_error_t lasso_server_add_provider_from_buffer ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +None lasso_server_destroy ( LassoServer* server ) +gchar* lasso_server_dump ( LassoServer* server ) +LassoProvider* lasso_server_get_provider ( const LassoServer* server, const gchar* providerID ) +GType lasso_server_get_type ( ) +lasso_error_t lasso_server_load_affiliation ( LassoServer* server, const gchar* filename ) +LassoServer* lasso_server_new ( const gchar* metadata, const gchar* private_key, const gchar* private_key_password, const gchar* certificate ) +LassoServer* lasso_server_new_from_buffers ( const gchar* metadata, const gchar* private_key_content, const gchar* private_key_password, const gchar* certificate_content ) +LassoServer* lasso_server_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_server_saml2_assertion_setup_signature ( LassoServer* server, LassoSaml2Assertion* saml2_assertion ) +lasso_error_t lasso_server_set_encryption_private_key ( LassoServer* server, const gchar* filename_or_buffer ) +lasso_error_t lasso_server_set_encryption_private_key_with_password ( LassoServer* server, const gchar* filename_or_buffer, const gchar* password ) +lasso_error_t lasso_session_add_assertion ( LassoSession* session, const char* providerID, LassoNode* assertion ) +None lasso_session_destroy ( LassoSession* session ) +gchar* lasso_session_dump ( LassoSession* session ) +LassoNode* lasso_session_get_assertion ( LassoSession* session, const gchar* providerID ) +GList* lasso_session_get_assertions ( LassoSession* session, const char* provider_id ) +gchar* lasso_session_get_provider_index ( LassoSession* session, gint index ) +GType lasso_session_get_type ( ) +gboolean lasso_session_is_empty ( LassoSession* session ) +LassoSession* lasso_session_new ( ) +LassoSession* lasso_session_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_session_remove_assertion ( LassoSession* session, const gchar* providerID ) +None lasso_set_flag ( char* flag ) +lasso_error_t lasso_shutdown ( ) +GType lasso_soap_body_get_type ( ) +LassoSoapBody* lasso_soap_body_new ( ) +LassoSoapBody* lasso_soap_body_new_from_message ( const gchar* message ) +GType lasso_soap_detail_get_type ( ) +LassoSoapDetail* lasso_soap_detail_new ( ) +LassoSoapDetail* lasso_soap_detail_new_from_message ( const gchar* message ) +GType lasso_soap_envelope_get_type ( ) +LassoSoapEnvelope* lasso_soap_envelope_new ( LassoSoapBody* body ) +LassoSoapEnvelope* lasso_soap_envelope_new_from_message ( const gchar* message ) +GType lasso_soap_fault_get_type ( ) +LassoSoapFault* lasso_soap_fault_new ( ) +LassoSoapFault* lasso_soap_fault_new_from_message ( const gchar* message ) +LassoSoapFault* lasso_soap_fault_new_full ( const char* faultcode, const char* faultstring ) +GType lasso_soap_header_get_type ( ) +LassoSoapHeader* lasso_soap_header_new ( ) +LassoSoapHeader* lasso_soap_header_new_from_message ( const gchar* message ) +const char* lasso_strerror ( int error_code ) diff --git a/abi/abi-2.3.5 b/abi/abi-2.3.5 new file mode 100644 index 00000000..59af6268 --- /dev/null +++ b/abi/abi-2.3.5 @@ -0,0 +1,1115 @@ +BACKWARD_COMP_H +LASSO_ASSERTION_QUERY_ERROR_ATTRIBUTE_REQUEST_ALREADY_EXIST +LASSO_ASSERTION_QUERY_ERROR_NOT_AN_ATTRIBUTE_QUERY +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ASSERTION_ID +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ATTRIBUTE +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHN +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHZ_DECISION +LASSO_ASSERTION_QUERY_REQUEST_TYPE_LAST +LASSO_ASSERTION_QUERY_REQUEST_TYPE_UNSET +LASSO_CERTIFICATE_ATTRIBUTE +LASSO_CHECK_VERSIONABI_COMPATIBLE +LASSO_CHECK_VERSION_EXACT +LASSO_CHECK_VERSION_NUMERIC +LASSO_DATA_SERVICE_ERROR_CANNOT_ADD_ITEM +LASSO_DATA_SERVICE_ERROR_UNREGISTERED_DST +LASSO_DEFEDERATION_ERROR_MISSING_NAME_IDENTIFIER +LASSO_DISCOVERY_ERROR_FAILED_TO_BUILD_ENDPOINT_REFERENCE +LASSO_DISCOVERY_ERROR_MISSING_REQUESTED_SERVICE +LASSO_DISCOVERY_ERROR_SVC_METADATA_ASSOCIATION_ADD_FAILED +LASSO_DISCOVERY_ERROR_SVC_METADATA_REGISTER_FAILED +LASSO_DST_ERROR_EMPTY_REQUEST +LASSO_DST_ERROR_MALFORMED_QUERY +LASSO_DST_ERROR_MISSING_SERVICE_DATA +LASSO_DST_ERROR_MODIFY_FAILED +LASSO_DST_ERROR_MODIFY_PARTIALLY_FAILED +LASSO_DST_ERROR_NEW_DATA_MISSING +LASSO_DST_ERROR_NO_DATA +LASSO_DST_ERROR_QUERY_FAILED +LASSO_DST_ERROR_QUERY_NOT_FOUND +LASSO_DST_ERROR_QUERY_PARTIALLY_FAILED +LASSO_DS_ERROR_CA_CERT_CHAIN_LOAD_FAILED +LASSO_DS_ERROR_CERTIFICATE_LOAD_FAILED +LASSO_DS_ERROR_CONTEXT_CREATION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED_MISSING_PRIVATE_KEY +LASSO_DS_ERROR_DIGEST_COMPUTE_FAILED +LASSO_DS_ERROR_ENCRYPTION_FAILED +LASSO_DS_ERROR_INVALID_REFERENCE_FOR_SAML +LASSO_DS_ERROR_INVALID_SIGALG +LASSO_DS_ERROR_INVALID_SIGNATURE +LASSO_DS_ERROR_KEYS_MNGR_CREATION_FAILED +LASSO_DS_ERROR_KEYS_MNGR_INIT_FAILED +LASSO_DS_ERROR_PRIVATE_KEY_LOAD_FAILED +LASSO_DS_ERROR_PUBLIC_KEY_LOAD_FAILED +LASSO_DS_ERROR_SIGNATURE_FAILED +LASSO_DS_ERROR_SIGNATURE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TEMPLATE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TMPL_CREATION_FAILED +LASSO_DS_ERROR_SIGNATURE_VERIFICATION_FAILED +LASSO_DS_ERROR_TOO_MUCH_REFERENCES +LASSO_DS_HREF +LASSO_DS_PREFIX +LASSO_DURATION_DAY +LASSO_DURATION_HOUR +LASSO_DURATION_MINUTE +LASSO_DURATION_WEEK +LASSO_ECP_HREF +LASSO_ECP_PREFIX +LASSO_ENCRYPTION_MODE_ASSERTION +LASSO_ENCRYPTION_MODE_NAMEID +LASSO_ENCRYPTION_MODE_NONE +LASSO_ENCRYPTION_SYM_KEY_TYPE_3DES +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_128 +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_256 +LASSO_ENCRYPTION_SYM_KEY_TYPE_DEFAULT +LASSO_ENCRYTPION_SYM_KEY_TYPE_LAST +LASSO_ERROR_CAST_FAILED +LASSO_ERROR_OUT_OF_MEMORY +LASSO_ERROR_UNDEFINED +LASSO_ERROR_UNIMPLEMENTED +LASSO_HTTP_METHOD_ANY +LASSO_HTTP_METHOD_ARTIFACT_GET +LASSO_HTTP_METHOD_ARTIFACT_POST +LASSO_HTTP_METHOD_GET +LASSO_HTTP_METHOD_IDP_INITIATED +LASSO_HTTP_METHOD_LAST +LASSO_HTTP_METHOD_NONE +LASSO_HTTP_METHOD_PAOS +LASSO_HTTP_METHOD_POST +LASSO_HTTP_METHOD_REDIRECT +LASSO_HTTP_METHOD_SOAP +LASSO_IDWSF2_DISCOVERY_ERROR_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_FAILED +LASSO_IDWSF2_DISCOVERY_ERROR_FORBIDDEN +LASSO_IDWSF2_DISCOVERY_ERROR_LOGICAL_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_NOT_FOUND +LASSO_IDWSF2_DISCOVERY_ERROR_NO_RESULTS +LASSO_IDWSF2_DST_ERROR_DUPLICATE_ITEM +LASSO_IDWSF2_DST_ERROR_ITEM_NOT_FOUND +LASSO_IDWSF2_DST_ERROR_PARTIAL_FAILURE +LASSO_IDWSF2_DST_ERROR_UNKNOWN_STATUS_CODE +LASSO_LASSO_HREF +LASSO_LASSO_PREFIX +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD_PROTECTED_TRANSPORT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PREVIOUS_SESSION +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SOFTWARE_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_TIME_SYNC_TOKEN +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_BETTER +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_EXACT +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MAXIMUM +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MINIMUM +LASSO_LIB_CONSENT_INAPPLICABLE +LASSO_LIB_CONSENT_OBTAINED +LASSO_LIB_CONSENT_OBTAINED_CURRENT_EXPLICIT +LASSO_LIB_CONSENT_OBTAINED_CURRENT_IMPLICIT +LASSO_LIB_CONSENT_OBTAINED_PRIOR +LASSO_LIB_CONSENT_UNAVAILABLE +LASSO_LIB_HREF +LASSO_LIB_MAJOR_VERSION_N +LASSO_LIB_MINOR_VERSION_N +LASSO_LIB_NAMEID_POLICY_TYPE_ANY +LASSO_LIB_NAMEID_POLICY_TYPE_FEDERATED +LASSO_LIB_NAMEID_POLICY_TYPE_NONE +LASSO_LIB_NAMEID_POLICY_TYPE_ONE_TIME +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENTITYID +LASSO_LIB_NAME_IDENTIFIER_FORMAT_FEDERATED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ONE_TIME +LASSO_LIB_PREFIX +LASSO_LIB_PROTOCOL_PROFILE_BRWS_ART +LASSO_LIB_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LIB_PROTOCOL_PROFILE_BRWS_POST +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_NIM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_SOAP +LASSO_LIB_STATUS_CODE_FEDERATION_DOES_NOT_EXIST +LASSO_LIB_STATUS_CODE_INVALID_ASSERTION_CONSUMER_SERVICE_INDEX +LASSO_LIB_STATUS_CODE_INVALID_SIGNATURE +LASSO_LIB_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_LIB_STATUS_CODE_NO_AVAILABLEIDP +LASSO_LIB_STATUS_CODE_NO_PASSIVE +LASSO_LIB_STATUS_CODE_NO_SUPPORTEDIDP +LASSO_LIB_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_LIB_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_LIB_STATUS_CODE_UNSIGNED_AUTHN_REQUEST +LASSO_LIB_STATUS_CODE_UNSUPPORTED_PROFILE +LASSO_LOGIN_ERROR_ASSERTION_DOES_NOT_MATCH_REQUEST_ID +LASSO_LOGIN_ERROR_ASSERTION_REPLAY +LASSO_LOGIN_ERROR_CONSENT_NOT_OBTAINED +LASSO_LOGIN_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGIN_ERROR_INVALID_ASSERTION_SIGNATURE +LASSO_LOGIN_ERROR_INVALID_NAMEIDPOLICY +LASSO_LOGIN_ERROR_INVALID_SIGNATURE +LASSO_LOGIN_ERROR_NO_DEFAULT_ENDPOINT +LASSO_LOGIN_ERROR_REQUEST_DENIED +LASSO_LOGIN_ERROR_STATUS_NOT_SUCCESS +LASSO_LOGIN_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGIN_ERROR_UNSIGNED_AUTHN_REQUEST +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_ART +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_POST +LASSO_LOGIN_PROTOCOL_PROFILE_REDIRECT +LASSO_LOGOUT_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGOUT_ERROR_REQUEST_DENIED +LASSO_LOGOUT_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGOUT_ERROR_UNSUPPORTED_PROFILE +LASSO_MD_PROTOCOL_TYPE_ARTIFACT_RESOLUTION +LASSO_MD_PROTOCOL_TYPE_ASSERTION_ID_REQUEST +LASSO_MD_PROTOCOL_TYPE_ATTRIBUTE +LASSO_MD_PROTOCOL_TYPE_AUTHN_QUERY +LASSO_MD_PROTOCOL_TYPE_AUTHZ +LASSO_MD_PROTOCOL_TYPE_FEDERATION_TERMINATION +LASSO_MD_PROTOCOL_TYPE_LAST +LASSO_MD_PROTOCOL_TYPE_MANAGE_NAME_ID +LASSO_MD_PROTOCOL_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_MD_PROTOCOL_TYPE_REGISTER_NAME_IDENTIFIER +LASSO_MD_PROTOCOL_TYPE_SINGLE_LOGOUT +LASSO_MD_PROTOCOL_TYPE_SINGLE_SIGN_ON +LASSO_MESSAGE_FORMAT_BASE64 +LASSO_MESSAGE_FORMAT_ERROR +LASSO_MESSAGE_FORMAT_QUERY +LASSO_MESSAGE_FORMAT_SOAP +LASSO_MESSAGE_FORMAT_UNKNOWN +LASSO_MESSAGE_FORMAT_XML +LASSO_MESSAGE_FORMAT_XSCHEMA_ERROR +LASSO_METADATA_HREF +LASSO_METADATA_PREFIX +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_FORBIDDEN_CALL_ON_THIS_SIDE +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_IDENTIFIER +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_NAMESPACE +LASSO_PAOS_HREF +LASSO_PAOS_PREFIX +LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ +LASSO_PARAM_ERROR_CHECK_FAILED +LASSO_PARAM_ERROR_INVALID_VALUE +LASSO_PARAM_ERROR_NON_INITIALIZED_OBJECT +LASSO_PRIVATE_KEY_ATTRIBUTE +LASSO_PRIVATE_KEY_PASSWORD_ATTRIBUTE +LASSO_PRIVATE_STATUS_CODE_FAILED_TO_RESTORE_ARTIFACT +LASSO_PROFILE_ERROR_BAD_IDENTITY_DUMP +LASSO_PROFILE_ERROR_BAD_SESSION_DUMP +LASSO_PROFILE_ERROR_BUILDING_MESSAGE_FAILED +LASSO_PROFILE_ERROR_BUILDING_QUERY_FAILED +LASSO_PROFILE_ERROR_BUILDING_REQUEST_FAILED +LASSO_PROFILE_ERROR_BUILDING_RESPONSE_FAILED +LASSO_PROFILE_ERROR_CANNOT_FIND_A_PROVIDER +LASSO_PROFILE_ERROR_CANNOT_VERIFY_SIGNATURE +LASSO_PROFILE_ERROR_FEDERATION_NOT_FOUND +LASSO_PROFILE_ERROR_IDENTITY_NOT_FOUND +LASSO_PROFILE_ERROR_INVALID_ARTIFACT +LASSO_PROFILE_ERROR_INVALID_ASSERTION +LASSO_PROFILE_ERROR_INVALID_ASSERTION_CONDITIONS +LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD +LASSO_PROFILE_ERROR_INVALID_ISSUER +LASSO_PROFILE_ERROR_INVALID_MSG +LASSO_PROFILE_ERROR_INVALID_POST_MSG +LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE +LASSO_PROFILE_ERROR_INVALID_QUERY +LASSO_PROFILE_ERROR_INVALID_REQUEST +LASSO_PROFILE_ERROR_INVALID_RESPONSE +LASSO_PROFILE_ERROR_INVALID_SOAP_MSG +LASSO_PROFILE_ERROR_ISSUER_IS_NOT_AN_IDP +LASSO_PROFILE_ERROR_MISSING_ARTIFACT +LASSO_PROFILE_ERROR_MISSING_ASSERTION +LASSO_PROFILE_ERROR_MISSING_ENCRYPTION_PRIVATE_KEY +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE_ADDRESS +LASSO_PROFILE_ERROR_MISSING_ISSUER +LASSO_PROFILE_ERROR_MISSING_NAME_IDENTIFIER +LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID +LASSO_PROFILE_ERROR_MISSING_REQUEST +LASSO_PROFILE_ERROR_MISSING_RESOURCE_OFFERING +LASSO_PROFILE_ERROR_MISSING_RESPONSE +LASSO_PROFILE_ERROR_MISSING_SERVER +LASSO_PROFILE_ERROR_MISSING_SERVICE_DESCRIPTION +LASSO_PROFILE_ERROR_MISSING_SERVICE_INSTANCE +LASSO_PROFILE_ERROR_MISSING_SERVICE_TYPE +LASSO_PROFILE_ERROR_MISSING_STATUS_CODE +LASSO_PROFILE_ERROR_MISSING_SUBJECT +LASSO_PROFILE_ERROR_NAME_IDENTIFIER_NOT_FOUND +LASSO_PROFILE_ERROR_RESPONSE_DOES_NOT_MATCH_REQUEST +LASSO_PROFILE_ERROR_SESSION_NOT_FOUND +LASSO_PROFILE_ERROR_STATUS_NOT_SUCCESS +LASSO_PROFILE_ERROR_UNKNOWN_ISSUER +LASSO_PROFILE_ERROR_UNKNOWN_PROFILE_URL +LASSO_PROFILE_ERROR_UNKNOWN_PROVIDER +LASSO_PROFILE_ERROR_UNSUPPORTED_BINDING +LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE +LASSO_PROFILE_SIGNATURE_HINT_FORBID +LASSO_PROFILE_SIGNATURE_HINT_FORCE +LASSO_PROFILE_SIGNATURE_HINT_MAYBE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_FORCE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_IGNORE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_LAST +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_MAYBE +LASSO_PROTOCOL_LIBERTY_1_0 +LASSO_PROTOCOL_LIBERTY_1_1 +LASSO_PROTOCOL_LIBERTY_1_2 +LASSO_PROTOCOL_NONE +LASSO_PROTOCOL_SAML_2_0 +LASSO_PROVIDER_ERROR_MISSING_PUBLIC_KEY +LASSO_PROVIDER_ROLE_ANY +LASSO_PROVIDER_ROLE_ATTRIBUTE_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHN_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHZ_AUTHORITY +LASSO_PROVIDER_ROLE_BOTH +LASSO_PROVIDER_ROLE_IDP +LASSO_PROVIDER_ROLE_LAST +LASSO_PROVIDER_ROLE_NONE +LASSO_PROVIDER_ROLE_SP +LASSO_PYTHON_HREF +LASSO_REGISTRY_ERROR_KEY_EXISTS +LASSO_REQUEST_TYPE_DEFEDERATION +LASSO_REQUEST_TYPE_DISCO_MODIFY +LASSO_REQUEST_TYPE_DISCO_QUERY +LASSO_REQUEST_TYPE_DST_MODIFY +LASSO_REQUEST_TYPE_DST_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_ASSOCIATION_ADD +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_REGISTER +LASSO_REQUEST_TYPE_INVALID +LASSO_REQUEST_TYPE_LECP +LASSO_REQUEST_TYPE_LOGIN +LASSO_REQUEST_TYPE_LOGOUT +LASSO_REQUEST_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_REQUEST_TYPE_NAME_ID_MANAGEMENT +LASSO_REQUEST_TYPE_NAME_REGISTRATION +LASSO_REQUEST_TYPE_SASL_REQUEST +LASSO_SAML2_ACTION_GHPP_GET +LASSO_SAML2_ACTION_GHPP_HEAD +LASSO_SAML2_ACTION_GHPP_POST +LASSO_SAML2_ACTION_GHPP_PUT +LASSO_SAML2_ACTION_NAMESPACE_GHPP +LASSO_SAML2_ACTION_NAMESPACE_RWEDC +LASSO_SAML2_ACTION_NAMESPACE_RWEDC_NEGATION +LASSO_SAML2_ACTION_NAMESPACE_UNIX +LASSO_SAML2_ACTION_RWEDC_CONTROL +LASSO_SAML2_ACTION_RWEDC_DELETE +LASSO_SAML2_ACTION_RWEDC_EXECUTE +LASSO_SAML2_ACTION_RWEDC_NEGATION +LASSO_SAML2_ACTION_RWEDC_READ +LASSO_SAML2_ACTION_RWEDC_WRITE +LASSO_SAML2_ASSERTION_HREF +LASSO_SAML2_ASSERTION_INDETERMINATE +LASSO_SAML2_ASSERTION_INVALID +LASSO_SAML2_ASSERTION_PREFIX +LASSO_SAML2_ASSERTION_VALID +LASSO_SAML2_ATTRIBUTE_NAME_EPR +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_BASIC +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_UNSPECIFIED +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_URI +LASSO_SAML2_ATTRIBUTE_PROFILE_BASIC +LASSO_SAML2_ATTRIBUTE_PROFILE_DCE +LASSO_SAML2_ATTRIBUTE_PROFILE_UUID +LASSO_SAML2_ATTRIBUTE_PROFILE_X500 +LASSO_SAML2_AUTHN_CONTEXT_AUTHENTICATED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_KERBEROS +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_NOMAD_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD_PROTECTED_TRANSPORT +LASSO_SAML2_AUTHN_CONTEXT_PERSONALIZED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PGP +LASSO_SAML2_AUTHN_CONTEXT_PREVIOUS_SESSION +LASSO_SAML2_AUTHN_CONTEXT_SECURE_REMOTE_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD_PKI +LASSO_SAML2_AUTHN_CONTEXT_SOFTWARE_PKI +LASSO_SAML2_AUTHN_CONTEXT_SPKI +LASSO_SAML2_AUTHN_CONTEXT_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_TIME_SYNC_TOKEN +LASSO_SAML2_AUTHN_CONTEXT_TLS_CLIENT +LASSO_SAML2_AUTHN_CONTEXT_UNSPECIFIED +LASSO_SAML2_AUTHN_CONTEXT_X509 +LASSO_SAML2_AUTHN_CONTEXT_XMLDSIG +LASSO_SAML2_CONFIRMATION_METHOD_BEARER +LASSO_SAML2_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML2_CONSENT_EXPLICIT +LASSO_SAML2_CONSENT_IMPLICIT +LASSO_SAML2_CONSENT_INAPPLICABLE +LASSO_SAML2_CONSENT_OBTAINED +LASSO_SAML2_CONSENT_PRIOR +LASSO_SAML2_CONSENT_UNAVAILABLE +LASSO_SAML2_DEFLATE_ENCODING +LASSO_SAML2_FIELD_ARTIFACT +LASSO_SAML2_FIELD_ENCODING +LASSO_SAML2_FIELD_RELAYSTATE +LASSO_SAML2_FIELD_REQUEST +LASSO_SAML2_FIELD_RESPONSE +LASSO_SAML2_FIELD_SIGALG +LASSO_SAML2_FIELD_SIGNATURE +LASSO_SAML2_METADATA_BINDING_ARTIFACT +LASSO_SAML2_METADATA_BINDING_PAOS +LASSO_SAML2_METADATA_BINDING_POST +LASSO_SAML2_METADATA_BINDING_REDIRECT +LASSO_SAML2_METADATA_BINDING_SOAP +LASSO_SAML2_METADATA_BINDING_URI +LASSO_SAML2_METADATA_HREF +LASSO_SAML2_METADATA_PREFIX +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_EMAIL +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENTITY +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_KERBEROS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_PERSISTENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_TRANSIENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_UNSPECIFIED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_WINDOWS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_X509 +LASSO_SAML2_PROTOCOL_HREF +LASSO_SAML2_PROTOCOL_PREFIX +LASSO_SAML2_STATUS_CODE_AUTHN_FAILED +LASSO_SAML2_STATUS_CODE_INVALID_ATTR_NAME +LASSO_SAML2_STATUS_CODE_INVALID_NAME_ID_POLICY +LASSO_SAML2_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_SAML2_STATUS_CODE_NO_AVAILABLE_IDP +LASSO_SAML2_STATUS_CODE_NO_PASSIVE +LASSO_SAML2_STATUS_CODE_NO_SUPPORTED_IDP +LASSO_SAML2_STATUS_CODE_PARTIAL_LOGOUT +LASSO_SAML2_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_SAML2_STATUS_CODE_REQUESTER +LASSO_SAML2_STATUS_CODE_REQUEST_DENIED +LASSO_SAML2_STATUS_CODE_REQUEST_UNSUPPORTED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML2_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML2_STATUS_CODE_RESPONDER +LASSO_SAML2_STATUS_CODE_SUCCESS +LASSO_SAML2_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML2_STATUS_CODE_UNKNOWN_ATTR_PROFILE +LASSO_SAML2_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_SAML2_STATUS_CODE_UNSUPPORTED_BINDING +LASSO_SAML2_STATUS_CODE_VERSION_MISMATCH +LASSO_SAML_ASSERTION_HREF +LASSO_SAML_ASSERTION_PREFIX +LASSO_SAML_AUTHENTICATION_METHODS_PKI +LASSO_SAML_AUTHENTICATION_METHOD_HARDWARE_TOKEN +LASSO_SAML_AUTHENTICATION_METHOD_KERBEROS +LASSO_SAML_AUTHENTICATION_METHOD_LIBERTY +LASSO_SAML_AUTHENTICATION_METHOD_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_PGP +LASSO_SAML_AUTHENTICATION_METHOD_SECURE_REMOTE_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_SMARTCARD_PKI +LASSO_SAML_AUTHENTICATION_METHOD_SOFTWARE_PKI +LASSO_SAML_AUTHENTICATION_METHOD_UNSPECIFIED +LASSO_SAML_AUTHENTICATION_METHOD_XKMS +LASSO_SAML_AUTHENTICATION_METHOD_XMLD_SIG +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT01 +LASSO_SAML_CONFIRMATION_METHOD_BEARER +LASSO_SAML_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML_CONFIRMATION_METHOD_SENDER_VOUCHES +LASSO_SAML_MAJOR_VERSION_N +LASSO_SAML_MINOR_VERSION_N +LASSO_SAML_PROTOCOL_HREF +LASSO_SAML_PROTOCOL_PREFIX +LASSO_SAML_STATUS_CODE_REQUESTER +LASSO_SAML_STATUS_CODE_REQUEST_DENIED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML_STATUS_CODE_RESPONDER +LASSO_SAML_STATUS_CODE_SUCCESS +LASSO_SAML_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML_STATUS_CODE_VERSION_MISMATCH +LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED +LASSO_SERVER_ERROR_ADD_PROVIDER_PROTOCOL_MISMATCH +LASSO_SERVER_ERROR_INVALID_XML +LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND +LASSO_SERVER_ERROR_SET_ENCRYPTION_PRIVATE_KEY_FAILED +LASSO_SIGNATURE_METHOD_ATTRIBUTE +LASSO_SIGNATURE_METHOD_DSA_SHA1 +LASSO_SIGNATURE_METHOD_LAST +LASSO_SIGNATURE_METHOD_RSA_SHA1 +LASSO_SIGNATURE_TYPE_ATTRIBUTE +LASSO_SIGNATURE_TYPE_LAST +LASSO_SIGNATURE_TYPE_NONE +LASSO_SIGNATURE_TYPE_SIMPLE +LASSO_SIGNATURE_TYPE_WITHX509 +LASSO_SOAP_ENV_ACTOR +LASSO_SOAP_ENV_HREF +LASSO_SOAP_ENV_PREFIX +LASSO_SOAP_ERROR_MISSING_BODY +LASSO_SOAP_ERROR_MISSING_ENVELOPE +LASSO_SOAP_ERROR_MISSING_HEADER +LASSO_SOAP_ERROR_MISSING_SOAP_FAULT_DETAIL +LASSO_SOAP_ERROR_REDIRECT_REQUEST_FAULT +LASSO_SOAP_FAULT_CODE_CLIENT +LASSO_SOAP_FAULT_CODE_MUST_UNDERSTAND +LASSO_SOAP_FAULT_CODE_SERVER +LASSO_SOAP_FAULT_CODE_VERSION_MISMATCH +LASSO_SOAP_FAULT_REDIRECT_REQUEST +LASSO_WSF_ENABLED +LASSO_WSF_PROFILE_ERROR_INVALID_OR_MISSING_REFERENCE_TO_MESSAGE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_ASSERTION_ID +LASSO_WSF_PROFILE_ERROR_MISSING_CORRELATION +LASSO_WSF_PROFILE_ERROR_MISSING_CREDENTIAL_REF +LASSO_WSF_PROFILE_ERROR_MISSING_DESCRIPTION +LASSO_WSF_PROFILE_ERROR_MISSING_ENDPOINT +LASSO_WSF_PROFILE_ERROR_MISSING_RESOURCE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_SECURITY +LASSO_WSF_PROFILE_ERROR_MISSING_SENDER_ID +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST_UNSUPPORTED_BY_REQUESTER +LASSO_WSF_PROFILE_ERROR_SECURITY_MECHANISM_CHECK_FAILED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED_FOR_DATA +LASSO_WSF_PROFILE_ERROR_SOAP_FAULT +LASSO_WSF_PROFILE_ERROR_UNKNOWN_STATUS_CODE +LASSO_WSF_PROFILE_ERROR_UNSUPPORTED_SECURITY_MECHANISM +LASSO_WSSEC_ERROR_BAD_PASSWORD +LASSO_WSSEC_ERROR_MISSING_SECURITY_TOKEN +LASSO_WSUTIL1_HREF +LASSO_WSUTIL1_PREFIX +LASSO_XML_ERROR_ATTR_NOT_FOUND +LASSO_XML_ERROR_ATTR_VALUE_NOT_FOUND +LASSO_XML_ERROR_INVALID_FILE +LASSO_XML_ERROR_MISSING_NAMESPACE +LASSO_XML_ERROR_NODE_CONTENT_NOT_FOUND +LASSO_XML_ERROR_NODE_NOT_FOUND +LASSO_XML_ERROR_OBJECT_CONSTRUCTION_FAILED +LASSO_XML_ERROR_SCHEMA_INVALID_FRAGMENT +LASSO_XSI_HREF +LASSO_XSI_PREFIX +struct LassoAssertionQuery { LassoAssertionQueryPrivate* private_data } +LassoAssertionQueryRequestType +LassoCheckVersionMode +struct LassoDefederation { } +struct LassoDsKeyInfo { LassoDsKeyValue* KeyValue } +struct LassoDsKeyValue { LassoDsRsaKeyValue* RSAKeyValue } +struct LassoDsRsaKeyValue { char* Modulus, char* Exponent } +struct LassoEcp { gchar* assertionConsumerURL, LassoEcpPrivate* private_data } +LassoEncryptionMode +LassoEncryptionSymKeyType +struct LassoFederation { gchar* remote_providerID, LassoNode* local_nameIdentifier, LassoNode* remote_nameIdentifier, LassoFederationPrivate* private_data } +LassoHttpMethod +struct LassoIdentity { GHashTable* federations, gboolean is_dirty, LassoIdentityPrivate* private_data } +struct LassoLecp { LassoLibAuthnRequestEnvelope* authnRequestEnvelope, LassoLibAuthnResponseEnvelope* authnResponseEnvelope, char* assertionConsumerServiceURL } +struct LassoLibAssertion { char* InResponseTo } +struct LassoLibAuthenticationStatement { LassoLibAuthnContext* AuthnContext, char* ReauthenticateOnOrAfter, char* SessionIndex } +struct LassoLibAuthnContext { char* AuthnContextClassRef, char* AuthnContextStatementRef } +struct LassoLibAuthnRequest { GList* Extension, char* ProviderID, char* AffiliationID, char* NameIDPolicy, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolProfile, char* AssertionConsumerServiceID, LassoLibRequestAuthnContext* RequestAuthnContext, char* RelayState, LassoLibScoping* Scoping, char* consent } +struct LassoLibAuthnRequestEnvelope { GList* Extension, LassoLibAuthnRequest* AuthnRequest, char* ProviderID, char* ProviderName, char* AssertionConsumerServiceURL, LassoLibIDPList* IDPList, gboolean IsPassive } +struct LassoLibAuthnResponse { GList* Extension, char* ProviderID, char* RelayState, char* consent } +struct LassoLibAuthnResponseEnvelope { GList* Extension, LassoLibAuthnResponse* AuthnResponse, char* AssertionConsumerServiceURL } +struct LassoLibFederationTerminationNotification { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* consent, char* RelayState } +struct LassoLibIDPEntries { GList* IDPEntry } +struct LassoLibIDPEntry { char* ProviderID, char* ProviderName, char* Loc } +struct LassoLibIDPList { LassoLibIDPEntries* IDPEntries, char* GetComplete } +struct LassoLibLogoutRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* SessionIndex, char* RelayState, char* consent, char* NotOnOrAfter } +struct LassoLibLogoutResponse { } +struct LassoLibNameIdentifierMappingRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* TargetNamespace, char* consent } +struct LassoLibNameIdentifierMappingResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, LassoSamlNameIdentifier* NameIdentifier } +struct LassoLibRegisterNameIdentifierRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* IDPProvidedNameIdentifier, LassoSamlNameIdentifier* SPProvidedNameIdentifier, LassoSamlNameIdentifier* OldProvidedNameIdentifier, char* RelayState } +struct LassoLibRegisterNameIdentifierResponse { } +struct LassoLibRequestAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextStatementRef, char* AuthnContextComparison } +struct LassoLibScoping { int ProxyCount, LassoLibIDPList* IDPList } +struct LassoLibStatusResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, char* RelayState } +struct LassoLibSubject { LassoSamlNameIdentifier* IDPProvidedNameIdentifier } +struct LassoLogin { LassoLoginProtocolProfile protocolProfile, gchar* assertionArtifact, LassoSamlAssertion* assertion, gchar* nameIDPolicy, LassoHttpMethod http_method, LassoLoginPrivate* private_data } +LassoLoginProtocolProfile +struct LassoLogout { LassoNode* initial_request, LassoNode* initial_response, gchar* initial_remote_providerID, gint providerID_index, LassoHttpMethod initial_http_request_method, LassoLogoutPrivate* private_data } +LassoMdProtocolType +LassoMessageFormat +struct LassoMiscTextNode { char* content, char* name, char* ns_href, char* ns_prefix, gboolean text_child } +struct LassoNameIdManagement { } +struct LassoNameIdentifierMapping { gchar* targetNameIdentifier } +struct LassoNameRegistration { LassoSamlNameIdentifier* oldNameIdentifier } +struct LassoNode { } +struct LassoProfile { LassoServer* server, LassoNode* request, LassoNode* response, LassoNode* nameIdentifier, gchar* remote_providerID, gchar* msg_url, gchar* msg_body, gchar* msg_relayState, LassoIdentity* identity, LassoSession* session, LassoHttpMethod http_request_method, gint signature_status, LassoProfilePrivate* private_data } +LassoProfileSignatureHint +LassoProfileSignatureVerifyHint +LassoProtocolConformance +struct LassoProvider { gchar* ProviderID, LassoProviderRole role, char* metadata_filename, gchar* public_key, gchar* ca_cert_chain, LassoProviderPrivate* private_data } +LassoProviderRole +LassoRequestType +struct LassoSaml2Action { char* content, char* Namespace } +struct LassoSaml2Advice { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2Assertion { LassoSaml2NameID* Issuer, LassoSaml2Subject* Subject, LassoSaml2Conditions* Conditions, LassoSaml2Advice* Advice, GList* Statement, GList* AuthnStatement, GList* AuthzDecisionStatement, GList* AttributeStatement, char* Version, char* ID, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file, gboolean encryption_activated, char* encryption_public_key_str, LassoEncryptionSymKeyType encryption_sym_key_type } +LassoSaml2AssertionValidationState +struct LassoSaml2Attribute { GList* AttributeValue, char* Name, char* NameFormat, char* FriendlyName } +struct LassoSaml2AttributeStatement { GList* Attribute, GList* EncryptedAttribute } +struct LassoSaml2AttributeValue { GList* any } +struct LassoSaml2AudienceRestriction { char* Audience } +struct LassoSaml2AuthnContext { char* AuthnContextClassRef, char* AuthnContextDeclRef, char* AuthenticatingAuthority } +struct LassoSaml2AuthnStatement { LassoSaml2SubjectLocality* SubjectLocality, LassoSaml2AuthnContext* AuthnContext, char* AuthnInstant, char* SessionIndex, char* SessionNotOnOrAfter } +struct LassoSaml2AuthzDecisionStatement { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource, char* Decision } +struct LassoSaml2BaseIDAbstract { char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2ConditionAbstract { } +struct LassoSaml2Conditions { GList* Condition, GList* AudienceRestriction, GList* OneTimeUse, GList* ProxyRestriction, char* NotBefore, char* NotOnOrAfter } +struct LassoSaml2EncryptedElement { xmlNode* EncryptedData, GList* EncryptedKey, LassoNode* original_data } +struct LassoSaml2Evidence { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2KeyInfoConfirmationData { } +struct LassoSaml2NameID { char* content, char* Format, char* SPProvidedID, char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2OneTimeUse { } +struct LassoSaml2ProxyRestriction { char* Audience, char* Count } +struct LassoSaml2StatementAbstract { } +struct LassoSaml2Subject { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmation* SubjectConfirmation } +struct LassoSaml2SubjectConfirmation { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmationData* SubjectConfirmationData, char* Method } +struct LassoSaml2SubjectConfirmationData { char* NotBefore, char* NotOnOrAfter, char* Recipient, char* InResponseTo, char* Address } +struct LassoSaml2SubjectLocality { char* Address, char* DNSName } +struct LassoSamlAdvice { GList* AssertionIDReference, LassoNode* Assertion } +struct LassoSamlAssertion { LassoSamlConditions* Conditions, LassoSamlAdvice* Advice, LassoSamlSubjectStatement* SubjectStatement, LassoSamlAuthenticationStatement* AuthenticationStatement, LassoSamlAttributeStatement* AttributeStatement, int MajorVersion, int MinorVersion, char* AssertionID, char* Issuer, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlAttribute { gchar* attributeName, gchar* attributeNameSpace, GList* AttributeValue } +struct LassoSamlAttributeDesignator { char* AttributeName, char* AttributeNamespace } +struct LassoSamlAttributeStatement { GList* Attribute } +struct LassoSamlAttributeValue { GList* any } +struct LassoSamlAudienceRestrictionCondition { GList* Audience } +struct LassoSamlAuthenticationStatement { LassoSamlSubjectLocality* SubjectLocality, GList* AuthorityBinding, char* AuthenticationMethod, char* AuthenticationInstant } +struct LassoSamlAuthorityBinding { char* AuthorityKind, char* Location, char* Binding } +struct LassoSamlConditionAbstract { } +struct LassoSamlConditions { GList* Condition, GList* AudienceRestrictionCondition, char* NotBefore, char* NotOnOrAfter } +struct LassoSamlNameIdentifier { char* NameQualifier, char* Format, char* content } +struct LassoSamlStatementAbstract { } +struct LassoSamlSubject { LassoSamlNameIdentifier* NameIdentifier, LassoSamlSubjectConfirmation* SubjectConfirmation, LassoSaml2EncryptedElement* EncryptedNameIdentifier } +struct LassoSamlSubjectConfirmation { GList* ConfirmationMethod, char* SubjectConfirmationData, LassoDsKeyInfo* KeyInfo } +struct LassoSamlSubjectLocality { char* IPAddress, char* DNSAddress } +struct LassoSamlSubjectStatement { } +struct LassoSamlSubjectStatementAbstract { LassoSamlSubject* Subject } +struct LassoSamlp2ArtifactResolve { char* Artifact } +struct LassoSamlp2ArtifactResponse { LassoNode* any } +struct LassoSamlp2AssertionIDRequest { char* AssertionIDRef } +struct LassoSamlp2AttributeQuery { GList* Attribute } +struct LassoSamlp2AuthnQuery { LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, char* SessionIndex } +struct LassoSamlp2AuthnRequest { LassoSaml2Subject* Subject, LassoSamlp2NameIDPolicy* NameIDPolicy, LassoSaml2Conditions* Conditions, LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, LassoSamlp2Scoping* Scoping, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolBinding, int AssertionConsumerServiceIndex, char* AssertionConsumerServiceURL, int AttributeConsumingServiceIndex, char* ProviderName, G_GNUC_DEPRECATED char } +struct LassoSamlp2AuthzDecisionQuery { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource } +struct LassoSamlp2Extensions { } +struct LassoSamlp2IDPEntry { char* ProviderID, char* Name, char* Loc } +struct LassoSamlp2IDPList { LassoSamlp2IDPEntry* IDPEntry, char* GetComplete } +struct LassoSamlp2LogoutRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* SessionIndex, char* Reason, char* NotOnOrAfter, G_GNUC_DEPRECATED char } +struct LassoSamlp2LogoutResponse { G_GNUC_DEPRECATED char } +struct LassoSamlp2ManageNameIDRequest { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* NewID, LassoSaml2EncryptedElement* NewEncryptedID, LassoSamlp2Terminate* Terminate } +struct LassoSamlp2ManageNameIDResponse { } +struct LassoSamlp2NameIDMappingRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSamlp2NameIDPolicy* NameIDPolicy } +struct LassoSamlp2NameIDMappingResponse { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID } +struct LassoSamlp2NameIDPolicy { char* Format, char* SPNameQualifier, gboolean AllowCreate } +struct LassoSamlp2RequestAbstract { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, char* ID, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2RequestedAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextDeclRef, char* Comparison } +struct LassoSamlp2Response { GList* Assertion, GList* EncryptedAssertion } +struct LassoSamlp2Scoping { LassoSamlp2IDPList* IDPList, char* RequesterID, char* ProxyCount } +struct LassoSamlp2Status { LassoSamlp2StatusCode* StatusCode, char* StatusMessage, LassoSamlp2StatusDetail* StatusDetail } +struct LassoSamlp2StatusCode { LassoSamlp2StatusCode* StatusCode, char* Value } +struct LassoSamlp2StatusDetail { } +struct LassoSamlp2StatusResponse { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, LassoSamlp2Status* Status, char* ID, char* InResponseTo, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2SubjectQueryAbstract { LassoSaml2Subject* Subject } +struct LassoSamlp2Terminate { } +struct LassoSamlpRequest { char* AssertionArtifact } +struct LassoSamlpRequestAbstract { GList* RespondWith, char* RequestID, int MajorVersion, int MinorVersion, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpResponse { LassoSamlpStatus* Status, GList* Assertion } +struct LassoSamlpResponseAbstract { char* ResponseID, char* InResponseTo, int MajorVersion, int MinorVersion, char* IssueInstant, char* Recipient, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpStatus { LassoSamlpStatusCode* StatusCode, char* StatusMessage } +struct LassoSamlpStatusCode { LassoSamlpStatusCode* StatusCode, char* Value } +struct LassoServer { GHashTable* providers, GHashTable* services, gchar* private_key, gchar* private_key_password, gchar* certificate, LassoSignatureMethod signature_method, LassoServerPrivate* private_data } +struct LassoSession { GHashTable* assertions, gboolean is_dirty, LassoSessionPrivate* private_data } +LassoSignatureMethod +LassoSignatureType +struct LassoSoapBody { GList* any, gchar* Id } +struct LassoSoapDetail { GList* any } +struct LassoSoapEnvelope { LassoSoapHeader* Header, LassoSoapBody* Body } +struct LassoSoapFault { gchar* faultcode, gchar* faultstring, GList* faultactor, LassoSoapDetail* Detail } +struct LassoSoapHeader { GList* Other } +lasso_error_t lasso_assertion_query_add_attribute_request ( LassoAssertionQuery* assertion_query, char* format, char* name ) +lasso_error_t lasso_assertion_query_build_request_msg ( LassoAssertionQuery* assertion_query ) +lasso_error_t lasso_assertion_query_build_response_msg ( LassoAssertionQuery* assertion_query ) +None lasso_assertion_query_destroy ( LassoAssertionQuery* assertion_query ) +LassoAssertionQueryRequestType lasso_assertion_query_get_request_type ( LassoAssertionQuery* assertion_query ) +GType lasso_assertion_query_get_type ( ) +lasso_error_t lasso_assertion_query_init_request ( LassoAssertionQuery* assertion_query, char* remote_provider_id, LassoHttpMethod http_method, LassoAssertionQueryRequestType query_request_type ) +LassoAssertionQuery* lasso_assertion_query_new ( LassoServer* server ) +lasso_error_t lasso_assertion_query_process_request_msg ( LassoAssertionQuery* assertion_query, gchar* request_msg ) +lasso_error_t lasso_assertion_query_process_response_msg ( LassoAssertionQuery* assertion_query, gchar* response_msg ) +lasso_error_t lasso_assertion_query_validate_request ( LassoAssertionQuery* assertion_query ) +char* lasso_build_unique_id ( unsigned int size ) +int lasso_check_version ( int major, int minor, int subminor, LassoCheckVersionMode mode ) +lasso_error_t lasso_defederation_build_notification_msg ( LassoDefederation* defederation ) +None lasso_defederation_destroy ( LassoDefederation* defederation ) +GType lasso_defederation_get_type ( ) +lasso_error_t lasso_defederation_init_notification ( LassoDefederation* defederation, gchar* remote_providerID, LassoHttpMethod http_method ) +LassoDefederation* lasso_defederation_new ( LassoServer* server ) +lasso_error_t lasso_defederation_process_notification_msg ( LassoDefederation* defederation, gchar* notification_msg ) +lasso_error_t lasso_defederation_validate_notification ( LassoDefederation* defederation ) +GType lasso_ds_key_info_get_type ( ) +LassoDsKeyInfo* lasso_ds_key_info_new ( ) +GType lasso_ds_key_value_get_type ( ) +LassoDsKeyValue* lasso_ds_key_value_new ( ) +GType lasso_ds_rsa_key_value_get_type ( ) +LassoDsRsaKeyValue* lasso_ds_rsa_key_value_new ( ) +None lasso_ecp_destroy ( LassoEcp* ecp ) +GType lasso_ecp_get_type ( ) +LassoEcp* lasso_ecp_new ( LassoServer* server ) +lasso_error_t lasso_ecp_process_authn_request_msg ( LassoEcp* ecp, const char* authn_request_msg ) +lasso_error_t lasso_ecp_process_response_msg ( LassoEcp* ecp, const char* response_msg ) +None lasso_federation_build_local_name_identifier ( LassoFederation* federation, const gchar* nameQualifier, const gchar* format, const gchar* content ) +None lasso_federation_destroy ( LassoFederation* federation ) +GType lasso_federation_get_type ( ) +LassoFederation* lasso_federation_new ( const gchar* remote_providerID ) +gboolean lasso_federation_verify_name_identifier ( LassoFederation* federation, LassoNode* name_identifier ) +char* lasso_get_prefix_for_dst_service_href ( const char* href ) +gchar* lasso_get_prefix_for_idwsf2_dst_service_href ( const gchar* href ) +None lasso_identity_destroy ( LassoIdentity* identity ) +gchar* lasso_identity_dump ( LassoIdentity* identity ) +LassoFederation* lasso_identity_get_federation ( LassoIdentity* identity, const char* providerID ) +GType lasso_identity_get_type ( ) +LassoIdentity* lasso_identity_new ( ) +LassoIdentity* lasso_identity_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_init ( ) +lasso_error_t lasso_lecp_build_authn_request_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_request_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_msg ( LassoLecp* lecp ) +None lasso_lecp_destroy ( LassoLecp* lecp ) +GType lasso_lecp_get_type ( ) +lasso_error_t lasso_lecp_init_authn_request ( LassoLecp* lecp, const char* remote_providerID ) +LassoLecp* lasso_lecp_new ( LassoServer* server ) +lasso_error_t lasso_lecp_process_authn_request_envelope_msg ( LassoLecp* lecp, const char* request_msg ) +lasso_error_t lasso_lecp_process_authn_request_msg ( LassoLecp* lecp, const char* authn_request_msg ) +lasso_error_t lasso_lecp_process_authn_response_envelope_msg ( LassoLecp* lecp, const char* response_msg ) +GType lasso_lib_assertion_get_type ( ) +LassoLibAssertion* lasso_lib_assertion_new ( ) +LassoLibAssertion* lasso_lib_assertion_new_full ( const char* issuer, const char* requestID, const char* audience, const char* notBefore, const char* notOnOrAfter ) +GType lasso_lib_authentication_statement_get_type ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new_full ( const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, LassoSamlNameIdentifier* sp_identifier, LassoSamlNameIdentifier* idp_identifier ) +GType lasso_lib_authn_context_get_type ( ) +LassoNode* lasso_lib_authn_context_new ( ) +GType lasso_lib_authn_request_envelope_get_type ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new_full ( LassoLibAuthnRequest* authnRequest, char* providerID, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_request_get_type ( ) +LassoLibAuthnRequest* lasso_lib_authn_request_new ( ) +GType lasso_lib_authn_response_envelope_get_type ( ) +LassoLibAuthnResponseEnvelope* lasso_lib_authn_response_envelope_new ( LassoLibAuthnResponse* response, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_response_get_type ( ) +LassoNode* lasso_lib_authn_response_new ( char* providerID, LassoLibAuthnRequest* request ) +GType lasso_lib_federation_termination_notification_get_type ( ) +LassoNode* lasso_lib_federation_termination_notification_new ( ) +LassoNode* lasso_lib_federation_termination_notification_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_idp_entries_get_type ( ) +LassoNode* lasso_lib_idp_entries_new ( ) +GType lasso_lib_idp_entry_get_type ( ) +LassoNode* lasso_lib_idp_entry_new ( ) +GType lasso_lib_idp_list_get_type ( ) +LassoNode* lasso_lib_idp_list_new ( ) +GType lasso_lib_logout_request_get_type ( ) +LassoNode* lasso_lib_logout_request_new ( ) +LassoNode* lasso_lib_logout_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_logout_response_get_type ( ) +LassoNode* lasso_lib_logout_response_new ( ) +LassoNode* lasso_lib_logout_response_new_full ( char* providerID, const char* statusCodeValue, LassoLibLogoutRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_request_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, const char* targetNamespace, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_response_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new_full ( char* provideRID, const char* statusCodeValue, LassoLibNameIdentifierMappingRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_request_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_request_new ( ) +LassoNode* lasso_lib_register_name_identifier_request_new_full ( const char* providerID, LassoSamlNameIdentifier* idpNameIdentifier, LassoSamlNameIdentifier* spNameIdentifier, LassoSamlNameIdentifier* oldNameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_response_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_response_new ( ) +LassoNode* lasso_lib_register_name_identifier_response_new_full ( const char* providerID, const char* statusCodeValue, LassoLibRegisterNameIdentifierRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_request_authn_context_get_type ( ) +LassoLibRequestAuthnContext* lasso_lib_request_authn_context_new ( ) +GType lasso_lib_scoping_get_type ( ) +LassoLibScoping* lasso_lib_scoping_new ( ) +GType lasso_lib_status_response_get_type ( ) +LassoNode* lasso_lib_status_response_new ( ) +GType lasso_lib_subject_get_type ( ) +LassoLibSubject* lasso_lib_subject_new ( ) +lasso_error_t lasso_login_accept_sso ( LassoLogin* login ) +lasso_error_t lasso_login_build_artifact_msg ( LassoLogin* login, LassoHttpMethod http_method ) +lasso_error_t lasso_login_build_assertion ( LassoLogin* login, const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, const char* notBefore, const char* notOnOrAfter ) +lasso_error_t lasso_login_build_authn_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_authn_response_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_response_msg ( LassoLogin* login, gchar* remote_providerID ) +None lasso_login_destroy ( LassoLogin* login ) +gchar* lasso_login_dump ( LassoLogin* login ) +LassoNode* lasso_login_get_assertion ( LassoLogin* login ) +GType lasso_login_get_type ( ) +lasso_error_t lasso_login_init_authn_request ( LassoLogin* login, const gchar* remote_providerID, LassoHttpMethod http_method ) +lasso_error_t lasso_login_init_idp_initiated_authn_request ( LassoLogin* login, const gchar* remote_providerID ) +lasso_error_t lasso_login_init_request ( LassoLogin* login, gchar* response_msg, LassoHttpMethod response_http_method ) +gboolean lasso_login_must_ask_for_consent ( LassoLogin* login ) +gboolean lasso_login_must_authenticate ( LassoLogin* login ) +LassoLogin* lasso_login_new ( LassoServer* server ) +LassoLogin* lasso_login_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_login_process_authn_request_msg ( LassoLogin* login, const char* authn_request_msg ) +lasso_error_t lasso_login_process_authn_response_msg ( LassoLogin* login, gchar* authn_response_msg ) +lasso_error_t lasso_login_process_paos_response_msg ( LassoLogin* login, gchar* msg ) +lasso_error_t lasso_login_process_request_msg ( LassoLogin* login, gchar* request_msg ) +lasso_error_t lasso_login_process_response_msg ( LassoLogin* login, gchar* response_msg ) +lasso_error_t lasso_login_validate_request_msg ( LassoLogin* login, gboolean authentication_result, gboolean is_consent_obtained ) +lasso_error_t lasso_logout_build_request_msg ( LassoLogout* logout ) +lasso_error_t lasso_logout_build_response_msg ( LassoLogout* logout ) +None lasso_logout_destroy ( LassoLogout* logout ) +gchar* lasso_logout_dump ( LassoLogout* logout ) +gchar* lasso_logout_get_next_providerID ( LassoLogout* logout ) +GType lasso_logout_get_type ( ) +lasso_error_t lasso_logout_init_request ( LassoLogout* logout, gchar* remote_providerID, LassoHttpMethod request_method ) +LassoLogout* lasso_logout_new ( LassoServer* server ) +LassoLogout* lasso_logout_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_logout_process_request_msg ( LassoLogout* logout, gchar* request_msg ) +lasso_error_t lasso_logout_process_response_msg ( LassoLogout* logout, gchar* response_msg ) +lasso_error_t lasso_logout_reset_providerID_index ( LassoLogout* logout ) +lasso_error_t lasso_logout_validate_request ( LassoLogout* logout ) +GType lasso_misc_text_node_get_type ( ) +xmlNode* lasso_misc_text_node_get_xml_content ( LassoMiscTextNode* misc_text_node ) +LassoNode* lasso_misc_text_node_new ( ) +LassoMiscTextNode* lasso_misc_text_node_new_with_string ( const char* content ) +LassoMiscTextNode* lasso_misc_text_node_new_with_xml_node ( xmlNode* xml_node ) +None lasso_misc_text_node_set_xml_content ( LassoMiscTextNode* misc_text_node, xmlNode* node ) +lasso_error_t lasso_name_id_management_build_request_msg ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_id_management_build_response_msg ( LassoNameIdManagement* name_id_management ) +None lasso_name_id_management_destroy ( LassoNameIdManagement* name_id_management ) +char* lasso_name_id_management_dump ( LassoNameIdManagement* name_id_management ) +GType lasso_name_id_management_get_type ( ) +lasso_error_t lasso_name_id_management_init_request ( LassoNameIdManagement* name_id_management, char* remote_provider_id, char* new_name_id, LassoHttpMethod http_method ) +LassoNameIdManagement* lasso_name_id_management_new ( LassoServer* server ) +LassoNameIdManagement* lasso_name_id_management_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_id_management_process_request_msg ( LassoNameIdManagement* name_id_management, gchar* request_msg ) +lasso_error_t lasso_name_id_management_process_response_msg ( LassoNameIdManagement* name_id_management, gchar* response_msg ) +lasso_error_t lasso_name_id_management_validate_request ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_identifier_mapping_build_request_msg ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_identifier_mapping_build_response_msg ( LassoNameIdentifierMapping* mapping ) +None lasso_name_identifier_mapping_destroy ( LassoNameIdentifierMapping* mapping ) +GType lasso_name_identifier_mapping_get_type ( ) +lasso_error_t lasso_name_identifier_mapping_init_request ( LassoNameIdentifierMapping* mapping, gchar* targetNamespace, gchar* remote_providerID ) +LassoNameIdentifierMapping* lasso_name_identifier_mapping_new ( LassoServer* server ) +lasso_error_t lasso_name_identifier_mapping_process_request_msg ( LassoNameIdentifierMapping* mapping, gchar* request_msg ) +lasso_error_t lasso_name_identifier_mapping_process_response_msg ( LassoNameIdentifierMapping* mapping, gchar* response_msg ) +lasso_error_t lasso_name_identifier_mapping_validate_request ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_registration_build_request_msg ( LassoNameRegistration* name_registration ) +lasso_error_t lasso_name_registration_build_response_msg ( LassoNameRegistration* name_registration ) +None lasso_name_registration_destroy ( LassoNameRegistration* name_registration ) +gchar* lasso_name_registration_dump ( LassoNameRegistration* name_registration ) +GType lasso_name_registration_get_type ( ) +lasso_error_t lasso_name_registration_init_request ( LassoNameRegistration* name_registration, char* remote_providerID, LassoHttpMethod http_method ) +LassoNameRegistration* lasso_name_registration_new ( LassoServer* server ) +LassoNameRegistration* lasso_name_registration_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_registration_process_request_msg ( LassoNameRegistration* name_registration, gchar* request_msg ) +lasso_error_t lasso_name_registration_process_response_msg ( LassoNameRegistration* name_registration, gchar* response_msg ) +lasso_error_t lasso_name_registration_validate_request ( LassoNameRegistration* name_registration ) +None lasso_node_cleanup_original_xmlnodes ( LassoNode* node ) +char* lasso_node_debug ( LassoNode* node, int level ) +None lasso_node_destroy ( LassoNode* node ) +char* lasso_node_dump ( LassoNode* node ) +char* lasso_node_export_to_base64 ( LassoNode* node ) +char* lasso_node_export_to_ecp_soap_response ( LassoNode* node, const char* assertionConsumerURL ) +char* lasso_node_export_to_paos_request ( LassoNode* node, const char* issuer, const char* responseConsumerURL, const char* relay_state ) +char* lasso_node_export_to_query ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file ) +char* lasso_node_export_to_query_with_password ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file, const char* private_key_file_password ) +char* lasso_node_export_to_soap ( LassoNode* node ) +gchar* lasso_node_export_to_xml ( LassoNode* node ) +const char* lasso_node_get_name ( LassoNode* node ) +const char* lasso_node_get_namespace ( LassoNode* node ) +xmlNode* lasso_node_get_original_xmlnode ( LassoNode* node ) +GType lasso_node_get_type ( ) +xmlNode* lasso_node_get_xmlNode ( LassoNode* node, gboolean lasso_dump ) +LassoMessageFormat lasso_node_init_from_message ( LassoNode* node, const char* message ) +gboolean lasso_node_init_from_query ( LassoNode* node, const char* query ) +lasso_error_t lasso_node_init_from_xml ( LassoNode* node, xmlNode* xmlnode ) +LassoNode* lasso_node_new ( ) +LassoNode* lasso_node_new_from_dump ( const char* dump ) +LassoNode* lasso_node_new_from_soap ( const char* soap ) +LassoNode* lasso_node_new_from_xmlNode ( xmlNode* node ) +None lasso_node_set_custom_namespace ( LassoNode* node, const char* prefix, const char* href ) +None lasso_node_set_custom_nodename ( LassoNode* node, const char* nodename ) +None lasso_node_set_original_xmlnode ( LassoNode* node, xmlNode* xmlnode ) +char* lasso_profile_get_artifact ( LassoProfile* profile ) +char* lasso_profile_get_artifact_message ( LassoProfile* profile ) +LassoIdentity* lasso_profile_get_identity ( LassoProfile* profile ) +LassoNode* lasso_profile_get_nameIdentifier ( LassoProfile* profile ) +LassoRequestType lasso_profile_get_request_type_from_soap_msg ( const gchar* soap ) +LassoSession* lasso_profile_get_session ( LassoProfile* profile ) +LassoProfileSignatureHint lasso_profile_get_signature_hint ( LassoProfile* profile ) +lasso_error_t lasso_profile_get_signature_status ( LassoProfile* profile ) +LassoProfileSignatureVerifyHint lasso_profile_get_signature_verify_hint ( LassoProfile* profile ) +GType lasso_profile_get_type ( ) +gboolean lasso_profile_is_identity_dirty ( LassoProfile* profile ) +gboolean lasso_profile_is_liberty_query ( const gchar* query ) +gboolean lasso_profile_is_saml_query ( const gchar* query ) +gboolean lasso_profile_is_session_dirty ( LassoProfile* profile ) +None lasso_profile_set_artifact_message ( LassoProfile* profile, const char* message ) +lasso_error_t lasso_profile_set_identity_from_dump ( LassoProfile* profile, const gchar* dump ) +lasso_error_t lasso_profile_set_session_from_dump ( LassoProfile* profile, const gchar* dump ) +None lasso_profile_set_signature_hint ( LassoProfile* profile, LassoProfileSignatureHint signature_hint ) +None lasso_profile_set_signature_verify_hint ( LassoProfile* profile, LassoProfileSignatureVerifyHint signature_verify_hint ) +lasso_error_t lasso_profile_set_soap_fault_response ( LassoProfile* profile, const char* faultcode, const char* faultstring, GList* details ) +LassoProviderRole lasso_profile_sso_role_with ( LassoProfile* profile, const char* remote_provider_id ) +gboolean lasso_provider_accept_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type, LassoHttpMethod http_method, gboolean initiate_profile ) +gchar* lasso_provider_get_assertion_consumer_service_url ( LassoProvider* provider, const char* service_id ) +gchar* lasso_provider_get_base64_succinct_id ( const LassoProvider* provider ) +char* lasso_provider_get_cache_duration ( LassoProvider* provider ) +gchar* lasso_provider_get_default_name_id_format ( LassoProvider* provider ) +LassoEncryptionMode lasso_provider_get_encryption_mode ( LassoProvider* provider ) +LassoHttpMethod lasso_provider_get_first_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type ) +GList* lasso_provider_get_idp_supported_attributes ( LassoProvider* provider ) +GList* lasso_provider_get_metadata_keys_for_role ( LassoProvider* provider, LassoProviderRole role ) +GList* lasso_provider_get_metadata_list ( LassoProvider* provider, const char* name ) +GList* lasso_provider_get_metadata_list_for_role ( const LassoProvider* provider, LassoProviderRole role, const char* name ) +gchar* lasso_provider_get_metadata_one ( LassoProvider* provider, const char* name ) +char* lasso_provider_get_metadata_one_for_role ( LassoProvider* provider, LassoProviderRole role, const char* name ) +xmlNode* lasso_provider_get_organization ( const LassoProvider* provider ) +LassoProtocolConformance lasso_provider_get_protocol_conformance ( const LassoProvider* provider ) +LassoProviderRole lasso_provider_get_roles ( LassoProvider* provider ) +const char* lasso_provider_get_sp_name_qualifier ( LassoProvider* provider ) +GType lasso_provider_get_type ( ) +char* lasso_provider_get_valid_until ( LassoProvider* provider ) +gboolean lasso_provider_has_protocol_profile ( LassoProvider* provider, LassoMdProtocolType protocol_type, const char* protocol_profile ) +gboolean lasso_provider_match_conformance ( LassoProvider* provider, LassoProvider* another_provider ) +LassoProvider* lasso_provider_new ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_buffer ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_dump ( const gchar* dump ) +LassoSaml2EncryptedElement* lasso_provider_saml2_node_encrypt ( const LassoProvider* provider, LassoNode* lasso_node ) +None lasso_provider_set_encryption_mode ( LassoProvider* provider, LassoEncryptionMode encryption_mode ) +None lasso_provider_set_encryption_sym_key_type ( LassoProvider* provider, LassoEncryptionSymKeyType encryption_sym_key_type ) +lasso_error_t lasso_provider_verify_single_node_signature ( LassoProvider* provider, LassoNode* node, const char* id_attr_name ) +None lasso_register_dst_service ( const char* prefix, const char* href ) +None lasso_register_idwsf2_dst_service ( const gchar* prefix, const gchar* href ) +GType lasso_saml2_action_get_type ( ) +LassoNode* lasso_saml2_action_new ( ) +LassoNode* lasso_saml2_action_new_with_string ( char* content ) +GType lasso_saml2_advice_get_type ( ) +LassoNode* lasso_saml2_advice_new ( ) +lasso_error_t lasso_saml2_assertion_add_attribute_with_node ( LassoSaml2Assertion* assertion, const char* name, const char* nameformat, LassoNode* content ) +None lasso_saml2_assertion_add_audience_restriction ( LassoSaml2Assertion* saml2_assertion, const char* providerID ) +None lasso_saml2_assertion_add_proxy_limit ( LassoSaml2Assertion* saml2_assertion, int proxy_count, GList* proxy_audiences ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying ( LassoSaml2Assertion* saml2_assertion ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying_to ( LassoSaml2Assertion* saml2_assertion, const char* audience ) +lasso_error_t lasso_saml2_assertion_decrypt_subject ( LassoSaml2Assertion* assertion, LassoServer* server ) +const char* lasso_saml2_assertion_get_in_response_to ( LassoSaml2Assertion* assertion ) +LassoProvider* lasso_saml2_assertion_get_issuer_provider ( const LassoSaml2Assertion* saml2_assertion, const LassoServer* server ) +LassoSaml2SubjectConfirmationData* lasso_saml2_assertion_get_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, gboolean create ) +GType lasso_saml2_assertion_get_type ( ) +gboolean lasso_saml2_assertion_has_audience_restriction ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_has_one_time_use ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_is_audience_restricted ( LassoSaml2Assertion* saml2_assertion, char* providerID ) +LassoNode* lasso_saml2_assertion_new ( ) +None lasso_saml2_assertion_set_basic_conditions ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, gboolean one_time_use ) +None lasso_saml2_assertion_set_one_time_use ( LassoSaml2Assertion* saml2_assertion, gboolean one_time_use ) +None lasso_saml2_assertion_set_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, const char* Recipient, const char* InResponseTo, const char* Address ) +None lasso_saml2_assertion_set_subject_confirmation_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +None lasso_saml2_assertion_set_subject_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_audience ( LassoSaml2Assertion* saml2_assertion, const gchar* audience ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_conditions ( LassoSaml2Assertion* saml2_assertion, const char* relaying_party_providerID ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_time_checks ( LassoSaml2Assertion* saml2_assertion, unsigned int tolerance, time_t now ) +GType lasso_saml2_attribute_get_type ( ) +LassoNode* lasso_saml2_attribute_new ( ) +GType lasso_saml2_attribute_statement_get_type ( ) +LassoNode* lasso_saml2_attribute_statement_new ( ) +GType lasso_saml2_attribute_value_get_type ( ) +LassoSaml2AttributeValue* lasso_saml2_attribute_value_new ( ) +GType lasso_saml2_audience_restriction_get_type ( ) +LassoNode* lasso_saml2_audience_restriction_new ( ) +GType lasso_saml2_authn_context_get_type ( ) +LassoNode* lasso_saml2_authn_context_new ( ) +GType lasso_saml2_authn_statement_get_type ( ) +LassoNode* lasso_saml2_authn_statement_new ( ) +GType lasso_saml2_authz_decision_statement_get_type ( ) +LassoNode* lasso_saml2_authz_decision_statement_new ( ) +GType lasso_saml2_base_idabstract_get_type ( ) +LassoNode* lasso_saml2_base_idabstract_new ( ) +GType lasso_saml2_condition_abstract_get_type ( ) +LassoNode* lasso_saml2_condition_abstract_new ( ) +GType lasso_saml2_conditions_get_type ( ) +LassoNode* lasso_saml2_conditions_new ( ) +LassoSaml2EncryptedElement* lasso_saml2_encrypted_element_build_encrypted_persistent_name_id ( const char* id, const char* idpID, const LassoProvider* provider ) +GType lasso_saml2_encrypted_element_get_type ( ) +LassoNode* lasso_saml2_encrypted_element_new ( ) +lasso_error_t lasso_saml2_encrypted_element_server_decrypt ( LassoSaml2EncryptedElement* encrypted_element, LassoServer* server, LassoNode** decrypted_node ) +GType lasso_saml2_evidence_get_type ( ) +LassoNode* lasso_saml2_evidence_new ( ) +GType lasso_saml2_key_info_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_key_info_confirmation_data_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_build_persistent ( const char* id, const char* idpID, const char* providerID ) +gboolean lasso_saml2_name_id_equals ( LassoSaml2NameID* name_id, LassoSaml2NameID* other_name_id ) +GType lasso_saml2_name_id_get_type ( ) +LassoNode* lasso_saml2_name_id_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_new_with_persistent_format ( const char* id, const char* idpID, const char* providerID ) +LassoNode* lasso_saml2_name_id_new_with_string ( char* content ) +GType lasso_saml2_one_time_use_get_type ( ) +LassoNode* lasso_saml2_one_time_use_new ( ) +GType lasso_saml2_proxy_restriction_get_type ( ) +LassoNode* lasso_saml2_proxy_restriction_new ( ) +GType lasso_saml2_statement_abstract_get_type ( ) +LassoNode* lasso_saml2_statement_abstract_new ( ) +GType lasso_saml2_subject_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_data_new ( ) +GType lasso_saml2_subject_confirmation_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_new ( ) +GType lasso_saml2_subject_get_type ( ) +GType lasso_saml2_subject_locality_get_type ( ) +LassoNode* lasso_saml2_subject_locality_new ( ) +LassoNode* lasso_saml2_subject_new ( ) +GType lasso_saml_advice_get_type ( ) +LassoNode* lasso_saml_advice_new ( ) +GType lasso_saml_assertion_get_type ( ) +LassoSamlAssertion* lasso_saml_assertion_new ( ) +GType lasso_saml_attribute_designator_get_type ( ) +LassoNode* lasso_saml_attribute_designator_new ( ) +GType lasso_saml_attribute_get_type ( ) +LassoSamlAttribute* lasso_saml_attribute_new ( ) +GType lasso_saml_attribute_statement_get_type ( ) +LassoSamlAttributeStatement* lasso_saml_attribute_statement_new ( ) +GType lasso_saml_attribute_value_get_type ( ) +LassoSamlAttributeValue* lasso_saml_attribute_value_new ( ) +GType lasso_saml_audience_restriction_condition_get_type ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new_full ( const char* audience ) +GType lasso_saml_authentication_statement_get_type ( ) +LassoNode* lasso_saml_authentication_statement_new ( ) +GType lasso_saml_authority_binding_get_type ( ) +LassoNode* lasso_saml_authority_binding_new ( ) +GType lasso_saml_condition_abstract_get_type ( ) +GType lasso_saml_conditions_get_type ( ) +LassoSamlConditions* lasso_saml_conditions_new ( ) +GType lasso_saml_name_identifier_get_type ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new_from_xmlNode ( xmlNode* xmlnode ) +GType lasso_saml_statement_abstract_get_type ( ) +GType lasso_saml_subject_confirmation_get_type ( ) +LassoSamlSubjectConfirmation* lasso_saml_subject_confirmation_new ( ) +GType lasso_saml_subject_get_type ( ) +GType lasso_saml_subject_locality_get_type ( ) +LassoNode* lasso_saml_subject_locality_new ( ) +LassoNode* lasso_saml_subject_new ( ) +GType lasso_saml_subject_statement_abstract_get_type ( ) +GType lasso_saml_subject_statement_get_type ( ) +LassoNode* lasso_saml_subject_statement_new ( ) +GType lasso_samlp2_artifact_resolve_get_type ( ) +LassoNode* lasso_samlp2_artifact_resolve_new ( ) +GType lasso_samlp2_artifact_response_get_type ( ) +LassoNode* lasso_samlp2_artifact_response_new ( ) +GType lasso_samlp2_assertion_id_request_get_type ( ) +LassoNode* lasso_samlp2_assertion_id_request_new ( ) +GType lasso_samlp2_attribute_query_get_type ( ) +LassoNode* lasso_samlp2_attribute_query_new ( ) +GType lasso_samlp2_authn_query_get_type ( ) +LassoNode* lasso_samlp2_authn_query_new ( ) +GType lasso_samlp2_authn_request_get_type ( ) +LassoNode* lasso_samlp2_authn_request_new ( ) +GType lasso_samlp2_authz_decision_query_get_type ( ) +LassoNode* lasso_samlp2_authz_decision_query_new ( ) +GType lasso_samlp2_extensions_get_type ( ) +LassoNode* lasso_samlp2_extensions_new ( ) +GType lasso_samlp2_idp_entry_get_type ( ) +LassoNode* lasso_samlp2_idp_entry_new ( ) +GType lasso_samlp2_idp_list_get_type ( ) +LassoNode* lasso_samlp2_idp_list_new ( ) +GList* lasso_samlp2_logout_request_get_session_indexes ( LassoSamlp2LogoutRequest* logout_request ) +GType lasso_samlp2_logout_request_get_type ( ) +LassoNode* lasso_samlp2_logout_request_new ( ) +None lasso_samlp2_logout_request_set_session_indexes ( LassoSamlp2LogoutRequest* logout_request, GList* session_index ) +GType lasso_samlp2_logout_response_get_type ( ) +LassoNode* lasso_samlp2_logout_response_new ( ) +GType lasso_samlp2_manage_name_id_request_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_request_new ( ) +GType lasso_samlp2_manage_name_id_response_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_response_new ( ) +GType lasso_samlp2_name_id_mapping_request_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_request_new ( ) +GType lasso_samlp2_name_id_mapping_response_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_response_new ( ) +GType lasso_samlp2_name_id_policy_get_type ( ) +LassoNode* lasso_samlp2_name_id_policy_new ( ) +GType lasso_samlp2_request_abstract_get_type ( ) +LassoNode* lasso_samlp2_request_abstract_new ( ) +GType lasso_samlp2_requested_authn_context_get_type ( ) +LassoNode* lasso_samlp2_requested_authn_context_new ( ) +GType lasso_samlp2_response_get_type ( ) +LassoNode* lasso_samlp2_response_new ( ) +GType lasso_samlp2_scoping_get_type ( ) +LassoNode* lasso_samlp2_scoping_new ( ) +GType lasso_samlp2_status_code_get_type ( ) +LassoNode* lasso_samlp2_status_code_new ( ) +GType lasso_samlp2_status_detail_get_type ( ) +LassoNode* lasso_samlp2_status_detail_new ( ) +GType lasso_samlp2_status_get_type ( ) +LassoNode* lasso_samlp2_status_new ( ) +GType lasso_samlp2_status_response_get_type ( ) +LassoNode* lasso_samlp2_status_response_new ( ) +GType lasso_samlp2_subject_query_abstract_get_type ( ) +LassoNode* lasso_samlp2_subject_query_abstract_new ( ) +GType lasso_samlp2_terminate_get_type ( ) +LassoNode* lasso_samlp2_terminate_new ( ) +GType lasso_samlp_request_abstract_get_type ( ) +GType lasso_samlp_request_get_type ( ) +LassoNode* lasso_samlp_request_new ( ) +None lasso_samlp_response_abstract_fill ( LassoSamlpResponseAbstract* response, const char* InResponseTo, const char* Recipient ) +GType lasso_samlp_response_abstract_get_type ( ) +GType lasso_samlp_response_get_type ( ) +LassoNode* lasso_samlp_response_new ( ) +GType lasso_samlp_status_code_get_type ( ) +LassoSamlpStatusCode* lasso_samlp_status_code_new ( ) +GType lasso_samlp_status_get_type ( ) +LassoSamlpStatus* lasso_samlp_status_new ( ) +lasso_error_t lasso_server_add_provider ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +lasso_error_t lasso_server_add_provider_from_buffer ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +None lasso_server_destroy ( LassoServer* server ) +gchar* lasso_server_dump ( LassoServer* server ) +LassoProvider* lasso_server_get_provider ( const LassoServer* server, const gchar* providerID ) +GType lasso_server_get_type ( ) +lasso_error_t lasso_server_load_affiliation ( LassoServer* server, const gchar* filename ) +LassoServer* lasso_server_new ( const gchar* metadata, const gchar* private_key, const gchar* private_key_password, const gchar* certificate ) +LassoServer* lasso_server_new_from_buffers ( const gchar* metadata, const gchar* private_key_content, const gchar* private_key_password, const gchar* certificate_content ) +LassoServer* lasso_server_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_server_saml2_assertion_setup_signature ( LassoServer* server, LassoSaml2Assertion* saml2_assertion ) +lasso_error_t lasso_server_set_encryption_private_key ( LassoServer* server, const gchar* filename_or_buffer ) +lasso_error_t lasso_server_set_encryption_private_key_with_password ( LassoServer* server, const gchar* filename_or_buffer, const gchar* password ) +lasso_error_t lasso_session_add_assertion ( LassoSession* session, const char* providerID, LassoNode* assertion ) +None lasso_session_destroy ( LassoSession* session ) +gchar* lasso_session_dump ( LassoSession* session ) +LassoNode* lasso_session_get_assertion ( LassoSession* session, const gchar* providerID ) +GList* lasso_session_get_assertions ( LassoSession* session, const char* provider_id ) +gchar* lasso_session_get_provider_index ( LassoSession* session, gint index ) +GType lasso_session_get_type ( ) +gboolean lasso_session_is_empty ( LassoSession* session ) +LassoSession* lasso_session_new ( ) +LassoSession* lasso_session_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_session_remove_assertion ( LassoSession* session, const gchar* providerID ) +None lasso_set_flag ( char* flag ) +lasso_error_t lasso_shutdown ( ) +GType lasso_soap_body_get_type ( ) +LassoSoapBody* lasso_soap_body_new ( ) +LassoSoapBody* lasso_soap_body_new_from_message ( const gchar* message ) +GType lasso_soap_detail_get_type ( ) +LassoSoapDetail* lasso_soap_detail_new ( ) +LassoSoapDetail* lasso_soap_detail_new_from_message ( const gchar* message ) +GType lasso_soap_envelope_get_type ( ) +LassoSoapEnvelope* lasso_soap_envelope_new ( LassoSoapBody* body ) +LassoSoapEnvelope* lasso_soap_envelope_new_from_message ( const gchar* message ) +GType lasso_soap_fault_get_type ( ) +LassoSoapFault* lasso_soap_fault_new ( ) +LassoSoapFault* lasso_soap_fault_new_from_message ( const gchar* message ) +LassoSoapFault* lasso_soap_fault_new_full ( const char* faultcode, const char* faultstring ) +GType lasso_soap_header_get_type ( ) +LassoSoapHeader* lasso_soap_header_new ( ) +LassoSoapHeader* lasso_soap_header_new_from_message ( const gchar* message ) +const char* lasso_strerror ( int error_code ) diff --git a/abi/abi-2.4.0 b/abi/abi-2.4.0 new file mode 100644 index 00000000..727e46f3 --- /dev/null +++ b/abi/abi-2.4.0 @@ -0,0 +1,1125 @@ +BACKWARD_COMP_H +LASSO_ASSERTION_QUERY_ERROR_ATTRIBUTE_REQUEST_ALREADY_EXIST +LASSO_ASSERTION_QUERY_ERROR_NOT_AN_ATTRIBUTE_QUERY +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ASSERTION_ID +LASSO_ASSERTION_QUERY_REQUEST_TYPE_ATTRIBUTE +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHN +LASSO_ASSERTION_QUERY_REQUEST_TYPE_AUTHZ_DECISION +LASSO_ASSERTION_QUERY_REQUEST_TYPE_LAST +LASSO_ASSERTION_QUERY_REQUEST_TYPE_UNSET +LASSO_CERTIFICATE_ATTRIBUTE +LASSO_CHECK_VERSIONABI_COMPATIBLE +LASSO_CHECK_VERSION_EXACT +LASSO_CHECK_VERSION_NUMERIC +LASSO_DATA_SERVICE_ERROR_CANNOT_ADD_ITEM +LASSO_DATA_SERVICE_ERROR_UNREGISTERED_DST +LASSO_DEFEDERATION_ERROR_MISSING_NAME_IDENTIFIER +LASSO_DISCOVERY_ERROR_FAILED_TO_BUILD_ENDPOINT_REFERENCE +LASSO_DISCOVERY_ERROR_MISSING_REQUESTED_SERVICE +LASSO_DISCOVERY_ERROR_SVC_METADATA_ASSOCIATION_ADD_FAILED +LASSO_DISCOVERY_ERROR_SVC_METADATA_REGISTER_FAILED +LASSO_DST_ERROR_EMPTY_REQUEST +LASSO_DST_ERROR_MALFORMED_QUERY +LASSO_DST_ERROR_MISSING_SERVICE_DATA +LASSO_DST_ERROR_MODIFY_FAILED +LASSO_DST_ERROR_MODIFY_PARTIALLY_FAILED +LASSO_DST_ERROR_NEW_DATA_MISSING +LASSO_DST_ERROR_NO_DATA +LASSO_DST_ERROR_QUERY_FAILED +LASSO_DST_ERROR_QUERY_NOT_FOUND +LASSO_DST_ERROR_QUERY_PARTIALLY_FAILED +LASSO_DS_ERROR_CA_CERT_CHAIN_LOAD_FAILED +LASSO_DS_ERROR_CERTIFICATE_LOAD_FAILED +LASSO_DS_ERROR_CONTEXT_CREATION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED +LASSO_DS_ERROR_DECRYPTION_FAILED_MISSING_PRIVATE_KEY +LASSO_DS_ERROR_DIGEST_COMPUTE_FAILED +LASSO_DS_ERROR_ENCRYPTION_FAILED +LASSO_DS_ERROR_INVALID_REFERENCE_FOR_SAML +LASSO_DS_ERROR_INVALID_SIGALG +LASSO_DS_ERROR_INVALID_SIGNATURE +LASSO_DS_ERROR_KEYS_MNGR_CREATION_FAILED +LASSO_DS_ERROR_KEYS_MNGR_INIT_FAILED +LASSO_DS_ERROR_PRIVATE_KEY_LOAD_FAILED +LASSO_DS_ERROR_PUBLIC_KEY_LOAD_FAILED +LASSO_DS_ERROR_SIGNATURE_FAILED +LASSO_DS_ERROR_SIGNATURE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TEMPLATE_NOT_FOUND +LASSO_DS_ERROR_SIGNATURE_TMPL_CREATION_FAILED +LASSO_DS_ERROR_SIGNATURE_VERIFICATION_FAILED +LASSO_DS_ERROR_TOO_MUCH_REFERENCES +LASSO_DS_HREF +LASSO_DS_PREFIX +LASSO_DURATION_DAY +LASSO_DURATION_HOUR +LASSO_DURATION_MINUTE +LASSO_DURATION_WEEK +LASSO_ECP_HREF +LASSO_ECP_PREFIX +LASSO_ENCRYPTION_MODE_ASSERTION +LASSO_ENCRYPTION_MODE_NAMEID +LASSO_ENCRYPTION_MODE_NONE +LASSO_ENCRYPTION_SYM_KEY_TYPE_3DES +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_128 +LASSO_ENCRYPTION_SYM_KEY_TYPE_AES_256 +LASSO_ENCRYPTION_SYM_KEY_TYPE_DEFAULT +LASSO_ENCRYTPION_SYM_KEY_TYPE_LAST +LASSO_ERROR_CAST_FAILED +LASSO_ERROR_OUT_OF_MEMORY +LASSO_ERROR_UNDEFINED +LASSO_ERROR_UNIMPLEMENTED +LASSO_HTTP_METHOD_ANY +LASSO_HTTP_METHOD_ARTIFACT_GET +LASSO_HTTP_METHOD_ARTIFACT_POST +LASSO_HTTP_METHOD_GET +LASSO_HTTP_METHOD_IDP_INITIATED +LASSO_HTTP_METHOD_LAST +LASSO_HTTP_METHOD_NONE +LASSO_HTTP_METHOD_PAOS +LASSO_HTTP_METHOD_POST +LASSO_HTTP_METHOD_REDIRECT +LASSO_HTTP_METHOD_SOAP +LASSO_IDWSF2_DISCOVERY_ERROR_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_FAILED +LASSO_IDWSF2_DISCOVERY_ERROR_FORBIDDEN +LASSO_IDWSF2_DISCOVERY_ERROR_LOGICAL_DUPLICATE +LASSO_IDWSF2_DISCOVERY_ERROR_NOT_FOUND +LASSO_IDWSF2_DISCOVERY_ERROR_NO_RESULTS +LASSO_IDWSF2_DST_ERROR_DUPLICATE_ITEM +LASSO_IDWSF2_DST_ERROR_ITEM_NOT_FOUND +LASSO_IDWSF2_DST_ERROR_PARTIAL_FAILURE +LASSO_IDWSF2_DST_ERROR_UNKNOWN_STATUS_CODE +LASSO_LASSO_HREF +LASSO_LASSO_PREFIX +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_INTERNET_PROTOCOL_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_CONTRACT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PASSWORD_PROTECTED_TRANSPORT +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_PREVIOUS_SESSION +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SMARTCARD_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_SOFTWARE_PKI +LASSO_LIB_AUTHN_CONTEXT_CLASS_REF_TIME_SYNC_TOKEN +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_BETTER +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_EXACT +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MAXIMUM +LASSO_LIB_AUTHN_CONTEXT_COMPARISON_MINIMUM +LASSO_LIB_CONSENT_INAPPLICABLE +LASSO_LIB_CONSENT_OBTAINED +LASSO_LIB_CONSENT_OBTAINED_CURRENT_EXPLICIT +LASSO_LIB_CONSENT_OBTAINED_CURRENT_IMPLICIT +LASSO_LIB_CONSENT_OBTAINED_PRIOR +LASSO_LIB_CONSENT_UNAVAILABLE +LASSO_LIB_HREF +LASSO_LIB_MAJOR_VERSION_N +LASSO_LIB_MINOR_VERSION_N +LASSO_LIB_NAMEID_POLICY_TYPE_ANY +LASSO_LIB_NAMEID_POLICY_TYPE_FEDERATED +LASSO_LIB_NAMEID_POLICY_TYPE_NONE +LASSO_LIB_NAMEID_POLICY_TYPE_ONE_TIME +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ENTITYID +LASSO_LIB_NAME_IDENTIFIER_FORMAT_FEDERATED +LASSO_LIB_NAME_IDENTIFIER_FORMAT_ONE_TIME +LASSO_LIB_PREFIX +LASSO_LIB_PROTOCOL_PROFILE_BRWS_ART +LASSO_LIB_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LIB_PROTOCOL_PROFILE_BRWS_POST +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_FED_TERM_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_NIM_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_RNI_SP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_IDP_SOAP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_HTTP +LASSO_LIB_PROTOCOL_PROFILE_SLO_SP_SOAP +LASSO_LIB_STATUS_CODE_FEDERATION_DOES_NOT_EXIST +LASSO_LIB_STATUS_CODE_INVALID_ASSERTION_CONSUMER_SERVICE_INDEX +LASSO_LIB_STATUS_CODE_INVALID_SIGNATURE +LASSO_LIB_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_LIB_STATUS_CODE_NO_AVAILABLEIDP +LASSO_LIB_STATUS_CODE_NO_PASSIVE +LASSO_LIB_STATUS_CODE_NO_SUPPORTEDIDP +LASSO_LIB_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_LIB_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_LIB_STATUS_CODE_UNSIGNED_AUTHN_REQUEST +LASSO_LIB_STATUS_CODE_UNSUPPORTED_PROFILE +LASSO_LOGIN_ERROR_ASSERTION_DOES_NOT_MATCH_REQUEST_ID +LASSO_LOGIN_ERROR_ASSERTION_REPLAY +LASSO_LOGIN_ERROR_CONSENT_NOT_OBTAINED +LASSO_LOGIN_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGIN_ERROR_INVALID_ASSERTION_SIGNATURE +LASSO_LOGIN_ERROR_INVALID_NAMEIDPOLICY +LASSO_LOGIN_ERROR_INVALID_SIGNATURE +LASSO_LOGIN_ERROR_NO_DEFAULT_ENDPOINT +LASSO_LOGIN_ERROR_REQUEST_DENIED +LASSO_LOGIN_ERROR_STATUS_NOT_SUCCESS +LASSO_LOGIN_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGIN_ERROR_UNSIGNED_AUTHN_REQUEST +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_ART +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_LECP +LASSO_LOGIN_PROTOCOL_PROFILE_BRWS_POST +LASSO_LOGIN_PROTOCOL_PROFILE_REDIRECT +LASSO_LOGOUT_ERROR_FEDERATION_NOT_FOUND +LASSO_LOGOUT_ERROR_PARTIAL_LOGOUT +LASSO_LOGOUT_ERROR_REQUEST_DENIED +LASSO_LOGOUT_ERROR_UNKNOWN_PRINCIPAL +LASSO_LOGOUT_ERROR_UNSUPPORTED_PROFILE +LASSO_MD_PROTOCOL_TYPE_ARTIFACT_RESOLUTION +LASSO_MD_PROTOCOL_TYPE_ASSERTION_ID_REQUEST +LASSO_MD_PROTOCOL_TYPE_ATTRIBUTE +LASSO_MD_PROTOCOL_TYPE_AUTHN_QUERY +LASSO_MD_PROTOCOL_TYPE_AUTHZ +LASSO_MD_PROTOCOL_TYPE_FEDERATION_TERMINATION +LASSO_MD_PROTOCOL_TYPE_LAST +LASSO_MD_PROTOCOL_TYPE_MANAGE_NAME_ID +LASSO_MD_PROTOCOL_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_MD_PROTOCOL_TYPE_REGISTER_NAME_IDENTIFIER +LASSO_MD_PROTOCOL_TYPE_SINGLE_LOGOUT +LASSO_MD_PROTOCOL_TYPE_SINGLE_SIGN_ON +LASSO_MESSAGE_FORMAT_BASE64 +LASSO_MESSAGE_FORMAT_ERROR +LASSO_MESSAGE_FORMAT_QUERY +LASSO_MESSAGE_FORMAT_SOAP +LASSO_MESSAGE_FORMAT_UNKNOWN +LASSO_MESSAGE_FORMAT_XML +LASSO_MESSAGE_FORMAT_XSCHEMA_ERROR +LASSO_METADATA_HREF +LASSO_METADATA_PREFIX +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_FORBIDDEN_CALL_ON_THIS_SIDE +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_IDENTIFIER +LASSO_NAME_IDENTIFIER_MAPPING_ERROR_MISSING_TARGET_NAMESPACE +LASSO_PAOS_HREF +LASSO_PAOS_PREFIX +LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ +LASSO_PARAM_ERROR_CHECK_FAILED +LASSO_PARAM_ERROR_INVALID_VALUE +LASSO_PARAM_ERROR_NON_INITIALIZED_OBJECT +LASSO_PRIVATE_KEY_ATTRIBUTE +LASSO_PRIVATE_KEY_PASSWORD_ATTRIBUTE +LASSO_PRIVATE_STATUS_CODE_FAILED_TO_RESTORE_ARTIFACT +LASSO_PROFILE_ERROR_BAD_IDENTITY_DUMP +LASSO_PROFILE_ERROR_BAD_SESSION_DUMP +LASSO_PROFILE_ERROR_BUILDING_MESSAGE_FAILED +LASSO_PROFILE_ERROR_BUILDING_QUERY_FAILED +LASSO_PROFILE_ERROR_BUILDING_REQUEST_FAILED +LASSO_PROFILE_ERROR_BUILDING_RESPONSE_FAILED +LASSO_PROFILE_ERROR_CANNOT_FIND_A_PROVIDER +LASSO_PROFILE_ERROR_CANNOT_VERIFY_SIGNATURE +LASSO_PROFILE_ERROR_FEDERATION_NOT_FOUND +LASSO_PROFILE_ERROR_IDENTITY_NOT_FOUND +LASSO_PROFILE_ERROR_INVALID_ARTIFACT +LASSO_PROFILE_ERROR_INVALID_ASSERTION +LASSO_PROFILE_ERROR_INVALID_ASSERTION_CONDITIONS +LASSO_PROFILE_ERROR_INVALID_HTTP_METHOD +LASSO_PROFILE_ERROR_INVALID_ISSUER +LASSO_PROFILE_ERROR_INVALID_MSG +LASSO_PROFILE_ERROR_INVALID_POST_MSG +LASSO_PROFILE_ERROR_INVALID_PROTOCOLPROFILE +LASSO_PROFILE_ERROR_INVALID_QUERY +LASSO_PROFILE_ERROR_INVALID_REQUEST +LASSO_PROFILE_ERROR_INVALID_RESPONSE +LASSO_PROFILE_ERROR_INVALID_SOAP_MSG +LASSO_PROFILE_ERROR_ISSUER_IS_NOT_AN_IDP +LASSO_PROFILE_ERROR_MISSING_ARTIFACT +LASSO_PROFILE_ERROR_MISSING_ASSERTION +LASSO_PROFILE_ERROR_MISSING_ENCRYPTION_PRIVATE_KEY +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE +LASSO_PROFILE_ERROR_MISSING_ENDPOINT_REFERENCE_ADDRESS +LASSO_PROFILE_ERROR_MISSING_ISSUER +LASSO_PROFILE_ERROR_MISSING_NAME_IDENTIFIER +LASSO_PROFILE_ERROR_MISSING_REMOTE_PROVIDERID +LASSO_PROFILE_ERROR_MISSING_REQUEST +LASSO_PROFILE_ERROR_MISSING_RESOURCE_OFFERING +LASSO_PROFILE_ERROR_MISSING_RESPONSE +LASSO_PROFILE_ERROR_MISSING_SERVER +LASSO_PROFILE_ERROR_MISSING_SERVICE_DESCRIPTION +LASSO_PROFILE_ERROR_MISSING_SERVICE_INSTANCE +LASSO_PROFILE_ERROR_MISSING_SERVICE_TYPE +LASSO_PROFILE_ERROR_MISSING_STATUS_CODE +LASSO_PROFILE_ERROR_MISSING_SUBJECT +LASSO_PROFILE_ERROR_NAME_IDENTIFIER_NOT_FOUND +LASSO_PROFILE_ERROR_REQUEST_DENIED +LASSO_PROFILE_ERROR_RESPONSE_DOES_NOT_MATCH_REQUEST +LASSO_PROFILE_ERROR_SESSION_NOT_FOUND +LASSO_PROFILE_ERROR_STATUS_NOT_SUCCESS +LASSO_PROFILE_ERROR_UNKNOWN_ISSUER +LASSO_PROFILE_ERROR_UNKNOWN_PROFILE_URL +LASSO_PROFILE_ERROR_UNKNOWN_PROVIDER +LASSO_PROFILE_ERROR_UNSUPPORTED_BINDING +LASSO_PROFILE_ERROR_UNSUPPORTED_PROFILE +LASSO_PROFILE_SIGNATURE_HINT_FORBID +LASSO_PROFILE_SIGNATURE_HINT_FORCE +LASSO_PROFILE_SIGNATURE_HINT_MAYBE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_FORCE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_IGNORE +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_LAST +LASSO_PROFILE_SIGNATURE_VERIFY_HINT_MAYBE +LASSO_PROTOCOL_LIBERTY_1_0 +LASSO_PROTOCOL_LIBERTY_1_1 +LASSO_PROTOCOL_LIBERTY_1_2 +LASSO_PROTOCOL_NONE +LASSO_PROTOCOL_SAML_2_0 +LASSO_PROVIDER_ERROR_MISSING_PUBLIC_KEY +LASSO_PROVIDER_ROLE_ALL +LASSO_PROVIDER_ROLE_ANY +LASSO_PROVIDER_ROLE_ATTRIBUTE_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHN_AUTHORITY +LASSO_PROVIDER_ROLE_AUTHZ_AUTHORITY +LASSO_PROVIDER_ROLE_BOTH +LASSO_PROVIDER_ROLE_IDP +LASSO_PROVIDER_ROLE_LAST +LASSO_PROVIDER_ROLE_NONE +LASSO_PROVIDER_ROLE_SP +LASSO_PYTHON_HREF +LASSO_REGISTRY_ERROR_KEY_EXISTS +LASSO_REQUEST_TYPE_DEFEDERATION +LASSO_REQUEST_TYPE_DISCO_MODIFY +LASSO_REQUEST_TYPE_DISCO_QUERY +LASSO_REQUEST_TYPE_DST_MODIFY +LASSO_REQUEST_TYPE_DST_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_QUERY +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_ASSOCIATION_ADD +LASSO_REQUEST_TYPE_IDWSF2_DISCO_SVCMD_REGISTER +LASSO_REQUEST_TYPE_INVALID +LASSO_REQUEST_TYPE_LECP +LASSO_REQUEST_TYPE_LOGIN +LASSO_REQUEST_TYPE_LOGOUT +LASSO_REQUEST_TYPE_NAME_IDENTIFIER_MAPPING +LASSO_REQUEST_TYPE_NAME_ID_MANAGEMENT +LASSO_REQUEST_TYPE_NAME_REGISTRATION +LASSO_REQUEST_TYPE_SASL_REQUEST +LASSO_SAML2_ACTION_GHPP_GET +LASSO_SAML2_ACTION_GHPP_HEAD +LASSO_SAML2_ACTION_GHPP_POST +LASSO_SAML2_ACTION_GHPP_PUT +LASSO_SAML2_ACTION_NAMESPACE_GHPP +LASSO_SAML2_ACTION_NAMESPACE_RWEDC +LASSO_SAML2_ACTION_NAMESPACE_RWEDC_NEGATION +LASSO_SAML2_ACTION_NAMESPACE_UNIX +LASSO_SAML2_ACTION_RWEDC_CONTROL +LASSO_SAML2_ACTION_RWEDC_DELETE +LASSO_SAML2_ACTION_RWEDC_EXECUTE +LASSO_SAML2_ACTION_RWEDC_NEGATION +LASSO_SAML2_ACTION_RWEDC_READ +LASSO_SAML2_ACTION_RWEDC_WRITE +LASSO_SAML2_ASSERTION_HREF +LASSO_SAML2_ASSERTION_INDETERMINATE +LASSO_SAML2_ASSERTION_INVALID +LASSO_SAML2_ASSERTION_PREFIX +LASSO_SAML2_ASSERTION_VALID +LASSO_SAML2_ATTRIBUTE_NAME_EPR +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_BASIC +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_UNSPECIFIED +LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_URI +LASSO_SAML2_ATTRIBUTE_PROFILE_BASIC +LASSO_SAML2_ATTRIBUTE_PROFILE_DCE +LASSO_SAML2_ATTRIBUTE_PROFILE_UUID +LASSO_SAML2_ATTRIBUTE_PROFILE_X500 +LASSO_SAML2_AUTHN_CONTEXT_AUTHENTICATED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL +LASSO_SAML2_AUTHN_CONTEXT_INTERNET_PROTOCOL_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_KERBEROS +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_ONE_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_CONTRACT +LASSO_SAML2_AUTHN_CONTEXT_MOBILE_TWO_FACTOR_UNREGISTERED +LASSO_SAML2_AUTHN_CONTEXT_NOMAD_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_PASSWORD_PROTECTED_TRANSPORT +LASSO_SAML2_AUTHN_CONTEXT_PERSONALIZED_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_PGP +LASSO_SAML2_AUTHN_CONTEXT_PREVIOUS_SESSION +LASSO_SAML2_AUTHN_CONTEXT_SECURE_REMOTE_PASSWORD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD +LASSO_SAML2_AUTHN_CONTEXT_SMARTCARD_PKI +LASSO_SAML2_AUTHN_CONTEXT_SOFTWARE_PKI +LASSO_SAML2_AUTHN_CONTEXT_SPKI +LASSO_SAML2_AUTHN_CONTEXT_TELEPHONY +LASSO_SAML2_AUTHN_CONTEXT_TIME_SYNC_TOKEN +LASSO_SAML2_AUTHN_CONTEXT_TLS_CLIENT +LASSO_SAML2_AUTHN_CONTEXT_UNSPECIFIED +LASSO_SAML2_AUTHN_CONTEXT_X509 +LASSO_SAML2_AUTHN_CONTEXT_XMLDSIG +LASSO_SAML2_CONFIRMATION_METHOD_BEARER +LASSO_SAML2_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML2_CONSENT_EXPLICIT +LASSO_SAML2_CONSENT_IMPLICIT +LASSO_SAML2_CONSENT_INAPPLICABLE +LASSO_SAML2_CONSENT_OBTAINED +LASSO_SAML2_CONSENT_PRIOR +LASSO_SAML2_CONSENT_UNAVAILABLE +LASSO_SAML2_DEFLATE_ENCODING +LASSO_SAML2_FIELD_ARTIFACT +LASSO_SAML2_FIELD_ENCODING +LASSO_SAML2_FIELD_RELAYSTATE +LASSO_SAML2_FIELD_REQUEST +LASSO_SAML2_FIELD_RESPONSE +LASSO_SAML2_FIELD_SIGALG +LASSO_SAML2_FIELD_SIGNATURE +LASSO_SAML2_METADATA_BINDING_ARTIFACT +LASSO_SAML2_METADATA_BINDING_PAOS +LASSO_SAML2_METADATA_BINDING_POST +LASSO_SAML2_METADATA_BINDING_REDIRECT +LASSO_SAML2_METADATA_BINDING_SOAP +LASSO_SAML2_METADATA_BINDING_URI +LASSO_SAML2_METADATA_HREF +LASSO_SAML2_METADATA_PREFIX +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_EMAIL +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENCRYPTED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_ENTITY +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_KERBEROS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_PERSISTENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_TRANSIENT +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_UNSPECIFIED +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_WINDOWS +LASSO_SAML2_NAME_IDENTIFIER_FORMAT_X509 +LASSO_SAML2_PROTOCOL_HREF +LASSO_SAML2_PROTOCOL_PREFIX +LASSO_SAML2_STATUS_CODE_AUTHN_FAILED +LASSO_SAML2_STATUS_CODE_INVALID_ATTR_NAME +LASSO_SAML2_STATUS_CODE_INVALID_NAME_ID_POLICY +LASSO_SAML2_STATUS_CODE_NO_AUTHN_CONTEXT +LASSO_SAML2_STATUS_CODE_NO_AVAILABLE_IDP +LASSO_SAML2_STATUS_CODE_NO_PASSIVE +LASSO_SAML2_STATUS_CODE_NO_SUPPORTED_IDP +LASSO_SAML2_STATUS_CODE_PARTIAL_LOGOUT +LASSO_SAML2_STATUS_CODE_PROXY_COUNT_EXCEEDED +LASSO_SAML2_STATUS_CODE_REQUESTER +LASSO_SAML2_STATUS_CODE_REQUEST_DENIED +LASSO_SAML2_STATUS_CODE_REQUEST_UNSUPPORTED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML2_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML2_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML2_STATUS_CODE_RESPONDER +LASSO_SAML2_STATUS_CODE_SUCCESS +LASSO_SAML2_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML2_STATUS_CODE_UNKNOWN_ATTR_PROFILE +LASSO_SAML2_STATUS_CODE_UNKNOWN_PRINCIPAL +LASSO_SAML2_STATUS_CODE_UNSUPPORTED_BINDING +LASSO_SAML2_STATUS_CODE_VERSION_MISMATCH +LASSO_SAML_ASSERTION_HREF +LASSO_SAML_ASSERTION_PREFIX +LASSO_SAML_AUTHENTICATION_METHODS_PKI +LASSO_SAML_AUTHENTICATION_METHOD_HARDWARE_TOKEN +LASSO_SAML_AUTHENTICATION_METHOD_KERBEROS +LASSO_SAML_AUTHENTICATION_METHOD_LIBERTY +LASSO_SAML_AUTHENTICATION_METHOD_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_PGP +LASSO_SAML_AUTHENTICATION_METHOD_SECURE_REMOTE_PASSWORD +LASSO_SAML_AUTHENTICATION_METHOD_SMARTCARD_PKI +LASSO_SAML_AUTHENTICATION_METHOD_SOFTWARE_PKI +LASSO_SAML_AUTHENTICATION_METHOD_UNSPECIFIED +LASSO_SAML_AUTHENTICATION_METHOD_XKMS +LASSO_SAML_AUTHENTICATION_METHOD_XMLD_SIG +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT +LASSO_SAML_CONFIRMATION_METHOD_ARTIFACT01 +LASSO_SAML_CONFIRMATION_METHOD_BEARER +LASSO_SAML_CONFIRMATION_METHOD_HOLDER_OF_KEY +LASSO_SAML_CONFIRMATION_METHOD_SENDER_VOUCHES +LASSO_SAML_MAJOR_VERSION_N +LASSO_SAML_MINOR_VERSION_N +LASSO_SAML_PROTOCOL_HREF +LASSO_SAML_PROTOCOL_PREFIX +LASSO_SAML_STATUS_CODE_REQUESTER +LASSO_SAML_STATUS_CODE_REQUEST_DENIED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_DEPRECATED +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_HIGH +LASSO_SAML_STATUS_CODE_REQUEST_VERSION_TOO_LOW +LASSO_SAML_STATUS_CODE_RESOURCE_NOT_RECOGNIZED +LASSO_SAML_STATUS_CODE_RESPONDER +LASSO_SAML_STATUS_CODE_SUCCESS +LASSO_SAML_STATUS_CODE_TOO_MANY_RESPONSES +LASSO_SAML_STATUS_CODE_VERSION_MISMATCH +LASSO_SERVER_ERROR_ADD_PROVIDER_FAILED +LASSO_SERVER_ERROR_ADD_PROVIDER_PROTOCOL_MISMATCH +LASSO_SERVER_ERROR_INVALID_XML +LASSO_SERVER_ERROR_NO_PROVIDER_LOADED +LASSO_SERVER_ERROR_PROVIDER_NOT_FOUND +LASSO_SERVER_ERROR_SET_ENCRYPTION_PRIVATE_KEY_FAILED +LASSO_SERVER_LOAD_METADATA_FLAG_CHECK_ENTITIES_DESCRIPTOR_SIGNATURE +LASSO_SERVER_LOAD_METADATA_FLAG_CHECK_ENTITY_DESCRIPTOR_SIGNATURE +LASSO_SERVER_LOAD_METADATA_FLAG_DEFAULT +LASSO_SERVER_LOAD_METADATA_FLAG_INHERIT_SIGNATURE +LASSO_SIGNATURE_METHOD_ATTRIBUTE +LASSO_SIGNATURE_METHOD_DSA_SHA1 +LASSO_SIGNATURE_METHOD_LAST +LASSO_SIGNATURE_METHOD_RSA_SHA1 +LASSO_SIGNATURE_TYPE_ATTRIBUTE +LASSO_SIGNATURE_TYPE_LAST +LASSO_SIGNATURE_TYPE_NONE +LASSO_SIGNATURE_TYPE_SIMPLE +LASSO_SIGNATURE_TYPE_WITHX509 +LASSO_SOAP_ENV_ACTOR +LASSO_SOAP_ENV_HREF +LASSO_SOAP_ENV_PREFIX +LASSO_SOAP_ERROR_MISSING_BODY +LASSO_SOAP_ERROR_MISSING_ENVELOPE +LASSO_SOAP_ERROR_MISSING_HEADER +LASSO_SOAP_ERROR_MISSING_SOAP_FAULT_DETAIL +LASSO_SOAP_ERROR_REDIRECT_REQUEST_FAULT +LASSO_SOAP_FAULT_CODE_CLIENT +LASSO_SOAP_FAULT_CODE_MUST_UNDERSTAND +LASSO_SOAP_FAULT_CODE_SERVER +LASSO_SOAP_FAULT_CODE_VERSION_MISMATCH +LASSO_SOAP_FAULT_REDIRECT_REQUEST +LASSO_WSF_ENABLED +LASSO_WSF_PROFILE_ERROR_INVALID_OR_MISSING_REFERENCE_TO_MESSAGE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_ASSERTION_ID +LASSO_WSF_PROFILE_ERROR_MISSING_CORRELATION +LASSO_WSF_PROFILE_ERROR_MISSING_CREDENTIAL_REF +LASSO_WSF_PROFILE_ERROR_MISSING_DESCRIPTION +LASSO_WSF_PROFILE_ERROR_MISSING_ENDPOINT +LASSO_WSF_PROFILE_ERROR_MISSING_RESOURCE_ID +LASSO_WSF_PROFILE_ERROR_MISSING_SECURITY +LASSO_WSF_PROFILE_ERROR_MISSING_SENDER_ID +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST +LASSO_WSF_PROFILE_ERROR_REDIRECT_REQUEST_UNSUPPORTED_BY_REQUESTER +LASSO_WSF_PROFILE_ERROR_SECURITY_MECHANISM_CHECK_FAILED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED +LASSO_WSF_PROFILE_ERROR_SERVER_INTERACTION_REQUIRED_FOR_DATA +LASSO_WSF_PROFILE_ERROR_SOAP_FAULT +LASSO_WSF_PROFILE_ERROR_UNKNOWN_STATUS_CODE +LASSO_WSF_PROFILE_ERROR_UNSUPPORTED_SECURITY_MECHANISM +LASSO_WSSEC_ERROR_BAD_PASSWORD +LASSO_WSSEC_ERROR_MISSING_SECURITY_TOKEN +LASSO_WSUTIL1_HREF +LASSO_WSUTIL1_PREFIX +LASSO_XML_ERROR_ATTR_NOT_FOUND +LASSO_XML_ERROR_ATTR_VALUE_NOT_FOUND +LASSO_XML_ERROR_INVALID_FILE +LASSO_XML_ERROR_MISSING_NAMESPACE +LASSO_XML_ERROR_NODE_CONTENT_NOT_FOUND +LASSO_XML_ERROR_NODE_NOT_FOUND +LASSO_XML_ERROR_OBJECT_CONSTRUCTION_FAILED +LASSO_XML_ERROR_SCHEMA_INVALID_FRAGMENT +LASSO_XSI_HREF +LASSO_XSI_PREFIX +struct LassoAssertionQuery { LassoAssertionQueryPrivate* private_data } +LassoAssertionQueryRequestType +LassoCheckVersionMode +struct LassoDefederation { } +struct LassoDsKeyInfo { LassoDsKeyValue* KeyValue } +struct LassoDsKeyValue { LassoDsRsaKeyValue* RSAKeyValue } +struct LassoDsRsaKeyValue { char* Modulus, char* Exponent } +struct LassoEcp { gchar* assertionConsumerURL, LassoEcpPrivate* private_data } +LassoEncryptionMode +LassoEncryptionSymKeyType +struct LassoFederation { gchar* remote_providerID, LassoNode* local_nameIdentifier, LassoNode* remote_nameIdentifier, LassoFederationPrivate* private_data } +LassoHttpMethod +struct LassoIdentity { GHashTable* federations, gboolean is_dirty, LassoIdentityPrivate* private_data } +struct LassoLecp { LassoLibAuthnRequestEnvelope* authnRequestEnvelope, LassoLibAuthnResponseEnvelope* authnResponseEnvelope, char* assertionConsumerServiceURL } +struct LassoLibAssertion { char* InResponseTo } +struct LassoLibAuthenticationStatement { LassoLibAuthnContext* AuthnContext, char* ReauthenticateOnOrAfter, char* SessionIndex } +struct LassoLibAuthnContext { char* AuthnContextClassRef, char* AuthnContextStatementRef } +struct LassoLibAuthnRequest { GList* Extension, char* ProviderID, char* AffiliationID, char* NameIDPolicy, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolProfile, char* AssertionConsumerServiceID, LassoLibRequestAuthnContext* RequestAuthnContext, char* RelayState, LassoLibScoping* Scoping, char* consent } +struct LassoLibAuthnRequestEnvelope { GList* Extension, LassoLibAuthnRequest* AuthnRequest, char* ProviderID, char* ProviderName, char* AssertionConsumerServiceURL, LassoLibIDPList* IDPList, gboolean IsPassive } +struct LassoLibAuthnResponse { GList* Extension, char* ProviderID, char* RelayState, char* consent } +struct LassoLibAuthnResponseEnvelope { GList* Extension, LassoLibAuthnResponse* AuthnResponse, char* AssertionConsumerServiceURL } +struct LassoLibFederationTerminationNotification { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* consent, char* RelayState } +struct LassoLibIDPEntries { GList* IDPEntry } +struct LassoLibIDPEntry { char* ProviderID, char* ProviderName, char* Loc } +struct LassoLibIDPList { LassoLibIDPEntries* IDPEntries, char* GetComplete } +struct LassoLibLogoutRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* SessionIndex, char* RelayState, char* consent, char* NotOnOrAfter } +struct LassoLibLogoutResponse { } +struct LassoLibNameIdentifierMappingRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* NameIdentifier, char* TargetNamespace, char* consent } +struct LassoLibNameIdentifierMappingResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, LassoSamlNameIdentifier* NameIdentifier } +struct LassoLibRegisterNameIdentifierRequest { GList* Extension, char* ProviderID, LassoSamlNameIdentifier* IDPProvidedNameIdentifier, LassoSamlNameIdentifier* SPProvidedNameIdentifier, LassoSamlNameIdentifier* OldProvidedNameIdentifier, char* RelayState } +struct LassoLibRegisterNameIdentifierResponse { } +struct LassoLibRequestAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextStatementRef, char* AuthnContextComparison } +struct LassoLibScoping { int ProxyCount, LassoLibIDPList* IDPList } +struct LassoLibStatusResponse { GList* Extension, char* ProviderID, LassoSamlpStatus* Status, char* RelayState } +struct LassoLibSubject { LassoSamlNameIdentifier* IDPProvidedNameIdentifier } +struct LassoLogin { LassoLoginProtocolProfile protocolProfile, gchar* assertionArtifact, LassoSamlAssertion* assertion, gchar* nameIDPolicy, LassoHttpMethod http_method, LassoLoginPrivate* private_data } +LassoLoginProtocolProfile +struct LassoLogout { LassoNode* initial_request, LassoNode* initial_response, gchar* initial_remote_providerID, gint providerID_index, LassoHttpMethod initial_http_request_method, LassoLogoutPrivate* private_data } +LassoMdProtocolType +LassoMessageFormat +struct LassoMiscTextNode { char* content, char* name, char* ns_href, char* ns_prefix, gboolean text_child } +struct LassoNameIdManagement { } +struct LassoNameIdentifierMapping { gchar* targetNameIdentifier } +struct LassoNameRegistration { LassoSamlNameIdentifier* oldNameIdentifier } +struct LassoNode { } +struct LassoProfile { LassoServer* server, LassoNode* request, LassoNode* response, LassoNode* nameIdentifier, gchar* remote_providerID, gchar* msg_url, gchar* msg_body, gchar* msg_relayState, LassoIdentity* identity, LassoSession* session, LassoHttpMethod http_request_method, gint signature_status, LassoProfilePrivate* private_data } +LassoProfileSignatureHint +LassoProfileSignatureVerifyHint +LassoProtocolConformance +struct LassoProvider { gchar* ProviderID, LassoProviderRole role, char* metadata_filename, gchar* public_key, gchar* ca_cert_chain, LassoProviderPrivate* private_data } +LassoProviderRole +LassoRequestType +struct LassoSaml2Action { char* content, char* Namespace } +struct LassoSaml2Advice { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2Assertion { LassoSaml2NameID* Issuer, LassoSaml2Subject* Subject, LassoSaml2Conditions* Conditions, LassoSaml2Advice* Advice, GList* Statement, GList* AuthnStatement, GList* AuthzDecisionStatement, GList* AttributeStatement, char* Version, char* ID, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file, gboolean encryption_activated, char* encryption_public_key_str, LassoEncryptionSymKeyType encryption_sym_key_type } +LassoSaml2AssertionValidationState +struct LassoSaml2Attribute { GList* AttributeValue, char* Name, char* NameFormat, char* FriendlyName } +struct LassoSaml2AttributeStatement { GList* Attribute, GList* EncryptedAttribute } +struct LassoSaml2AttributeValue { GList* any } +struct LassoSaml2AudienceRestriction { char* Audience } +struct LassoSaml2AuthnContext { char* AuthnContextClassRef, char* AuthnContextDeclRef, char* AuthenticatingAuthority } +struct LassoSaml2AuthnStatement { LassoSaml2SubjectLocality* SubjectLocality, LassoSaml2AuthnContext* AuthnContext, char* AuthnInstant, char* SessionIndex, char* SessionNotOnOrAfter } +struct LassoSaml2AuthzDecisionStatement { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource, char* Decision } +struct LassoSaml2BaseIDAbstract { char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2ConditionAbstract { } +struct LassoSaml2Conditions { GList* Condition, GList* AudienceRestriction, GList* OneTimeUse, GList* ProxyRestriction, char* NotBefore, char* NotOnOrAfter } +struct LassoSaml2EncryptedElement { xmlNode* EncryptedData, GList* EncryptedKey, LassoNode* original_data } +struct LassoSaml2Evidence { GList* AssertionIDRef, GList* AssertionURIRef, GList* Assertion, GList* EncryptedAssertion } +struct LassoSaml2KeyInfoConfirmationData { } +struct LassoSaml2NameID { char* content, char* Format, char* SPProvidedID, char* NameQualifier, char* SPNameQualifier } +struct LassoSaml2OneTimeUse { } +struct LassoSaml2ProxyRestriction { char* Audience, char* Count } +struct LassoSaml2StatementAbstract { } +struct LassoSaml2Subject { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmation* SubjectConfirmation } +struct LassoSaml2SubjectConfirmation { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSaml2SubjectConfirmationData* SubjectConfirmationData, char* Method } +struct LassoSaml2SubjectConfirmationData { char* NotBefore, char* NotOnOrAfter, char* Recipient, char* InResponseTo, char* Address } +struct LassoSaml2SubjectLocality { char* Address, char* DNSName } +struct LassoSamlAdvice { GList* AssertionIDReference, LassoNode* Assertion } +struct LassoSamlAssertion { LassoSamlConditions* Conditions, LassoSamlAdvice* Advice, LassoSamlSubjectStatement* SubjectStatement, LassoSamlAuthenticationStatement* AuthenticationStatement, LassoSamlAttributeStatement* AttributeStatement, int MajorVersion, int MinorVersion, char* AssertionID, char* Issuer, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlAttribute { gchar* attributeName, gchar* attributeNameSpace, GList* AttributeValue } +struct LassoSamlAttributeDesignator { char* AttributeName, char* AttributeNamespace } +struct LassoSamlAttributeStatement { GList* Attribute } +struct LassoSamlAttributeValue { GList* any } +struct LassoSamlAudienceRestrictionCondition { GList* Audience } +struct LassoSamlAuthenticationStatement { LassoSamlSubjectLocality* SubjectLocality, GList* AuthorityBinding, char* AuthenticationMethod, char* AuthenticationInstant } +struct LassoSamlAuthorityBinding { char* AuthorityKind, char* Location, char* Binding } +struct LassoSamlConditionAbstract { } +struct LassoSamlConditions { GList* Condition, GList* AudienceRestrictionCondition, char* NotBefore, char* NotOnOrAfter } +struct LassoSamlNameIdentifier { char* NameQualifier, char* Format, char* content } +struct LassoSamlStatementAbstract { } +struct LassoSamlSubject { LassoSamlNameIdentifier* NameIdentifier, LassoSamlSubjectConfirmation* SubjectConfirmation, LassoSaml2EncryptedElement* EncryptedNameIdentifier } +struct LassoSamlSubjectConfirmation { GList* ConfirmationMethod, char* SubjectConfirmationData, LassoDsKeyInfo* KeyInfo } +struct LassoSamlSubjectLocality { char* IPAddress, char* DNSAddress } +struct LassoSamlSubjectStatement { } +struct LassoSamlSubjectStatementAbstract { LassoSamlSubject* Subject } +struct LassoSamlp2ArtifactResolve { char* Artifact } +struct LassoSamlp2ArtifactResponse { LassoNode* any } +struct LassoSamlp2AssertionIDRequest { char* AssertionIDRef } +struct LassoSamlp2AttributeQuery { GList* Attribute } +struct LassoSamlp2AuthnQuery { LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, char* SessionIndex } +struct LassoSamlp2AuthnRequest { LassoSaml2Subject* Subject, LassoSamlp2NameIDPolicy* NameIDPolicy, LassoSaml2Conditions* Conditions, LassoSamlp2RequestedAuthnContext* RequestedAuthnContext, LassoSamlp2Scoping* Scoping, gboolean ForceAuthn, gboolean IsPassive, char* ProtocolBinding, int AssertionConsumerServiceIndex, char* AssertionConsumerServiceURL, int AttributeConsumingServiceIndex, char* ProviderName, G_GNUC_DEPRECATED char } +struct LassoSamlp2AuthzDecisionQuery { LassoSaml2Action* Action, LassoSaml2Evidence* Evidence, char* Resource } +struct LassoSamlp2Extensions { } +struct LassoSamlp2IDPEntry { char* ProviderID, char* Name, char* Loc } +struct LassoSamlp2IDPList { LassoSamlp2IDPEntry* IDPEntry, char* GetComplete } +struct LassoSamlp2LogoutRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* SessionIndex, char* Reason, char* NotOnOrAfter, G_GNUC_DEPRECATED char } +struct LassoSamlp2LogoutResponse { G_GNUC_DEPRECATED char } +struct LassoSamlp2ManageNameIDRequest { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, char* NewID, LassoSaml2EncryptedElement* NewEncryptedID, LassoSamlp2Terminate* Terminate } +struct LassoSamlp2ManageNameIDResponse { } +struct LassoSamlp2NameIDMappingRequest { LassoSaml2BaseIDAbstract* BaseID, LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID, LassoSamlp2NameIDPolicy* NameIDPolicy } +struct LassoSamlp2NameIDMappingResponse { LassoSaml2NameID* NameID, LassoSaml2EncryptedElement* EncryptedID } +struct LassoSamlp2NameIDPolicy { char* Format, char* SPNameQualifier, gboolean AllowCreate } +struct LassoSamlp2RequestAbstract { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, char* ID, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2RequestedAuthnContext { GList* AuthnContextClassRef, GList* AuthnContextDeclRef, char* Comparison } +struct LassoSamlp2Response { GList* Assertion, GList* EncryptedAssertion } +struct LassoSamlp2Scoping { LassoSamlp2IDPList* IDPList, char* RequesterID, char* ProxyCount } +struct LassoSamlp2Status { LassoSamlp2StatusCode* StatusCode, char* StatusMessage, LassoSamlp2StatusDetail* StatusDetail } +struct LassoSamlp2StatusCode { LassoSamlp2StatusCode* StatusCode, char* Value } +struct LassoSamlp2StatusDetail { } +struct LassoSamlp2StatusResponse { LassoSaml2NameID* Issuer, LassoSamlp2Extensions* Extensions, LassoSamlp2Status* Status, char* ID, char* InResponseTo, char* Version, char* IssueInstant, char* Destination, char* Consent, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlp2SubjectQueryAbstract { LassoSaml2Subject* Subject } +struct LassoSamlp2Terminate { } +struct LassoSamlpRequest { char* AssertionArtifact } +struct LassoSamlpRequestAbstract { GList* RespondWith, char* RequestID, int MajorVersion, int MinorVersion, char* IssueInstant, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpResponse { LassoSamlpStatus* Status, GList* Assertion } +struct LassoSamlpResponseAbstract { char* ResponseID, char* InResponseTo, int MajorVersion, int MinorVersion, char* IssueInstant, char* Recipient, LassoSignatureType sign_type, LassoSignatureMethod sign_method, char* private_key_file, char* certificate_file } +struct LassoSamlpStatus { LassoSamlpStatusCode* StatusCode, char* StatusMessage } +struct LassoSamlpStatusCode { LassoSamlpStatusCode* StatusCode, char* Value } +struct LassoServer { GHashTable* providers, GHashTable* services, gchar* private_key, gchar* private_key_password, gchar* certificate, LassoSignatureMethod signature_method, LassoServerPrivate* private_data } +LassoServerLoadMetadataFlag +struct LassoSession { GHashTable* assertions, gboolean is_dirty, LassoSessionPrivate* private_data } +LassoSignatureMethod +LassoSignatureType +struct LassoSoapBody { GList* any, gchar* Id } +struct LassoSoapDetail { GList* any } +struct LassoSoapEnvelope { LassoSoapHeader* Header, LassoSoapBody* Body } +struct LassoSoapFault { gchar* faultcode, gchar* faultstring, GList* faultactor, LassoSoapDetail* Detail } +struct LassoSoapHeader { GList* Other } +lasso_error_t lasso_assertion_query_add_attribute_request ( LassoAssertionQuery* assertion_query, char* format, char* name ) +lasso_error_t lasso_assertion_query_build_request_msg ( LassoAssertionQuery* assertion_query ) +lasso_error_t lasso_assertion_query_build_response_msg ( LassoAssertionQuery* assertion_query ) +None lasso_assertion_query_destroy ( LassoAssertionQuery* assertion_query ) +LassoAssertionQueryRequestType lasso_assertion_query_get_request_type ( LassoAssertionQuery* assertion_query ) +GType lasso_assertion_query_get_type ( ) +lasso_error_t lasso_assertion_query_init_request ( LassoAssertionQuery* assertion_query, char* remote_provider_id, LassoHttpMethod http_method, LassoAssertionQueryRequestType query_request_type ) +LassoAssertionQuery* lasso_assertion_query_new ( LassoServer* server ) +lasso_error_t lasso_assertion_query_process_request_msg ( LassoAssertionQuery* assertion_query, gchar* request_msg ) +lasso_error_t lasso_assertion_query_process_response_msg ( LassoAssertionQuery* assertion_query, gchar* response_msg ) +lasso_error_t lasso_assertion_query_validate_request ( LassoAssertionQuery* assertion_query ) +char* lasso_build_unique_id ( unsigned int size ) +int lasso_check_version ( int major, int minor, int subminor, LassoCheckVersionMode mode ) +lasso_error_t lasso_defederation_build_notification_msg ( LassoDefederation* defederation ) +None lasso_defederation_destroy ( LassoDefederation* defederation ) +GType lasso_defederation_get_type ( ) +lasso_error_t lasso_defederation_init_notification ( LassoDefederation* defederation, gchar* remote_providerID, LassoHttpMethod http_method ) +LassoDefederation* lasso_defederation_new ( LassoServer* server ) +lasso_error_t lasso_defederation_process_notification_msg ( LassoDefederation* defederation, gchar* notification_msg ) +lasso_error_t lasso_defederation_validate_notification ( LassoDefederation* defederation ) +GType lasso_ds_key_info_get_type ( ) +LassoDsKeyInfo* lasso_ds_key_info_new ( ) +GType lasso_ds_key_value_get_type ( ) +LassoDsKeyValue* lasso_ds_key_value_new ( ) +GType lasso_ds_rsa_key_value_get_type ( ) +LassoDsRsaKeyValue* lasso_ds_rsa_key_value_new ( ) +None lasso_ecp_destroy ( LassoEcp* ecp ) +GType lasso_ecp_get_type ( ) +LassoEcp* lasso_ecp_new ( LassoServer* server ) +lasso_error_t lasso_ecp_process_authn_request_msg ( LassoEcp* ecp, const char* authn_request_msg ) +lasso_error_t lasso_ecp_process_response_msg ( LassoEcp* ecp, const char* response_msg ) +None lasso_federation_build_local_name_identifier ( LassoFederation* federation, const gchar* nameQualifier, const gchar* format, const gchar* content ) +None lasso_federation_destroy ( LassoFederation* federation ) +GType lasso_federation_get_type ( ) +LassoFederation* lasso_federation_new ( const gchar* remote_providerID ) +gboolean lasso_federation_verify_name_identifier ( LassoFederation* federation, LassoNode* name_identifier ) +char* lasso_get_prefix_for_dst_service_href ( const char* href ) +gchar* lasso_get_prefix_for_idwsf2_dst_service_href ( const gchar* href ) +None lasso_identity_destroy ( LassoIdentity* identity ) +gchar* lasso_identity_dump ( LassoIdentity* identity ) +LassoFederation* lasso_identity_get_federation ( LassoIdentity* identity, const char* providerID ) +GType lasso_identity_get_type ( ) +LassoIdentity* lasso_identity_new ( ) +LassoIdentity* lasso_identity_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_init ( ) +lasso_error_t lasso_lecp_build_authn_request_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_request_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_envelope_msg ( LassoLecp* lecp ) +lasso_error_t lasso_lecp_build_authn_response_msg ( LassoLecp* lecp ) +None lasso_lecp_destroy ( LassoLecp* lecp ) +GType lasso_lecp_get_type ( ) +lasso_error_t lasso_lecp_init_authn_request ( LassoLecp* lecp, const char* remote_providerID ) +LassoLecp* lasso_lecp_new ( LassoServer* server ) +lasso_error_t lasso_lecp_process_authn_request_envelope_msg ( LassoLecp* lecp, const char* request_msg ) +lasso_error_t lasso_lecp_process_authn_request_msg ( LassoLecp* lecp, const char* authn_request_msg ) +lasso_error_t lasso_lecp_process_authn_response_envelope_msg ( LassoLecp* lecp, const char* response_msg ) +GType lasso_lib_assertion_get_type ( ) +LassoLibAssertion* lasso_lib_assertion_new ( ) +LassoLibAssertion* lasso_lib_assertion_new_full ( const char* issuer, const char* requestID, const char* audience, const char* notBefore, const char* notOnOrAfter ) +GType lasso_lib_authentication_statement_get_type ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new ( ) +LassoLibAuthenticationStatement* lasso_lib_authentication_statement_new_full ( const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, LassoSamlNameIdentifier* sp_identifier, LassoSamlNameIdentifier* idp_identifier ) +GType lasso_lib_authn_context_get_type ( ) +LassoNode* lasso_lib_authn_context_new ( ) +GType lasso_lib_authn_request_envelope_get_type ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new ( ) +LassoLibAuthnRequestEnvelope* lasso_lib_authn_request_envelope_new_full ( LassoLibAuthnRequest* authnRequest, char* providerID, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_request_get_type ( ) +LassoLibAuthnRequest* lasso_lib_authn_request_new ( ) +GType lasso_lib_authn_response_envelope_get_type ( ) +LassoLibAuthnResponseEnvelope* lasso_lib_authn_response_envelope_new ( LassoLibAuthnResponse* response, char* assertionConsumerServiceURL ) +GType lasso_lib_authn_response_get_type ( ) +LassoNode* lasso_lib_authn_response_new ( char* providerID, LassoLibAuthnRequest* request ) +GType lasso_lib_federation_termination_notification_get_type ( ) +LassoNode* lasso_lib_federation_termination_notification_new ( ) +LassoNode* lasso_lib_federation_termination_notification_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_idp_entries_get_type ( ) +LassoNode* lasso_lib_idp_entries_new ( ) +GType lasso_lib_idp_entry_get_type ( ) +LassoNode* lasso_lib_idp_entry_new ( ) +GType lasso_lib_idp_list_get_type ( ) +LassoNode* lasso_lib_idp_list_new ( ) +GType lasso_lib_logout_request_get_type ( ) +LassoNode* lasso_lib_logout_request_new ( ) +LassoNode* lasso_lib_logout_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_logout_response_get_type ( ) +LassoNode* lasso_lib_logout_response_new ( ) +LassoNode* lasso_lib_logout_response_new_full ( char* providerID, const char* statusCodeValue, LassoLibLogoutRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_request_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_request_new_full ( char* providerID, LassoSamlNameIdentifier* nameIdentifier, const char* targetNamespace, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_name_identifier_mapping_response_get_type ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new ( ) +LassoNode* lasso_lib_name_identifier_mapping_response_new_full ( char* provideRID, const char* statusCodeValue, LassoLibNameIdentifierMappingRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_request_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_request_new ( ) +LassoNode* lasso_lib_register_name_identifier_request_new_full ( const char* providerID, LassoSamlNameIdentifier* idpNameIdentifier, LassoSamlNameIdentifier* spNameIdentifier, LassoSamlNameIdentifier* oldNameIdentifier, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_register_name_identifier_response_get_type ( ) +LassoNode* lasso_lib_register_name_identifier_response_new ( ) +LassoNode* lasso_lib_register_name_identifier_response_new_full ( const char* providerID, const char* statusCodeValue, LassoLibRegisterNameIdentifierRequest* request, LassoSignatureType sign_type, LassoSignatureMethod sign_method ) +GType lasso_lib_request_authn_context_get_type ( ) +LassoLibRequestAuthnContext* lasso_lib_request_authn_context_new ( ) +GType lasso_lib_scoping_get_type ( ) +LassoLibScoping* lasso_lib_scoping_new ( ) +GType lasso_lib_status_response_get_type ( ) +LassoNode* lasso_lib_status_response_new ( ) +GType lasso_lib_subject_get_type ( ) +LassoLibSubject* lasso_lib_subject_new ( ) +lasso_error_t lasso_login_accept_sso ( LassoLogin* login ) +lasso_error_t lasso_login_build_artifact_msg ( LassoLogin* login, LassoHttpMethod http_method ) +lasso_error_t lasso_login_build_assertion ( LassoLogin* login, const char* authenticationMethod, const char* authenticationInstant, const char* reauthenticateOnOrAfter, const char* notBefore, const char* notOnOrAfter ) +lasso_error_t lasso_login_build_authn_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_authn_response_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_request_msg ( LassoLogin* login ) +lasso_error_t lasso_login_build_response_msg ( LassoLogin* login, gchar* remote_providerID ) +None lasso_login_destroy ( LassoLogin* login ) +gchar* lasso_login_dump ( LassoLogin* login ) +LassoNode* lasso_login_get_assertion ( LassoLogin* login ) +GType lasso_login_get_type ( ) +lasso_error_t lasso_login_init_authn_request ( LassoLogin* login, const gchar* remote_providerID, LassoHttpMethod http_method ) +lasso_error_t lasso_login_init_idp_initiated_authn_request ( LassoLogin* login, const gchar* remote_providerID ) +lasso_error_t lasso_login_init_request ( LassoLogin* login, gchar* response_msg, LassoHttpMethod response_http_method ) +gboolean lasso_login_must_ask_for_consent ( LassoLogin* login ) +gboolean lasso_login_must_authenticate ( LassoLogin* login ) +LassoLogin* lasso_login_new ( LassoServer* server ) +LassoLogin* lasso_login_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_login_process_authn_request_msg ( LassoLogin* login, const char* authn_request_msg ) +lasso_error_t lasso_login_process_authn_response_msg ( LassoLogin* login, gchar* authn_response_msg ) +lasso_error_t lasso_login_process_paos_response_msg ( LassoLogin* login, gchar* msg ) +lasso_error_t lasso_login_process_request_msg ( LassoLogin* login, gchar* request_msg ) +lasso_error_t lasso_login_process_response_msg ( LassoLogin* login, gchar* response_msg ) +lasso_error_t lasso_login_validate_request_msg ( LassoLogin* login, gboolean authentication_result, gboolean is_consent_obtained ) +lasso_error_t lasso_logout_build_request_msg ( LassoLogout* logout ) +lasso_error_t lasso_logout_build_response_msg ( LassoLogout* logout ) +None lasso_logout_destroy ( LassoLogout* logout ) +gchar* lasso_logout_dump ( LassoLogout* logout ) +gchar* lasso_logout_get_next_providerID ( LassoLogout* logout ) +GType lasso_logout_get_type ( ) +lasso_error_t lasso_logout_init_request ( LassoLogout* logout, gchar* remote_providerID, LassoHttpMethod request_method ) +LassoLogout* lasso_logout_new ( LassoServer* server ) +LassoLogout* lasso_logout_new_from_dump ( LassoServer* server, const gchar* dump ) +lasso_error_t lasso_logout_process_request_msg ( LassoLogout* logout, gchar* request_msg ) +lasso_error_t lasso_logout_process_response_msg ( LassoLogout* logout, gchar* response_msg ) +lasso_error_t lasso_logout_reset_providerID_index ( LassoLogout* logout ) +lasso_error_t lasso_logout_validate_request ( LassoLogout* logout ) +GType lasso_misc_text_node_get_type ( ) +xmlNode* lasso_misc_text_node_get_xml_content ( LassoMiscTextNode* misc_text_node ) +LassoNode* lasso_misc_text_node_new ( ) +LassoMiscTextNode* lasso_misc_text_node_new_with_string ( const char* content ) +LassoMiscTextNode* lasso_misc_text_node_new_with_xml_node ( xmlNode* xml_node ) +None lasso_misc_text_node_set_xml_content ( LassoMiscTextNode* misc_text_node, xmlNode* node ) +lasso_error_t lasso_name_id_management_build_request_msg ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_id_management_build_response_msg ( LassoNameIdManagement* name_id_management ) +None lasso_name_id_management_destroy ( LassoNameIdManagement* name_id_management ) +char* lasso_name_id_management_dump ( LassoNameIdManagement* name_id_management ) +GType lasso_name_id_management_get_type ( ) +lasso_error_t lasso_name_id_management_init_request ( LassoNameIdManagement* name_id_management, char* remote_provider_id, char* new_name_id, LassoHttpMethod http_method ) +LassoNameIdManagement* lasso_name_id_management_new ( LassoServer* server ) +LassoNameIdManagement* lasso_name_id_management_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_id_management_process_request_msg ( LassoNameIdManagement* name_id_management, gchar* request_msg ) +lasso_error_t lasso_name_id_management_process_response_msg ( LassoNameIdManagement* name_id_management, gchar* response_msg ) +lasso_error_t lasso_name_id_management_validate_request ( LassoNameIdManagement* name_id_management ) +lasso_error_t lasso_name_identifier_mapping_build_request_msg ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_identifier_mapping_build_response_msg ( LassoNameIdentifierMapping* mapping ) +None lasso_name_identifier_mapping_destroy ( LassoNameIdentifierMapping* mapping ) +GType lasso_name_identifier_mapping_get_type ( ) +lasso_error_t lasso_name_identifier_mapping_init_request ( LassoNameIdentifierMapping* mapping, gchar* targetNamespace, gchar* remote_providerID ) +LassoNameIdentifierMapping* lasso_name_identifier_mapping_new ( LassoServer* server ) +lasso_error_t lasso_name_identifier_mapping_process_request_msg ( LassoNameIdentifierMapping* mapping, gchar* request_msg ) +lasso_error_t lasso_name_identifier_mapping_process_response_msg ( LassoNameIdentifierMapping* mapping, gchar* response_msg ) +lasso_error_t lasso_name_identifier_mapping_validate_request ( LassoNameIdentifierMapping* mapping ) +lasso_error_t lasso_name_registration_build_request_msg ( LassoNameRegistration* name_registration ) +lasso_error_t lasso_name_registration_build_response_msg ( LassoNameRegistration* name_registration ) +None lasso_name_registration_destroy ( LassoNameRegistration* name_registration ) +gchar* lasso_name_registration_dump ( LassoNameRegistration* name_registration ) +GType lasso_name_registration_get_type ( ) +lasso_error_t lasso_name_registration_init_request ( LassoNameRegistration* name_registration, char* remote_providerID, LassoHttpMethod http_method ) +LassoNameRegistration* lasso_name_registration_new ( LassoServer* server ) +LassoNameRegistration* lasso_name_registration_new_from_dump ( LassoServer* server, const char* dump ) +lasso_error_t lasso_name_registration_process_request_msg ( LassoNameRegistration* name_registration, gchar* request_msg ) +lasso_error_t lasso_name_registration_process_response_msg ( LassoNameRegistration* name_registration, gchar* response_msg ) +lasso_error_t lasso_name_registration_validate_request ( LassoNameRegistration* name_registration ) +None lasso_node_cleanup_original_xmlnodes ( LassoNode* node ) +char* lasso_node_debug ( LassoNode* node, int level ) +None lasso_node_destroy ( LassoNode* node ) +char* lasso_node_dump ( LassoNode* node ) +char* lasso_node_export_to_base64 ( LassoNode* node ) +char* lasso_node_export_to_ecp_soap_response ( LassoNode* node, const char* assertionConsumerURL ) +char* lasso_node_export_to_paos_request ( LassoNode* node, const char* issuer, const char* responseConsumerURL, const char* relay_state ) +char* lasso_node_export_to_query ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file ) +char* lasso_node_export_to_query_with_password ( LassoNode* node, LassoSignatureMethod sign_method, const char* private_key_file, const char* private_key_file_password ) +char* lasso_node_export_to_soap ( LassoNode* node ) +gchar* lasso_node_export_to_xml ( LassoNode* node ) +const char* lasso_node_get_name ( LassoNode* node ) +const char* lasso_node_get_namespace ( LassoNode* node ) +xmlNode* lasso_node_get_original_xmlnode ( LassoNode* node ) +GType lasso_node_get_type ( ) +xmlNode* lasso_node_get_xmlNode ( LassoNode* node, gboolean lasso_dump ) +LassoMessageFormat lasso_node_init_from_message ( LassoNode* node, const char* message ) +gboolean lasso_node_init_from_query ( LassoNode* node, const char* query ) +lasso_error_t lasso_node_init_from_xml ( LassoNode* node, xmlNode* xmlnode ) +LassoNode* lasso_node_new ( ) +LassoNode* lasso_node_new_from_dump ( const char* dump ) +LassoNode* lasso_node_new_from_soap ( const char* soap ) +LassoNode* lasso_node_new_from_xmlNode ( xmlNode* node ) +None lasso_node_set_custom_namespace ( LassoNode* node, const char* prefix, const char* href ) +None lasso_node_set_custom_nodename ( LassoNode* node, const char* nodename ) +None lasso_node_set_original_xmlnode ( LassoNode* node, xmlNode* xmlnode ) +char* lasso_profile_get_artifact ( LassoProfile* profile ) +char* lasso_profile_get_artifact_message ( LassoProfile* profile ) +LassoIdentity* lasso_profile_get_identity ( LassoProfile* profile ) +LassoNode* lasso_profile_get_nameIdentifier ( LassoProfile* profile ) +LassoRequestType lasso_profile_get_request_type_from_soap_msg ( const gchar* soap ) +LassoSession* lasso_profile_get_session ( LassoProfile* profile ) +LassoProfileSignatureHint lasso_profile_get_signature_hint ( LassoProfile* profile ) +lasso_error_t lasso_profile_get_signature_status ( LassoProfile* profile ) +LassoProfileSignatureVerifyHint lasso_profile_get_signature_verify_hint ( LassoProfile* profile ) +GType lasso_profile_get_type ( ) +gboolean lasso_profile_is_identity_dirty ( LassoProfile* profile ) +gboolean lasso_profile_is_liberty_query ( const gchar* query ) +gboolean lasso_profile_is_saml_query ( const gchar* query ) +gboolean lasso_profile_is_session_dirty ( LassoProfile* profile ) +None lasso_profile_set_artifact_message ( LassoProfile* profile, const char* message ) +lasso_error_t lasso_profile_set_identity_from_dump ( LassoProfile* profile, const gchar* dump ) +lasso_error_t lasso_profile_set_session_from_dump ( LassoProfile* profile, const gchar* dump ) +None lasso_profile_set_signature_hint ( LassoProfile* profile, LassoProfileSignatureHint signature_hint ) +None lasso_profile_set_signature_verify_hint ( LassoProfile* profile, LassoProfileSignatureVerifyHint signature_verify_hint ) +lasso_error_t lasso_profile_set_soap_fault_response ( LassoProfile* profile, const char* faultcode, const char* faultstring, GList* details ) +LassoProviderRole lasso_profile_sso_role_with ( LassoProfile* profile, const char* remote_provider_id ) +gboolean lasso_provider_accept_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type, LassoHttpMethod http_method, gboolean initiate_profile ) +gchar* lasso_provider_get_assertion_consumer_service_url ( LassoProvider* provider, const char* service_id ) +gchar* lasso_provider_get_base64_succinct_id ( const LassoProvider* provider ) +char* lasso_provider_get_cache_duration ( LassoProvider* provider ) +gchar* lasso_provider_get_default_name_id_format ( LassoProvider* provider ) +LassoEncryptionMode lasso_provider_get_encryption_mode ( LassoProvider* provider ) +LassoHttpMethod lasso_provider_get_first_http_method ( LassoProvider* provider, LassoProvider* remote_provider, LassoMdProtocolType protocol_type ) +GList* lasso_provider_get_idp_supported_attributes ( LassoProvider* provider ) +GList* lasso_provider_get_metadata_keys_for_role ( LassoProvider* provider, LassoProviderRole role ) +GList* lasso_provider_get_metadata_list ( LassoProvider* provider, const char* name ) +GList* lasso_provider_get_metadata_list_for_role ( const LassoProvider* provider, LassoProviderRole role, const char* name ) +gchar* lasso_provider_get_metadata_one ( LassoProvider* provider, const char* name ) +char* lasso_provider_get_metadata_one_for_role ( LassoProvider* provider, LassoProviderRole role, const char* name ) +xmlNode* lasso_provider_get_organization ( const LassoProvider* provider ) +LassoProtocolConformance lasso_provider_get_protocol_conformance ( const LassoProvider* provider ) +LassoProviderRole lasso_provider_get_roles ( LassoProvider* provider ) +const char* lasso_provider_get_sp_name_qualifier ( LassoProvider* provider ) +GType lasso_provider_get_type ( ) +char* lasso_provider_get_valid_until ( LassoProvider* provider ) +gboolean lasso_provider_has_protocol_profile ( LassoProvider* provider, LassoMdProtocolType protocol_type, const char* protocol_profile ) +gboolean lasso_provider_match_conformance ( LassoProvider* provider, LassoProvider* another_provider ) +LassoProvider* lasso_provider_new ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_buffer ( LassoProviderRole role, const char* metadata, const char* public_key, const char* ca_cert_chain ) +LassoProvider* lasso_provider_new_from_dump ( const gchar* dump ) +LassoSaml2EncryptedElement* lasso_provider_saml2_node_encrypt ( const LassoProvider* provider, LassoNode* lasso_node ) +None lasso_provider_set_encryption_mode ( LassoProvider* provider, LassoEncryptionMode encryption_mode ) +None lasso_provider_set_encryption_sym_key_type ( LassoProvider* provider, LassoEncryptionSymKeyType encryption_sym_key_type ) +lasso_error_t lasso_provider_verify_single_node_signature ( LassoProvider* provider, LassoNode* node, const char* id_attr_name ) +None lasso_register_dst_service ( const char* prefix, const char* href ) +None lasso_register_idwsf2_dst_service ( const gchar* prefix, const gchar* href ) +GType lasso_saml2_action_get_type ( ) +LassoNode* lasso_saml2_action_new ( ) +LassoNode* lasso_saml2_action_new_with_string ( char* content ) +GType lasso_saml2_advice_get_type ( ) +LassoNode* lasso_saml2_advice_new ( ) +lasso_error_t lasso_saml2_assertion_add_attribute_with_node ( LassoSaml2Assertion* assertion, const char* name, const char* nameformat, LassoNode* content ) +None lasso_saml2_assertion_add_audience_restriction ( LassoSaml2Assertion* saml2_assertion, const char* providerID ) +None lasso_saml2_assertion_add_proxy_limit ( LassoSaml2Assertion* saml2_assertion, int proxy_count, GList* proxy_audiences ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying ( LassoSaml2Assertion* saml2_assertion ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_allows_proxying_to ( LassoSaml2Assertion* saml2_assertion, const char* audience ) +lasso_error_t lasso_saml2_assertion_decrypt_subject ( LassoSaml2Assertion* assertion, LassoServer* server ) +const char* lasso_saml2_assertion_get_in_response_to ( LassoSaml2Assertion* assertion ) +LassoProvider* lasso_saml2_assertion_get_issuer_provider ( const LassoSaml2Assertion* saml2_assertion, const LassoServer* server ) +LassoSaml2SubjectConfirmationData* lasso_saml2_assertion_get_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, gboolean create ) +GType lasso_saml2_assertion_get_type ( ) +gboolean lasso_saml2_assertion_has_audience_restriction ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_has_one_time_use ( LassoSaml2Assertion* saml2_assertion ) +gboolean lasso_saml2_assertion_is_audience_restricted ( LassoSaml2Assertion* saml2_assertion, char* providerID ) +LassoNode* lasso_saml2_assertion_new ( ) +None lasso_saml2_assertion_set_basic_conditions ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, gboolean one_time_use ) +None lasso_saml2_assertion_set_one_time_use ( LassoSaml2Assertion* saml2_assertion, gboolean one_time_use ) +None lasso_saml2_assertion_set_subject_confirmation_data ( LassoSaml2Assertion* saml2_assertion, time_t tolerance, time_t length, const char* Recipient, const char* InResponseTo, const char* Address ) +None lasso_saml2_assertion_set_subject_confirmation_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +None lasso_saml2_assertion_set_subject_name_id ( LassoSaml2Assertion* saml2_assertion, LassoNode* node ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_audience ( LassoSaml2Assertion* saml2_assertion, const gchar* audience ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_conditions ( LassoSaml2Assertion* saml2_assertion, const char* relaying_party_providerID ) +LassoSaml2AssertionValidationState lasso_saml2_assertion_validate_time_checks ( LassoSaml2Assertion* saml2_assertion, unsigned int tolerance, time_t now ) +GType lasso_saml2_attribute_get_type ( ) +LassoNode* lasso_saml2_attribute_new ( ) +GType lasso_saml2_attribute_statement_get_type ( ) +LassoNode* lasso_saml2_attribute_statement_new ( ) +GType lasso_saml2_attribute_value_get_type ( ) +LassoSaml2AttributeValue* lasso_saml2_attribute_value_new ( ) +GType lasso_saml2_audience_restriction_get_type ( ) +LassoNode* lasso_saml2_audience_restriction_new ( ) +GType lasso_saml2_authn_context_get_type ( ) +LassoNode* lasso_saml2_authn_context_new ( ) +GType lasso_saml2_authn_statement_get_type ( ) +LassoNode* lasso_saml2_authn_statement_new ( ) +GType lasso_saml2_authz_decision_statement_get_type ( ) +LassoNode* lasso_saml2_authz_decision_statement_new ( ) +GType lasso_saml2_base_idabstract_get_type ( ) +LassoNode* lasso_saml2_base_idabstract_new ( ) +GType lasso_saml2_condition_abstract_get_type ( ) +LassoNode* lasso_saml2_condition_abstract_new ( ) +GType lasso_saml2_conditions_get_type ( ) +LassoNode* lasso_saml2_conditions_new ( ) +LassoSaml2EncryptedElement* lasso_saml2_encrypted_element_build_encrypted_persistent_name_id ( const char* id, const char* idpID, const LassoProvider* provider ) +GType lasso_saml2_encrypted_element_get_type ( ) +LassoNode* lasso_saml2_encrypted_element_new ( ) +lasso_error_t lasso_saml2_encrypted_element_server_decrypt ( LassoSaml2EncryptedElement* encrypted_element, LassoServer* server, LassoNode** decrypted_node ) +GType lasso_saml2_evidence_get_type ( ) +LassoNode* lasso_saml2_evidence_new ( ) +GType lasso_saml2_key_info_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_key_info_confirmation_data_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_build_persistent ( const char* id, const char* idpID, const char* providerID ) +gboolean lasso_saml2_name_id_equals ( LassoSaml2NameID* name_id, LassoSaml2NameID* other_name_id ) +GType lasso_saml2_name_id_get_type ( ) +LassoNode* lasso_saml2_name_id_new ( ) +LassoSaml2NameID* lasso_saml2_name_id_new_with_persistent_format ( const char* id, const char* idpID, const char* providerID ) +LassoNode* lasso_saml2_name_id_new_with_string ( char* content ) +GType lasso_saml2_one_time_use_get_type ( ) +LassoNode* lasso_saml2_one_time_use_new ( ) +GType lasso_saml2_proxy_restriction_get_type ( ) +LassoNode* lasso_saml2_proxy_restriction_new ( ) +GType lasso_saml2_statement_abstract_get_type ( ) +LassoNode* lasso_saml2_statement_abstract_new ( ) +GType lasso_saml2_subject_confirmation_data_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_data_new ( ) +GType lasso_saml2_subject_confirmation_get_type ( ) +LassoNode* lasso_saml2_subject_confirmation_new ( ) +GType lasso_saml2_subject_get_type ( ) +GType lasso_saml2_subject_locality_get_type ( ) +LassoNode* lasso_saml2_subject_locality_new ( ) +LassoNode* lasso_saml2_subject_new ( ) +GType lasso_saml_advice_get_type ( ) +LassoNode* lasso_saml_advice_new ( ) +GType lasso_saml_assertion_get_type ( ) +LassoSamlAssertion* lasso_saml_assertion_new ( ) +GType lasso_saml_attribute_designator_get_type ( ) +LassoNode* lasso_saml_attribute_designator_new ( ) +GType lasso_saml_attribute_get_type ( ) +LassoSamlAttribute* lasso_saml_attribute_new ( ) +GType lasso_saml_attribute_statement_get_type ( ) +LassoSamlAttributeStatement* lasso_saml_attribute_statement_new ( ) +GType lasso_saml_attribute_value_get_type ( ) +LassoSamlAttributeValue* lasso_saml_attribute_value_new ( ) +GType lasso_saml_audience_restriction_condition_get_type ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new ( ) +LassoSamlAudienceRestrictionCondition* lasso_saml_audience_restriction_condition_new_full ( const char* audience ) +GType lasso_saml_authentication_statement_get_type ( ) +LassoNode* lasso_saml_authentication_statement_new ( ) +GType lasso_saml_authority_binding_get_type ( ) +LassoNode* lasso_saml_authority_binding_new ( ) +GType lasso_saml_condition_abstract_get_type ( ) +GType lasso_saml_conditions_get_type ( ) +LassoSamlConditions* lasso_saml_conditions_new ( ) +GType lasso_saml_name_identifier_get_type ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new ( ) +LassoSamlNameIdentifier* lasso_saml_name_identifier_new_from_xmlNode ( xmlNode* xmlnode ) +GType lasso_saml_statement_abstract_get_type ( ) +GType lasso_saml_subject_confirmation_get_type ( ) +LassoSamlSubjectConfirmation* lasso_saml_subject_confirmation_new ( ) +GType lasso_saml_subject_get_type ( ) +GType lasso_saml_subject_locality_get_type ( ) +LassoNode* lasso_saml_subject_locality_new ( ) +LassoNode* lasso_saml_subject_new ( ) +GType lasso_saml_subject_statement_abstract_get_type ( ) +GType lasso_saml_subject_statement_get_type ( ) +LassoNode* lasso_saml_subject_statement_new ( ) +GType lasso_samlp2_artifact_resolve_get_type ( ) +LassoNode* lasso_samlp2_artifact_resolve_new ( ) +GType lasso_samlp2_artifact_response_get_type ( ) +LassoNode* lasso_samlp2_artifact_response_new ( ) +GType lasso_samlp2_assertion_id_request_get_type ( ) +LassoNode* lasso_samlp2_assertion_id_request_new ( ) +GType lasso_samlp2_attribute_query_get_type ( ) +LassoNode* lasso_samlp2_attribute_query_new ( ) +GType lasso_samlp2_authn_query_get_type ( ) +LassoNode* lasso_samlp2_authn_query_new ( ) +GType lasso_samlp2_authn_request_get_type ( ) +LassoNode* lasso_samlp2_authn_request_new ( ) +GType lasso_samlp2_authz_decision_query_get_type ( ) +LassoNode* lasso_samlp2_authz_decision_query_new ( ) +GType lasso_samlp2_extensions_get_type ( ) +LassoNode* lasso_samlp2_extensions_new ( ) +GType lasso_samlp2_idp_entry_get_type ( ) +LassoNode* lasso_samlp2_idp_entry_new ( ) +GType lasso_samlp2_idp_list_get_type ( ) +LassoNode* lasso_samlp2_idp_list_new ( ) +GList* lasso_samlp2_logout_request_get_session_indexes ( LassoSamlp2LogoutRequest* logout_request ) +GType lasso_samlp2_logout_request_get_type ( ) +LassoNode* lasso_samlp2_logout_request_new ( ) +None lasso_samlp2_logout_request_set_session_indexes ( LassoSamlp2LogoutRequest* logout_request, GList* session_index ) +GType lasso_samlp2_logout_response_get_type ( ) +LassoNode* lasso_samlp2_logout_response_new ( ) +GType lasso_samlp2_manage_name_id_request_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_request_new ( ) +GType lasso_samlp2_manage_name_id_response_get_type ( ) +LassoNode* lasso_samlp2_manage_name_id_response_new ( ) +GType lasso_samlp2_name_id_mapping_request_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_request_new ( ) +GType lasso_samlp2_name_id_mapping_response_get_type ( ) +LassoNode* lasso_samlp2_name_id_mapping_response_new ( ) +GType lasso_samlp2_name_id_policy_get_type ( ) +LassoNode* lasso_samlp2_name_id_policy_new ( ) +GType lasso_samlp2_request_abstract_get_type ( ) +LassoNode* lasso_samlp2_request_abstract_new ( ) +GType lasso_samlp2_requested_authn_context_get_type ( ) +LassoNode* lasso_samlp2_requested_authn_context_new ( ) +GType lasso_samlp2_response_get_type ( ) +LassoNode* lasso_samlp2_response_new ( ) +GType lasso_samlp2_scoping_get_type ( ) +LassoNode* lasso_samlp2_scoping_new ( ) +GType lasso_samlp2_status_code_get_type ( ) +LassoNode* lasso_samlp2_status_code_new ( ) +GType lasso_samlp2_status_detail_get_type ( ) +LassoNode* lasso_samlp2_status_detail_new ( ) +GType lasso_samlp2_status_get_type ( ) +LassoNode* lasso_samlp2_status_new ( ) +GType lasso_samlp2_status_response_get_type ( ) +LassoNode* lasso_samlp2_status_response_new ( ) +GType lasso_samlp2_subject_query_abstract_get_type ( ) +LassoNode* lasso_samlp2_subject_query_abstract_new ( ) +GType lasso_samlp2_terminate_get_type ( ) +LassoNode* lasso_samlp2_terminate_new ( ) +GType lasso_samlp_request_abstract_get_type ( ) +GType lasso_samlp_request_get_type ( ) +LassoNode* lasso_samlp_request_new ( ) +None lasso_samlp_response_abstract_fill ( LassoSamlpResponseAbstract* response, const char* InResponseTo, const char* Recipient ) +GType lasso_samlp_response_abstract_get_type ( ) +GType lasso_samlp_response_get_type ( ) +LassoNode* lasso_samlp_response_new ( ) +GType lasso_samlp_status_code_get_type ( ) +LassoSamlpStatusCode* lasso_samlp_status_code_new ( ) +GType lasso_samlp_status_get_type ( ) +LassoSamlpStatus* lasso_samlp_status_new ( ) +lasso_error_t lasso_server_add_provider ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +lasso_error_t lasso_server_add_provider_from_buffer ( LassoServer* server, LassoProviderRole role, const gchar* metadata, const gchar* public_key, const gchar* ca_cert_chain ) +None lasso_server_destroy ( LassoServer* server ) +gchar* lasso_server_dump ( LassoServer* server ) +LassoProvider* lasso_server_get_provider ( const LassoServer* server, const gchar* providerID ) +GType lasso_server_get_type ( ) +lasso_error_t lasso_server_load_affiliation ( LassoServer* server, const gchar* filename ) +lasso_error_t lasso_server_load_metadata ( LassoServer* server, LassoProviderRole role, const gchar* federation_file, const gchar* trusted_roots, GList* blacklisted_entity_ids, GList** loaded_entity_ids, LassoServerLoadMetadataFlag flags ) +LassoServer* lasso_server_new ( const gchar* metadata, const gchar* private_key, const gchar* private_key_password, const gchar* certificate ) +LassoServer* lasso_server_new_from_buffers ( const gchar* metadata, const gchar* private_key_content, const gchar* private_key_password, const gchar* certificate_content ) +LassoServer* lasso_server_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_server_saml2_assertion_setup_signature ( LassoServer* server, LassoSaml2Assertion* saml2_assertion ) +lasso_error_t lasso_server_set_encryption_private_key ( LassoServer* server, const gchar* filename_or_buffer ) +lasso_error_t lasso_server_set_encryption_private_key_with_password ( LassoServer* server, const gchar* filename_or_buffer, const gchar* password ) +lasso_error_t lasso_session_add_assertion ( LassoSession* session, const char* providerID, LassoNode* assertion ) +None lasso_session_destroy ( LassoSession* session ) +gchar* lasso_session_dump ( LassoSession* session ) +LassoNode* lasso_session_get_assertion ( LassoSession* session, const gchar* providerID ) +GList* lasso_session_get_assertions ( LassoSession* session, const char* provider_id ) +gchar* lasso_session_get_provider_index ( LassoSession* session, gint index ) +GType lasso_session_get_type ( ) +gboolean lasso_session_is_empty ( LassoSession* session ) +LassoSession* lasso_session_new ( ) +LassoSession* lasso_session_new_from_dump ( const gchar* dump ) +lasso_error_t lasso_session_remove_assertion ( LassoSession* session, const gchar* providerID ) +None lasso_set_flag ( char* flag ) +lasso_error_t lasso_shutdown ( ) +GType lasso_soap_body_get_type ( ) +LassoSoapBody* lasso_soap_body_new ( ) +LassoSoapBody* lasso_soap_body_new_from_message ( const gchar* message ) +GType lasso_soap_detail_get_type ( ) +LassoSoapDetail* lasso_soap_detail_new ( ) +LassoSoapDetail* lasso_soap_detail_new_from_message ( const gchar* message ) +GType lasso_soap_envelope_get_type ( ) +LassoSoapEnvelope* lasso_soap_envelope_new ( LassoSoapBody* body ) +LassoSoapEnvelope* lasso_soap_envelope_new_from_message ( const gchar* message ) +GType lasso_soap_fault_get_type ( ) +LassoSoapFault* lasso_soap_fault_new ( ) +LassoSoapFault* lasso_soap_fault_new_from_message ( const gchar* message ) +LassoSoapFault* lasso_soap_fault_new_full ( const char* faultcode, const char* faultstring ) +GType lasso_soap_header_get_type ( ) +LassoSoapHeader* lasso_soap_header_new ( ) +LassoSoapHeader* lasso_soap_header_new_from_message ( const gchar* message ) +const char* lasso_strerror ( int error_code ) diff --git a/bindings/php5/php_code.py b/bindings/php5/php_code.py index 0eab9c19..091ae982 100644 --- a/bindings/php5/php_code.py +++ b/bindings/php5/php_code.py @@ -136,6 +136,7 @@ function lassoRegisterIdWsf2DstService($prefix, $href) { def generate_constructors(self, klass): method_prefix = format_as_underscored(klass.name) + '_' for m in self.binding_data.functions: + name = m.rename or m.name if m.name == method_prefix + 'new': php_args = [] c_args = [] @@ -163,18 +164,36 @@ function lassoRegisterIdWsf2DstService($prefix, $href) { print >> self.fd, ' }' print >> self.fd, '' - if m.name == method_prefix + 'new_from_dump': - if len(m.args) == 1: - print >> self.fd, ' public static function newFromDump($dump) {' - print >> self.fd, ' return cptrToPhp(%s($dump));' % m.name + elif name.startswith(method_prefix) and m.args \ + and clean_type(unconstify(m.args[0][0])) != klass.name: + if m.rename: + php_name = m.rename else: - print >> self.fd, ' public static function newFromDump($server, $dump) {' - print >> self.fd, ' return cptrToPhp(%s($server->_cptr, $dump));' % m.name - # XXX: Else throw an exception - print >> self.fd, ' }' - print >> self.fd, '' - elif m.name == method_prefix + 'new_full': - pass + mname = m.name + mname = mname[len(method_prefix):] + if 'new' in mname and not mname.startswith('new'): + continue + php_name = format_underscore_as_camelcase(mname) + php_args = [] + c_args = [] + for arg in m.args: + arg_type, arg_name, arg_options = arg + if arg_options.get('optional'): + php_args.append('$%s = null' % arg_name) + else: + php_args.append('$%s' % arg_name) + + if self.is_object(arg_type): + c_args.append('$%s->_cptr' % arg_name) + else: + c_args.append('$%s' % arg_name) + php_args = ', '.join(php_args) + c_args = ', '.join(c_args) + print >>self.fd, ' public static function %s(%s) {' % (php_name, php_args) + print >>self.fd, ' return cptrToPhp(%s(%s));' % (m.name, c_args) + print >>self.fd, ' }' + print >>self.fd, '' + def generate_getter(self, c, m): @@ -312,12 +331,14 @@ function lassoRegisterIdWsf2DstService($prefix, $href) { php_args.append('%s = null' % arg_name) else: php_args.append(arg_name) - if arg_type in ('char*', 'const char*', 'gchar*', 'const gchar*') or \ - arg_type in ['int', 'gint', 'gboolean', 'const gboolean'] or \ - arg_type in self.binding_data.enums: + if is_xml_node(arg) or is_boolean(arg) or is_cstring(arg) or \ + is_int(arg, self.binding_data) or is_glist(arg) or \ + is_hashtable(arg) or is_time_t_pointer(arg): c_args.append(arg_name) + elif is_object(arg): + c_args.append('%s->_cptr' % arg_name) else: - c_args.append('%s._cptr' % arg_name) + raise Exception('Does not handle argument of type: %s' % ((m, arg),)) if is_out(arg): php_args.pop() php_args.append(arg_name) diff --git a/configure.ac b/configure.ac index c4e49bed..6bfa4ead 100644 --- a/configure.ac +++ b/configure.ac @@ -15,7 +15,7 @@ dnl - Second number is the number of supported API versions where API version > dnl first number. dnl - Third number is the current API version implementation version number. dnl See libtool explanations about current, age and release, later in this file. -AC_INIT([lasso], 2.3.6, lasso-devel@lists.labs.libre-entreprise.org) +AC_INIT([lasso], 2.4.0, lasso-devel@lists.labs.libre-entreprise.org) dnl Check if autoconf ver > 2.53 AC_PREREQ(2.53) AC_CONFIG_MACRO_DIR([m4]) @@ -184,7 +184,7 @@ dnl - interfaces removed -> AGE = 0 # m = a # r = r current=`expr $VERSION_MAJOR + $VERSION_MINOR` -LASSO_VERSION_INFO="12:4:9" +LASSO_VERSION_INFO="13:0:10" AC_SUBST(LASSO_VERSION_INFO) dnl Compute the minimal supported ABI version for Win32 scripts and resources files. diff --git a/lasso/key.c b/lasso/key.c index b75352b5..2f6dcecc 100644 --- a/lasso/key.c +++ b/lasso/key.c @@ -24,6 +24,7 @@ #include "key.h" #include "keyprivate.h" #include "xml/private.h" +#include "xmlsec/xmltree.h" /*****************************************************************************/ /* private methods */ @@ -172,7 +173,7 @@ lasso_key_new_for_signature_from_file(char *filename_or_buffer, * Return value:(transfer full): a newly allocated #LassoKey object */ LassoKey* -lasso_key_new_for_signature_from_memory(void *buffer, +lasso_key_new_for_signature_from_memory(const void *buffer, size_t size, char *password, LassoSignatureMethod signature_method, @@ -221,6 +222,149 @@ lasso_key_new_for_signature_from_base64_string(char *base64_string, return key; } +static xmlNode * +find_xmlnode_with_saml2_id(xmlNode *xmlnode, const char *id) +{ + xmlNode *found = NULL; + xmlNode *t; + + if (! xmlnode) + return NULL; + + if (xmlHasProp(xmlnode, BAD_CAST "ID")) { + xmlChar *value; + + value = xmlGetProp(xmlnode, BAD_CAST "ID"); + if (lasso_strisequal((char*)value, id)) { + found = xmlnode; + } + xmlFree(value); + } + if (found) { + return found; + } + t = xmlSecGetNextElementNode(xmlnode->children); + while (t) { + found = find_xmlnode_with_saml2_id(t, id); + if (found) { + return found; + } + t = xmlSecGetNextElementNode(t->next); + } + return NULL; +} + +/** + * lasso_key_saml2_xml_verify: + * @key: a #LassoKey object + * @id: the value of the ID attribute of signed node + * @document: the document containing the signed node + * + * Verify the first signature node child of the node with the given id. It follows from the profile + * of XMLDsig used by the SAML 2.0 specification. + * + * Return value: 0 if the signature validate, an error code otherwise. + */ +lasso_error_t +lasso_key_saml2_xml_verify(LassoKey *key, char *id, xmlNode *document) +{ + xmlNode *signed_node; + LassoSignatureContext signature_context; + + + signed_node = find_xmlnode_with_saml2_id(document, id); + if (! signed_node) { + return LASSO_DS_ERROR_INVALID_REFERENCE_FOR_SAML; + } + signature_context = lasso_key_get_signature_context(key); + return lasso_verify_signature(signed_node, signed_node->doc, "ID", NULL, + signature_context.signature_key, NO_OPTION, NULL); +} + +/** + * lasso_key_saml2_xml_sign: + * @key: a #LassoKey object + * @id: the value of the ID attribute of signed node + * @document: the document containing the signed node + * + * Sign the first signature node child of the node with the given id. It no signature node is found + * a new one is added at the end of the children list of the signed node. + * + * The passed document node is modified in-place. + * + * Return value: The modified xmlNode object, or NULL if the signature failed. + */ +xmlNode* +lasso_key_saml2_xml_sign(LassoKey *key, const char *id, xmlNode *document) +{ + xmlNode *signed_node; + LassoSignatureContext signature_context; + + signed_node = find_xmlnode_with_saml2_id(document, id); + if (! signed_node) { + return NULL; + } + signature_context = lasso_key_get_signature_context(key); + lasso_xmlnode_add_saml2_signature_template(signed_node, signature_context, id); + if (lasso_sign_node(signed_node, signature_context, + "ID", id) == 0) { + return document; + } else { + return NULL; + } +} + +/** + * lasso_key_query_verify: + * key: a #LassoKey object + * query: a raw HTTP query string + * + * Check if this query string contains a proper SAML2 signature for this key. + * + * Return value: 0 if a valid signature was found, an error code otherwise. + */ +lasso_error_t +lasso_key_query_verify(LassoKey *key, const char *query) +{ + LassoSignatureContext signature_context; + lasso_bad_param(KEY, key); + + signature_context = lasso_key_get_signature_context(key); + if (! lasso_validate_signature_context(signature_context)) + return LASSO_ERROR_UNDEFINED; + return lasso_saml2_query_verify_signature(query, signature_context.signature_key); +} + +/** + * lasso_key_query_verify: + * key: a #LassoKey object + * query: a raw HTTP query string + * + * Sign the given query string using the given key. + * + * Return value: the signed query string. + */ +char* +lasso_key_query_sign(LassoKey *key, const char *query) +{ + LassoSignatureContext signature_context; + + if (! LASSO_IS_KEY(key)) + return NULL; + signature_context = lasso_key_get_signature_context(key); + if (! lasso_validate_signature_context(signature_context)) + return NULL; + return lasso_query_sign((char*)query, signature_context); +} + +/** + * lasso_key_get_signature_context: + * @key: a #LassoKey object + * + * Private method to extract the signature context embedded in a LassoKey object. + * + * Return value: a #LassoSignatureContext structure value. + */ LassoSignatureContext lasso_key_get_signature_context(LassoKey *key) { if (key->private_data && key->private_data->type == LASSO_KEY_TYPE_FOR_SIGNATURE) { @@ -228,6 +372,13 @@ lasso_key_get_signature_context(LassoKey *key) { } return LASSO_SIGNATURE_CONTEXT_NONE; } + +/** + * lasso_key_get_key_type: + * @key: a #LassoKey object + * + * Return the type of key, i.e. which operation it supports. + */ LassoKeyType lasso_key_get_key_type(LassoKey *key) { lasso_return_val_if_fail(LASSO_IS_KEY(key), diff --git a/lasso/key.h b/lasso/key.h index a225b0b4..ca6241ad 100644 --- a/lasso/key.h +++ b/lasso/key.h @@ -65,7 +65,7 @@ struct _LassoKeyClass { LASSO_EXPORT GType lasso_key_get_type(); -LASSO_EXPORT LassoKey* lasso_key_new_for_signature_from_memory(void *buffer, size_t size, +LASSO_EXPORT LassoKey* lasso_key_new_for_signature_from_memory(const void *buffer, size_t size, char *password, LassoSignatureMethod signature_method, char *certificate); LASSO_EXPORT LassoKey* lasso_key_new_for_signature_from_base64_string(char *base64_string, @@ -74,6 +74,14 @@ LASSO_EXPORT LassoKey* lasso_key_new_for_signature_from_base64_string(char *base LASSO_EXPORT LassoKey* lasso_key_new_for_signature_from_file(char *filename_or_buffer, char *password, LassoSignatureMethod signature_method, char *certificate); +LASSO_EXPORT lasso_error_t lasso_key_query_verify(LassoKey* key, const char *query); + +LASSO_EXPORT char* lasso_key_query_sign(LassoKey *key, const char *query); + +LASSO_EXPORT lasso_error_t lasso_key_saml2_xml_verify(LassoKey *key, char *id, xmlNode *document); + +LASSO_EXPORT xmlNode *lasso_key_saml2_xml_sign(LassoKey *key, const char *id, xmlNode *document); + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/lasso/saml-2.0/provider.c b/lasso/saml-2.0/provider.c index baccb174..1a6ba908 100644 --- a/lasso/saml-2.0/provider.c +++ b/lasso/saml-2.0/provider.c @@ -534,7 +534,24 @@ lasso_saml20_provider_load_metadata(LassoProvider *provider, xmlNode *root_node) return TRUE; } -static gboolean has_synchronous_methods(LassoProvider *provider, LassoMdProtocolType protocol_type) +enum { + FOR_RESPONSE = 1 +}; + +/** + * has_synchronous_methods: + * @provider: a #LassoProvider object + * @protocol_type: a #LassoMdProtocolType value + * @for_response: a boolean stating whether we need the answer for receiving a response. + * + * Return whether the given @provider support a certain protocol with a synchronous binding. + * If we need to receive a response for this protocol, @for_response must be set to True. + * + * Return result: TRUE if @provider supports @protocol_type with a synchronous binding, eventually + * for receiving responses, FALSE otherwise. + */ +static gboolean has_synchronous_methods(LassoProvider *provider, LassoMdProtocolType protocol_type, + gboolean for_response) { GList *t = NULL; const char *kind = NULL; @@ -547,6 +564,11 @@ static gboolean has_synchronous_methods(LassoProvider *provider, LassoMdProtocol return LASSO_HTTP_METHOD_NONE; } + if (for_response && protocol_type == LASSO_MD_PROTOCOL_TYPE_SINGLE_SIGN_ON) + { + kind = LASSO_SAML2_METADATA_ELEMENT_ASSERTION_CONSUMER_SERVICE; + } + lasso_foreach(t, provider->private_data->endpoints) { EndpointType *endpoint_type = (EndpointType*)t->data; if (endpoint_type && lasso_strisequal(endpoint_type->kind, kind)) { @@ -581,7 +603,7 @@ lasso_saml20_provider_get_first_http_method(LassoProvider *provider, /* a synchronous method needs another synchronous method for receiving the * response on the local side */ if (http_method_kind(result) == SYNCHRONOUS - && ! has_synchronous_methods(provider, protocol_type)) + && ! has_synchronous_methods(provider, protocol_type, FOR_RESPONSE)) continue; if (result != LASSO_HTTP_METHOD_NONE) break; diff --git a/lasso/saml-2.0/saml2_helper.c b/lasso/saml-2.0/saml2_helper.c index 7d160e56..c49cbc3b 100644 --- a/lasso/saml-2.0/saml2_helper.c +++ b/lasso/saml-2.0/saml2_helper.c @@ -721,10 +721,18 @@ lasso_saml2_assertion_add_attribute_with_node(LassoSaml2Assertion *assertion, co lasso_assign_string(attribute->NameFormat, LASSO_SAML2_ATTRIBUTE_NAME_FORMAT_URI); lasso_list_add_new_gobject(attribute->AttributeValue, attribute_value); - attribute_statement = LASSO_SAML2_ATTRIBUTE_STATEMENT(lasso_saml2_attribute_statement_new()); + if (assertion->AttributeStatement + && LASSO_IS_SAML2_ATTRIBUTE_STATEMENT( + assertion->AttributeStatement->data)) { + attribute_statement = + (LassoSaml2AttributeStatement*) + assertion->AttributeStatement->data; + } else { + attribute_statement = LASSO_SAML2_ATTRIBUTE_STATEMENT(lasso_saml2_attribute_statement_new()); + lasso_list_add_new_gobject(assertion->AttributeStatement, attribute_statement); + } lasso_list_add_new_gobject(attribute_statement->Attribute, attribute); - lasso_list_add_new_gobject(assertion->AttributeStatement, attribute_statement); cleanup: return rc; } diff --git a/lasso/xml/private.h b/lasso/xml/private.h index 009596d8..629d6ca5 100644 --- a/lasso/xml/private.h +++ b/lasso/xml/private.h @@ -275,7 +275,7 @@ lasso_create_hmac_key(const xmlSecByte * buf, xmlSecSize size); lasso_error_t lasso_get_hmac_key(const xmlSecKey *key, void **buffer, size_t *size); -LassoSignatureContext lasso_make_signature_context_from_buffer(const char *buffer, size_t length, +LassoSignatureContext lasso_make_signature_context_from_buffer(const void *buffer, size_t length, const char *password, LassoSignatureMethod signature_method, const char *certificate); @@ -299,6 +299,12 @@ void set_xsi_type(xmlNode *node, const xmlChar *type_ns_prefix, const xmlChar *type_ns_href, const xmlChar *type_name); + +void lasso_xmlnode_add_saml2_signature_template(xmlNode *node, LassoSignatureContext context, + const char *id); + +gchar* lasso_xmlnode_build_deflated_query(xmlNode *xmlnode); + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/lasso/xml/tools.c b/lasso/xml/tools.c index b31e7187..36c76a05 100644 --- a/lasso/xml/tools.c +++ b/lasso/xml/tools.c @@ -1012,6 +1012,17 @@ lasso_node_build_deflated_query(LassoNode *node) { /* actually deflated and b64'ed and url-escaped */ xmlNode *xmlnode; + gchar *result; + + xmlnode = lasso_node_get_xmlNode(node, FALSE); + result = lasso_xmlnode_build_deflated_query(xmlnode); + xmlFreeNode(node); + return result; +} + +gchar* +lasso_xmlnode_build_deflated_query(xmlNode *xmlnode) +{ xmlOutputBufferPtr buf; xmlCharEncodingHandlerPtr handler = NULL; xmlChar *buffer; @@ -1021,17 +1032,12 @@ lasso_node_build_deflated_query(LassoNode *node) int rc = 0; z_stream stream; - xmlnode = lasso_node_get_xmlNode(node, FALSE); - handler = xmlFindCharEncodingHandler("utf-8"); buf = xmlAllocOutputBuffer(handler); xmlNodeDumpOutput(buf, NULL, xmlnode, 0, 0, "utf-8"); xmlOutputBufferFlush(buf); buffer = buf->conv ? buf->conv->content : buf->buffer->content; - xmlFreeNode(xmlnode); - xmlnode = NULL; - in_len = strlen((char*)buffer); ret = g_malloc(in_len * 2); /* deflating should never increase the required size but we are @@ -1079,6 +1085,35 @@ lasso_node_build_deflated_query(LassoNode *node) return rret; } +void +lasso_get_query_string_param_value(const char *qs, const char *param_key, char **value, + size_t *length) +{ + size_t key_size = strlen(param_key); + + *value = NULL; + *length = 0; + while (qs) { + if (strncmp(qs, param_key, key_size) == 0 && + qs[key_size] == '=') + { + char *end; + *value = qs[key_size+1]; + end = strchr(*value, '&'); + if (! end) { + end = strchr(*value, ';'); + } + if (end) { + *length = (ptrdiff_t)(end - *value) + } else { + *length = strlen(*value); + } + return; + } + qs = strchr(qs, '&'); + } +} + gboolean lasso_node_init_from_deflated_query_part(LassoNode *node, char *deflate_string) { @@ -2367,7 +2402,7 @@ lasso_get_hmac_key(const xmlSecKey *key, void **buffer, size_t *size) * successful, LASSO_SIGNATURE_CONTEXT_NONE otherwise. The caller must free the #xmlSecKey. */ LassoSignatureContext -lasso_make_signature_context_from_buffer(const char *buffer, size_t length, const char *password, +lasso_make_signature_context_from_buffer(const void *buffer, size_t length, const char *password, LassoSignatureMethod signature_method, const char *certificate) { LassoSignatureContext context = LASSO_SIGNATURE_CONTEXT_NONE; @@ -2466,3 +2501,76 @@ set_xsi_type(xmlNode *node, type_ns_href, type_name); } + +void +lasso_xmlnode_add_saml2_signature_template(xmlNode *node, LassoSignatureContext context, + const char *id) { + xmlSecTransformId transform_id; + xmlNode *existing_signature = NULL, *signature = NULL, *reference, *key_info; + char *uri; + + if (! lasso_validate_signature_context(context) || ! node) + return; + + switch (context.signature_method) { + case LASSO_SIGNATURE_METHOD_RSA_SHA1: + transform_id = xmlSecTransformRsaSha1Id; + break; + case LASSO_SIGNATURE_METHOD_DSA_SHA1: + transform_id = xmlSecTransformDsaSha1Id; + break; + case LASSO_SIGNATURE_METHOD_HMAC_SHA1: + transform_id = xmlSecTransformHmacSha1Id; + break; + default: + g_assert_not_reached(); + } + existing_signature = xmlSecFindChild(node, xmlSecNodeSignature, xmlSecDSigNs); + signature = xmlSecTmplSignatureCreate(NULL, + xmlSecTransformExclC14NId, + transform_id, NULL); + if (existing_signature) { + xmlSecReplaceNode(existing_signature, signature); + } else { + xmlAddChild(node, signature); + } + + /* Normally the signature is son of the signed node, which holds an Id attribute, but in + * other cases, set snippet->offset to 0 and use xmlSecTmpSignatureAddReference from another + * node get_xmlNode virtual method to add the needed reference. + */ + if (id) { + uri = g_strdup_printf("#%s", id); + reference = xmlSecTmplSignatureAddReference(signature, + xmlSecTransformSha1Id, NULL, (xmlChar*)uri, NULL); + lasso_release(uri); + } + + /* add enveloped transform */ + xmlSecTmplReferenceAddTransform(reference, xmlSecTransformEnvelopedId); + /* add exclusive C14N transform */ + xmlSecTmplReferenceAddTransform(reference, xmlSecTransformExclC14NId); + /* if the key is the public part of an asymetric key, add its certificate or the key itself */ + switch (context.signature_method) { + case LASSO_SIGNATURE_METHOD_RSA_SHA1: + case LASSO_SIGNATURE_METHOD_DSA_SHA1: + /* asymetric cryptography methods */ + key_info = xmlSecTmplSignatureEnsureKeyInfo(signature, NULL); + if (xmlSecKeyGetData(context.signature_key, xmlSecOpenSSLKeyDataX509Id)) { + /* add */ + xmlSecTmplKeyInfoAddX509Data(key_info); + } else { + xmlSecTmplKeyInfoAddKeyValue(key_info); + } + break; + case LASSO_SIGNATURE_METHOD_HMAC_SHA1: + if (context.signature_key->name) { + key_info = xmlSecTmplSignatureEnsureKeyInfo(signature, NULL); + xmlSecTmplKeyInfoAddKeyName(key_info, NULL); + + } + break; + default: + g_assert_not_reached(); + } +} diff --git a/lasso/xml/xml.c b/lasso/xml/xml.c index fc7100e0..f3ed6e3a 100644 --- a/lasso/xml/xml.c +++ b/lasso/xml/xml.c @@ -2810,11 +2810,7 @@ lasso_node_add_signature_template(LassoNode *node, xmlNode *xmlnode, LassoNodeClass *klass = NULL; LassoNodeClassData *node_data = NULL; LassoSignatureContext context; - xmlSecTransformId transform_id; - xmlNode *signature = NULL, *reference, *key_info; - char *uri; - char *id; - + char *id = NULL; node_data = lasso_legacy_get_signature_node_data(node, &klass); if (! node_data) @@ -2828,66 +2824,11 @@ lasso_node_add_signature_template(LassoNode *node, xmlNode *xmlnode, if (lasso_legacy_extract_and_copy_signature_parameters(node, node_data)) context = lasso_node_get_signature(node); - if (! lasso_validate_signature_context(context)) - return; - - switch (context.signature_method) { - case LASSO_SIGNATURE_METHOD_RSA_SHA1: - transform_id = xmlSecTransformRsaSha1Id; - break; - case LASSO_SIGNATURE_METHOD_DSA_SHA1: - transform_id = xmlSecTransformDsaSha1Id; - break; - case LASSO_SIGNATURE_METHOD_HMAC_SHA1: - transform_id = xmlSecTransformHmacSha1Id; - break; - default: - g_assert_not_reached(); - } - signature = xmlSecTmplSignatureCreate(NULL, - xmlSecTransformExclC14NId, - transform_id, NULL); - xmlAddChild(xmlnode, signature); - - /* Normally the signature is son of the signed node, which holds an Id attribute, but in - * other cases, set snippet->offset to 0 and use xmlSecTmpSignatureAddReference from another - * node get_xmlNode virtual method to add the needed reference. - */ if (snippet_signature->offset) { id = SNIPPET_STRUCT_MEMBER(char *, node, G_TYPE_FROM_CLASS(klass), snippet_signature); - uri = g_strdup_printf("#%s", id); - reference = xmlSecTmplSignatureAddReference(signature, - xmlSecTransformSha1Id, NULL, (xmlChar*)uri, NULL); - lasso_release(uri); } - /* add enveloped transform */ - xmlSecTmplReferenceAddTransform(reference, xmlSecTransformEnvelopedId); - /* add exclusive C14N transform */ - xmlSecTmplReferenceAddTransform(reference, xmlSecTransformExclC14NId); - /* if the key is the public part of a symetric key, add its certificate or the key itself */ - switch (context.signature_method) { - case LASSO_SIGNATURE_METHOD_RSA_SHA1: - case LASSO_SIGNATURE_METHOD_DSA_SHA1: - /* symetric cryptography methods */ - key_info = xmlSecTmplSignatureEnsureKeyInfo(signature, NULL); - if (xmlSecKeyGetData(context.signature_key, xmlSecOpenSSLKeyDataX509Id)) { - /* add */ - xmlSecTmplKeyInfoAddX509Data(key_info); - } else { - xmlSecTmplKeyInfoAddKeyValue(key_info); - } - break; - case LASSO_SIGNATURE_METHOD_HMAC_SHA1: - if (context.signature_key->name) { - key_info = xmlSecTmplSignatureEnsureKeyInfo(signature, NULL); - xmlSecTmplKeyInfoAddKeyName(key_info, NULL); - - } - break; - default: - g_assert_not_reached(); - } + lasso_xmlnode_add_saml2_signature_template(xmlnode, context, id); } static struct XmlSnippet* @@ -3475,3 +3416,81 @@ lasso_node_get_namespace(LassoNode *node) return (const char*)klass->node_data->ns->href; return NULL; } + + +/** + * lasso_node_export_to_saml2_query: + * @node: the #LassoNode object to pass as a query + * @param_name: the key value for the query string parameter + * @url:(allow-none): an optional URL to prepend to the query string + * @key:(allow-none): a #LassoKey object + * + * Export a node as signed query string, the node must support serialization as a query. + * + * Return value: an HTTP URL or query string if successful, NULL otherwise. + */ +char* +lasso_node_export_to_saml2_query(LassoNode *node, const char *param_name, const char *url, + LassoKey *key) +{ + char *value = NULL, *query = NULL, *signed_query = NULL, *result = NULL; + xmlChar *encoded_param = NULL; + + value = lasso_node_build_deflated_query(xmlnode); + if (! value) + goto cleanup; + encoded_param = xmlURIEscapeStr(BAD_CAST param_name, NULL); + if (! encoded_param) + goto cleanup; + query = g_strdup_printf("%s=%s", encoded_param, value); + if (! query) + goto cleanup; + if (LASSO_IS_KEY(key)) { + signed_query = lasso_key_query_sign(key, query); + } else { + lasso_transfer_string(signed_query, query); + } + if (! signed_query) + goto cleanup; + if (url) { + result = lasso_concat_url_query(url, signed_query); + } else { + lasso_transfer_string(result, signed_query); + } + +cleanup: + lasso_release_string(value); + lasso_release_xml_string(encoded_param); + lasso_release_string(query); + lasso_release_string(signed_query); + return result; +} + +/** + * lasso_node_new_from_saml2_query: + * @url_or_qs: an URL containing a query string or a query string only + * @param_name: the key value for the query string parameter to extract as a #LassoNode. + * @key:(allow-none): a #LassoKey object + * + * Verify the signature on a SAML-2 encoded query string and return the encoded node. + * + * Return value: a newly build #LassoNode if successful, NULL otherwise. + */ +LassoNode* +lasso_node_new_from_saml2_query(const char *url_or_qs, const char *param_name, LassoKey *key) +{ + char *needle = NULL; + LassoNode *result = NULL; + + if (! url_or_qs || ! param_name) + return NULL; + needle = strchr(url_or_qs, '?'); + if (needle) { + url_or_qs = (const char*)(needle+1); + } + if (key) { + goto_cleanup_if_fail(lasso_key_query_verify(key, url_or_qs) == 0); + } +cleanup: + return result; +} diff --git a/lasso/xml/xml.h b/lasso/xml/xml.h index 5407ed5a..5b2ac4c8 100644 --- a/lasso/xml/xml.h +++ b/lasso/xml/xml.h @@ -194,6 +194,11 @@ LASSO_EXPORT gchar* lasso_get_prefix_for_idwsf2_dst_service_href(const gchar *hr LASSO_EXPORT char* lasso_node_debug(LassoNode *node, int level); +typedef struct _LassoKey LassoKey; + +LASSO_EXPORT char* lasso_node_export_to_saml2_query(LassoNode *node, const char *param_name, const + char *url, LassoKey *key); + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/tests/basic_tests.c b/tests/basic_tests.c index 4e3f77b1..78c70d7b 100644 --- a/tests/basic_tests.c +++ b/tests/basic_tests.c @@ -2057,13 +2057,11 @@ START_TEST(test15_ds_key_info) list = (GList){ .data = ds_key_info, .next = NULL, .prev = NULL }; lasso_saml2_key_info_confirmation_data_type_set_key_info(kicdt, &list); dump = lasso_node_debug((LassoNode*)sc, 10); - printf("1 %s\n", dump); lasso_release_gobject(sc); lasso_release_gobject(ds_key_info); node = lasso_node_new_from_dump(dump); lasso_release_string(dump); dump = lasso_node_debug(node, 10); - printf("2 %s\n", dump); lasso_release_string(dump); } END_TEST diff --git a/tests/random_tests.c b/tests/random_tests.c index b70c6082..df3dde34 100644 --- a/tests/random_tests.c +++ b/tests/random_tests.c @@ -33,6 +33,7 @@ #include "../lasso/xml/saml_name_identifier.h" #include "../lasso/xml/samlp_response.h" #include "../lasso/utils.h" +#include "../lasso/key.h" Suite* random_suite(); @@ -328,6 +329,105 @@ LlTxKnCrWAXftSm1rNtewTsF\n\ } END_TEST + +START_TEST(test08_lasso_key) +{ + /* normal query as produces by Lasso */ + const char query1[] = "SAMLRequest=fZHNasMwEIRfxeieWrYTtQjb4DgJBNqSNqWHXopw1kQgS6523Z%2B3r%2BxQSKDkOppvd2aVo%2BpML6uBjvYZPgZAir47Y1FODwUbvJVOoUZpVQcoqZH76uFepjdc9t6Ra5xhZ8h1QiGCJ%2B0si7argr0vxTLJ1guRilpU8%2FWtyKpNnaXrukoF32SCRa%2FgMfgLFvAAIQ6wtUjKUpB4wmc8nSX8hXOZ3Ml0%2FsaijfMNTIUK1iqDMGK7sFl%2Fwp9S5mNWOY3z5ZGol3GM%2FSLugNRBkcrjc0N%2ButJj6LNd7ZzRzc%2B4plN0ve6o6MOsnayyH6sggSUW7XfjsKdBGd1q8AX7JwOLKmPcV%2B1BUUhOfgAWl6dkl19W%2FgI%3D&RelayState=fake%5B%5D&SigAlg=http%3A%2F%2Fwww.w3.org%2F2000%2F09%2Fxmldsig%23rsa-sha1&Signature=wDxMSEPKhK%2FuU06cmL50oVx%2B7eP5%2FQirShQE%2BLv9pT3CrVwb6WBV1Tp9XS2VVJ2odLHogdA%2FE1XDW7BIRKYgkN8bXVlC2GybSYBhyn8bwAuyHs%2BnMW48LF%2FE5vFiZxbw8tMWUAktdvDuaXoZLhubX7UgV%2B%2BdRyjhckolpXTC9xuJdoHJUDF0vzzNm8xZs6LR7tjWUoz5CcjMJA3LVfWmpE5UjCyRmGbi9knGWHdY75CFtArD%2BNSkGeNx9xySrUlik6e57Zlodv4V9WBdeopAWskO58BA27GqTmnSLooeo%2FrtLxc1NZeuau11YxNzwl%2FvN8%2FQ5IsR3Xic8X1TaCCtwg%3D%3D"; + /* SAMLRequest field was moved in the middle, Signature to the beginning and all & were + * changed to ; */ + const char query2[] = "Signature=wDxMSEPKhK%2FuU06cmL50oVx%2B7eP5%2FQirShQE%2BLv9pT3CrVwb6WBV1Tp9XS2VVJ2odLHogdA%2FE1XDW7BIRKYgkN8bXVlC2GybSYBhyn8bwAuyHs%2BnMW48LF%2FE5vFiZxbw8tMWUAktdvDuaXoZLhubX7UgV%2B%2BdRyjhckolpXTC9xuJdoHJUDF0vzzNm8xZs6LR7tjWUoz5CcjMJA3LVfWmpE5UjCyRmGbi9knGWHdY75CFtArD%2BNSkGeNx9xySrUlik6e57Zlodv4V9WBdeopAWskO58BA27GqTmnSLooeo%2FrtLxc1NZeuau11YxNzwl%2FvN8%2FQ5IsR3Xic8X1TaCCtwg%3D%3D;RelayState=fake%5B%5D;SAMLRequest=fZHNasMwEIRfxeieWrYTtQjb4DgJBNqSNqWHXopw1kQgS6523Z%2B3r%2BxQSKDkOppvd2aVo%2BpML6uBjvYZPgZAir47Y1FODwUbvJVOoUZpVQcoqZH76uFepjdc9t6Ra5xhZ8h1QiGCJ%2B0si7argr0vxTLJ1guRilpU8%2FWtyKpNnaXrukoF32SCRa%2FgMfgLFvAAIQ6wtUjKUpB4wmc8nSX8hXOZ3Ml0%2FsaijfMNTIUK1iqDMGK7sFl%2Fwp9S5mNWOY3z5ZGol3GM%2FSLugNRBkcrjc0N%2ButJj6LNd7ZzRzc%2B4plN0ve6o6MOsnayyH6sggSUW7XfjsKdBGd1q8AX7JwOLKmPcV%2B1BUUhOfgAWl6dkl19W%2FgI%3D;SigAlg=http%3A%2F%2Fwww.w3.org%2F2000%2F09%2Fxmldsig%23rsa-sha1"; + const char query3[] = "RelayState=fake%5B%5D&SAMLRequest=fZHNasMwEIRfxeieWrYTtQjb4DgJBNqSNqWHXopw1kQgS6523Z%2B3r%2BxQSKDkOppvd2aVo%2BpML6uBjvYZPgZAir47Y1FODwUbvJVOoUZpVQcoqZH76uFepjdc9t6Ra5xhZ8h1QiGCJ%2B0si7argr0vxTLJ1guRilpU8%2FWtyKpNnaXrukoF32SCRa%2FgMfgLFvAAIQ6wtUjKUpB4wmc8nSX8hXOZ3Ml0%2FsaijfMNTIUK1iqDMGK7sFl%2Fwp9S5mNWOY3z5ZGol3GM%2FSLugNRBkcrjc0N%2ButJj6LNd7ZzRzc%2B4plN0ve6o6MOsnayyH6sggSUW7XfjsKdBGd1q8AX7JwOLKmPcV%2B1BUUhOfgAWl6dkl19W%2FgI%3D&SigAlg=http%3A%2F%2Fwww.w3.org%2F2000%2F09%2Fxmldsig%23rsa-sha1&Signature=wDxMSEPKhK%2FuU06cmL50oVx%2B7eP5%2FQirShQE%2BLv9pT3CrVwb6WBV1Tp9XS2VVJ2odLHogdA%2FE1XDW7BIRKYgkN8bXVlC2GybSYBhyn8bwAuyHs%2BnMW48LF%2FE5vFiZxbw8tMWUAktdvDuaXoZLhubX7UgV%2B%2BdRyjhckolpXTC9xuJdoHJUDF0vzzNm8xZs6LR7tjWUoz5CcjMJA3LVfWmpE5UjCyRmGbi9knGWHdY75CFtArD%2BNSkGeNx9xySrUlik6e57Zlodv4V9WBdeopAWskO58BA27GqTmnSLooeo%2FrtLxc1NZeuau11YxNzwl%2FvN8%2FQ5IsR3Xic8X1TacCtwg%3D%3D"; + /* sp5-saml2 key */ + const char pkey[] = "-----BEGIN CERTIFICATE-----\n\ +MIIDnjCCAoagAwIBAgIBATANBgkqhkiG9w0BAQUFADBUMQswCQYDVQQGEwJGUjEP\n\ +MA0GA1UECBMGRnJhbmNlMQ4wDAYDVQQHEwVQYXJpczETMBEGA1UEChMKRW50cm91\n\ +dmVydDEPMA0GA1UEAxMGRGFtaWVuMB4XDTA2MTAyNzA5MDc1NFoXDTExMTAyNjA5\n\ +MDc1NFowVDELMAkGA1UEBhMCRlIxDzANBgNVBAgTBkZyYW5jZTEOMAwGA1UEBxMF\n\ +UGFyaXMxEzARBgNVBAoTCkVudHJvdXZlcnQxDzANBgNVBAMTBkRhbWllbjCCASIw\n\ +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM06Hx6VgHYR9wUf/tZVVTRkVWNq\n\ +h9x+PvHA2qH4OYMuqGs4Af6lU2YsZvnrmRdcFWv0+UkdAgXhReCWAZgtB1pd/W9m\n\ +6qDRldCCyysow6xPPKRz/pOTwRXm/fM0QGPeXzwzj34BXOIOuFu+n764vKn18d+u\n\ +uVAEzk1576pxTp4pQPzJfdNLrLeQ8vyCshoFU+MYJtp1UA+h2JoO0Y8oGvywbUxH\n\ +ioHN5PvnzObfAM4XaDQohmfxM9Uc7Wp4xKAc1nUq5hwBrHpjFMRSz6UCfMoJSGIi\n\ ++3xJMkNCjL0XEw5NKVc5jRKkzSkN5j8KTM/k1jPPsDHPRYzbWWhnNtd6JlkCAwEA\n\ +AaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5lcmF0\n\ +ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFP2WWMDShux3iF74+SoO1xf6qhqaMB8G\n\ +A1UdIwQYMBaAFGjl6TRXbQDHzSlZu+e8VeBaZMB5MA0GCSqGSIb3DQEBBQUAA4IB\n\ +AQAZ/imK7UMognXbs5RfSB8cMW6iNAI+JZqe9XWjvtmLfIIPbHM96o953SiFvrvQ\n\ +BZjGmmPMK3UH29cjzDx1R/RQaYTyMrHyTePLh3BMd5mpJ/9eeJCSxPzE2ECqWRUa\n\ +pkjukecFXqmRItwgTxSIUE9QkpzvuQRb268PwmgroE0mwtiREADnvTFkLkdiEMew\n\ +fiYxZfJJLPBqwlkw/7f1SyzXoPXnz5QbNwDmrHelga6rKSprYKb3pueqaIe8j/AP\n\ +NC1/bzp8cGOcJ88BD5+Ny6qgPVCrMLE5twQumJ12V3SvjGNtzFBvg2c/9S5OmVqR\n\ +LlTxKnCrWAXftSm1rNtewTsF\n\ +-----END CERTIFICATE-----"; + LassoKey *key = lasso_key_new_for_signature_from_memory(pkey, strlen(pkey), NULL, + LASSO_SIGNATURE_METHOD_RSA_SHA1, NULL); + LassoKey *key2 = lasso_key_new_for_signature_from_file( + TESTSDATADIR "/sp5-saml2/private-key.pem", NULL, + LASSO_SIGNATURE_METHOD_RSA_SHA1, NULL); + char *message = "http://sp5/metadata\n\ +\n\ +\n\ +\n\ +\n\ +\n\ +\n\ +\n\ +\n\ +\n\ +tMncKjklMJaJLbmB7bARmX14Fdg=\n\ +\n\ +\n\ +VjAHErXE8rz5yQ/t9Ubws11E59PsU/tXPtL6eCMAVLQxV4Bv0dwyYkeHtge1DXDT\n\ +usTy1c17+iuYCVqD3Db51+LMVsHchj0j44fhu/PXNQTmgiT2AuVfH97YhiBWykAs\n\ +LwT8MiE9vNGiHQwsWVjhdzooVmU0M80m0Ij2DFMcYiKzmuMhE4M65qUO4tygQLiL\n\ +YB5oPe0VYKEBJLfaTvuijLBTi4ecx6aU+HptAvuEOcCbcJZtGyv7jr2yuEDSq72S\n\ +0hwOV0CIsQoSf/vL7R9RzTs2bpgYVGqgerhpWsz6dqo7YX0NSj9pMbXZiOyX/YzS\n\ +uP3QSjow05NiPhy8ywKW8A==\n\ +\n\ +\n\ +\n\ +\n\ +zTofHpWAdhH3BR/+1lVVNGRVY2qH3H4+8cDaofg5gy6oazgB/qVTZixm+euZF1wV\n\ +a/T5SR0CBeFF4JYBmC0HWl39b2bqoNGV0ILLKyjDrE88pHP+k5PBFeb98zRAY95f\n\ +PDOPfgFc4g64W76fvri8qfXx3665UATOTXnvqnFOnilA/Ml900ust5Dy/IKyGgVT\n\ +4xgm2nVQD6HYmg7Rjyga/LBtTEeKgc3k++fM5t8AzhdoNCiGZ/Ez1RztanjEoBzW\n\ +dSrmHAGsemMUxFLPpQJ8yglIYiL7fEkyQ0KMvRcTDk0pVzmNEqTNKQ3mPwpMz+TW\n\ +M8+wMc9FjNtZaGc213omWQ==\n\ +\n\ +\n\ +AQAB\n\ +\n\ +\n\ +\n\ +\n\ +"; + xmlDoc *doc; + + doc = xmlParseDoc(BAD_CAST message); + fail_unless(key != NULL, "Cannot load public key"); + fail_unless(lasso_key_query_verify(key, query1) == 0, "Signature was not validated"); + /* test reordering and semi-colon separator support */ + fail_unless(lasso_key_query_verify(key, query2) == 0, "Disordered signature was not validated"); + fail_unless(lasso_key_query_verify(key, query3) != 0, "Altered signature was validated"); + fail_unless(lasso_key_saml2_xml_verify(key, + "_E3F8E9116EE08F0E2607CF9789649BB4", xmlDocGetRootElement(doc)) == 0, + "XML Signature is not validated"); + g_object_unref(key); + fail_unless(key2 != NULL, "Cannot load public key2"); + fail_unless(lasso_key_query_verify(key2, query1) == 0, "Signature was not validated"); + /* test reordering and semi-colon separator support */ + fail_unless(lasso_key_query_verify(key2, query2) == 0, "Disordered signature was not validated"); + fail_unless(lasso_key_query_verify(key2, query3) != 0, "Altered signature was validated"); + fail_unless(lasso_key_saml2_xml_verify(key2, + "_E3F8E9116EE08F0E2607CF9789649BB4", xmlDocGetRootElement(doc)) == 0, + "XML Signature is not validated"); + g_object_unref(key2); + lasso_release_doc(doc); +} +END_TEST + Suite* random_suite() { @@ -335,6 +435,7 @@ random_suite() TCase *tc_providers = tcase_create("Provider stuffs"); TCase *tc_servers = tcase_create("Server stuffs"); TCase *tc_node = tcase_create("Node stuff"); + TCase *tc_keys = tcase_create("Lasso keys"); suite_add_tcase(s, tc_providers); tcase_add_test(tc_providers, test01_provider_new); @@ -351,6 +452,9 @@ random_suite() tcase_add_test(tc_node, test06_lib_statuscode); tcase_add_test(tc_node, test07_saml2_query_verify_signature); + suite_add_tcase(s, tc_keys); + tcase_add_test(tc_keys, test08_lasso_key); + return s; }