Commit Graph

25 Commits

Author SHA1 Message Date
Benjamin Dauvergne c07cd3898c SAML 2.0&ID-FF 1.2: simplify and complete metadata loading for multi-role support 2010-03-27 16:52:04 +00:00
Benjamin Dauvergne 688700f5b3 Doc: add all missing methods to documentation section file
* add missing LASSO_EXPORT too for functions already present in the
   documentation, but not exported previously.
2010-03-27 16:51:57 +00:00
Benjamin Dauvergne d5994b2bae Add signature_verify_hint accessor methods to LassoProfile
* lasso/id-ff/profile.{c,h}:
   add a LassoProfileSignatureVerifyHint enumeration and two accessor
   methods:
    - lasso_profile_get_signature_verify_hint
    - lasso_profile_set_signature_verify_hint
 * lasso/id-ff/profileprivate.h:
   add private field signature_verify_hint.
2010-03-27 16:51:34 +00:00
Benjamin Dauvergne 8598c1327a Core: add a level argument to lasso_xmlnode_to_string and _lasso_node_export_to_xml 2010-03-02 11:57:29 +00:00
Benjamin Dauvergne 887da70933 SAML 2.0: add more accessors for Conditions
* lasso/saml-2.0/saml2_helper.{c,h}:
   distribute code from lasso_saml2_assertion_validate_conditions to
   lasso_saml2_assertion_validate_time_checks and
   lasso_saml2_assertion_validate_audience.
   add lasso_saml2_assertion_allows_proxying and
   lasso_saml2_assertion_allows_proxying_to, to respectively check for
   proxying of the current assertion, and for proxying to a specific
   provider (you must call both of them to test completely the proxying
   status of an assertion).
 * docs/reference/lasso/lasso-sections.txt:
   reference new functions into documentation.
2010-02-22 13:30:48 +00:00
Benjamin Dauvergne c51e61a5ed Documentation: add example to LassoLogout, fix bad markup in id-wsf-2.0/profile.c 2010-02-17 16:08:35 +00:00
Benjamin Dauvergne 2224370d82 ID-WSF 2.0 Documentation: update lasso-sections.txt with LassoIdWsf2Profile methods 2010-02-17 10:14:34 +00:00
Benjamin Dauvergne e48619174b Documentation: fix typos in saml2_strings.h documentation, add new string symbols to lasso-sections.txt 2010-02-10 17:07:05 +00:00
Benjamin Dauvergne c74224c5c9 Propagate change of name for LASSO_PP_ defines 2010-02-10 00:33:40 +00:00
Benjamin Dauvergne 7385277ceb ID-WSF: remove useless new_from_message methods 2010-02-01 19:50:06 +00:00
Benjamin Dauvergne 1e581e05b7 ID-WSF 1.0 & 2.0: complete lasso-sections.txt, add internal API to access SOAP headers, complete WS-Addressing support
* docs/reference/lasso/lasso-sections.txt: complete documentation of
   LassoSoapEnvelope and LassoSoapFault with ID-WSF additions.

 * lasso/id-wsf-2.0/profile.c lasso/id-wsf-2.0/soap_binding.c
   lasso/id-wsf-2.0/soap_binding.h:
   add internal function _get_node and _get_header to simplify
   implementation of accessors for headers.
   change signature of lasso_soap_envelope_get_message_id and add new
   function lasso_soap_envelope_get_relates_to.
   update call points.
   add a message id when building a SOAP message.

 * lasso/xml/idwsf_strings.h:
   add element name for MessageID and RelatesTo WS-Addressing elements.

 * lasso/id-wsf/authentication.c lasso/id-wsf/data_service.c
   lasso/id-wsf/discovery.c lasso/id-wsf/wsf_profile.c
   lasso/id-wsf-2.0/saml2_login.c lasso/xml/disco_description.c:
   fix path name of header lasso/id-wsf/wsf_utils.h. make all internal
   include path relatives.
2010-01-26 20:59:26 +00:00
Benjamin Dauvergne 54ab7a0969 Export more assertion access API for LassoSession
* lasso/id-ff/session.c lasso/id-ff/session.h
   lasso/id-ff/sessionprivate.h:
   export lasso_session_get_assertion(), lasso_session_add_assertion()
   and lasso_session_remove_assertion().
   remove them from private header.
 * docs/reference/lasso/lasso-sections.txt:
   update documentation
2010-01-25 12:46:56 +00:00
Benjamin Dauvergne c13c02c83f WS: complete support for wsse:UsernameToken
* docs/reference/lasso/lasso-sections.txt:
   add new functions and change type name in documentation.
 * lasso/errors.h lasso/errors.c:
   add an error to report password verification failure
 * lasso/xml/ws/wsse_username_token.h
   lasso/xml/ws/wsse_username_token.c:
   update support for wsse:UsernameToken up to version 1.1, implement
   digest and derived keys computations.
 * lasso/xml/idwsf_strings.h:
   add strings for Username WS-Security Token profile
2010-01-19 11:01:01 +00:00
Benjamin Dauvergne 0279087029 Documentation: distribute stylesheet, fix documentation comments, compelte lasso-sections.txt 2010-01-18 10:03:54 +00:00
Benjamin Dauvergne 127f60b18c Documentation: update lasso-sections.txt 2010-01-15 09:11:43 +00:00
Benjamin Dauvergne 014e6c9194 Documentation: add lasso_profile_set/get_signature_hint to lasso-sections.txt 2010-01-14 16:18:48 +00:00
Benjamin Dauvergne bfb8483823 ID-WSF 2.0: in profile.{c,h}, discovery.{c,h}, data_service.{c,h}, overhaul all profiles.
* lasso/id-wsf-2.0/profile.c lasso/id-wsf-2.0/profile.h:
   - lasso_idwsf2_profile_get_name_identifier returns the NameID found
     in an assertion used as a WS-Security token when security mechanism
     Bearer or SAML are used.
   - complete the function lasso_id_wsf2_profile_build_soap_envelope
     with construction of the Sender element which is used to transmit
     the providerID of the message sender by the SOAP binding ID-WSF 2.0
     specification.
   - remove useless instance_init function in profile object
   - reset some profile fields in process_soap_request_msg (response,
     body, nameIdentifier).  use
     lasso_saml20_profile_name_identifier_decryption for handling NameID
     from WS-Security mechanism assertion.
   - add private_data
   - change signature of lasso_idwsf2_profile_init_soap_request to use
     and EPR and a security mechanism specifier when building the SOAP
     request.
   - change signature of lasso_idwsf2_profile_process_soap_request to
     verify security_mech_id of received messages.
 * docs/reference/lasso/lasso-sections.txt:
   add the function to the documentation.

 * lasso/id-wsf-2.0/discovery.{c,h}:
   - use utils.h macros instead of g_return_val_if_fail because it
     removes useless warning, since it returns an error code.  release
     acquired resources.
   - in lasso_idwsf2_discovery_metadata_register_self, return error code
     instead of identifier string for the new service, use an out
     parmeter to return the identifier, use utils.h macros.
   - in lasso_idwsf2_discovery_init_metadata_register, use utils.h
     macros, check return code of lasso_idwsf2_profile_init_soap_request.
   - change signature of lasso_idwsf2_discovery_init_metadata_register
     to support security_mech_id, try to get URL from an existing
     Discovery service EPR (from Session object).
   - change signature of
       lasso_idwsf2_discovery_process_metadata_register_msg,
       lasso_idwsf2_discovery_init_metadata_association_add,
       lasso_idwsf2_discovery_process_metadata_association_add_msg,
       lasso_idwsf2_discovery_init_query,
       lasso_idwsf2_discovery_process_query_msg, to support security
       mechanism.
   - improve lasso_idwsf2_discovery_build_query_response_eprs.
   - add lasso_idwsf2_discovery_get_nth_data_service to acces returned
     services.
 * lasso/id-wsf-2.0/data_service.{c,h}:
   - redo all the API
2010-01-04 09:15:24 +00:00
Benjamin Dauvergne 29558f6a6a ID-WSF 2.0&ID-WSF: in profile.c, wsf_profile.c, errors.c, errors.h, and in lasso-sections.txt change LASSO_SOAP_FAULT_REDIRECT_REQUEST to LASSO_SOAP_ERROR_REDIRECT_REQUEST_FAULT 2010-01-04 09:15:20 +00:00
Benjamin Dauvergne 65ab09249a ID-WSF 2.0: in saml2_login.c, change API
* lasso/id-wsf-2.0/saml2_login.c:
   - change private lasso_saml20_login_assertion_add_discovery to public
     lasso_login_idwsf2_add_discovery_bootstrap_epr.
   - remove lasso_saml20_login_copy_assertion_epr, add
     lasso_login_idwsf2_get_discovery_bootstrap_epr.
 * docs/reference/lasso/lasso-docs.sgml:
   - add sections id_wsf_2_0_login
 * docs/reference/lasso/lasso-sections.txt:
   - add new functions to section id_wsf_2_0_login
2010-01-04 09:15:03 +00:00
Benjamin Dauvergne e674814189 ID-WSF 2.0: add files soap_binding.c, soap_binding.h
* lasso/id-wsf-2.0/Makefile.am
   - reference new source files in Makefile.am
 * lasso/id-wsf-2.0/soap_binding.c
 * lasso/id-wsf-2.0/soap_binding.h:
   - add extraction functions lasso_soap_envelope_sb2_get_provider_id,
     lasso_soap_envelope_sb2_get_redirect_request_url,
     lasso_soap_envelope_sb2_get_target_identity_header,
   lasso_soap_envelope_add_action and lasso_soap_envelope_get_action.
   - add SOAP security headers accessors
   - add lasso_soap_envelope_get_saml2_security_token which simplify
     retrieving a SAML 2.0 assertion used as a WS-Security token.
     complete documentation of other functions.
 * docs/reference/lasso/lasso-sections.txt:
   - reference the new functions in a new section soap_binding2
 * docs/reference/lasso/lasso-docs.sgml:
   - add new section soap_binding2

ID-WSF 2.0: in soap_binding.{c,h}: add function
2010-01-04 09:14:54 +00:00
Benjamin Dauvergne 6dd383a051 ID-WSF: in data_service.c:lasso_data_service_init_query check absent resource offering, support security_mech_id argument
* lasso/id-wsf/data_service.c lasso/id-wsf/data_service.h:
   - in lasso_data_service_apply_modifications, dst_modification
     initialization is missing.
   - remove lasso_data_service_get_redirect_request_url
   - change LASSO_DATA_SERVICE_CANNOT_ADD_ITEM to
     LASSO_DATA_SERVICE_ERROR_CANNOT_ADD_ITEM
   - in lasso_data_service_init_query, complete documentation, fix mem
     leak
   - factorize code between lasso_data_service_build_modify_response_msg
     and lasso_data_service_build_query_response_msg, create
     lasso_data_service_build_response_msg
   - in lasso_data_service_get_answer, add out annotation to output
     parameter
   - simplify API, simplify code path for query and modification
     processing
   - add lasso_data_service_process_request_msg,
     lasso_data_service_build_modify_response_msg,
     lasso_data_service_validate_request.
   - remove lasso_data_service_process_query_msg and
     lasso_data_service_process_modify_msg from public API.
   - in lasso_data_service_process_query_msg and
     lasso_data_service_process_modify_msg add arg checks, make them
     static and move preprocessing of the request in
     lasso_data_service_process_request_msg.
   - in lasso_data_service_get_answer, fix request/response mismatch.
   - add accessors lasso_data_service_set_resource_data and
     lasso_data_service_get_resource_data.
   - add securit_mech_id arg to data_service_init_modify, export
     resource_data accessor methods
   - remove lasso_data_service_get_redirect_request_url
   - fix missing intializations and leaks
2010-01-04 09:14:43 +00:00
Benjamin Dauvergne b6c9be9fa2 Core Login: in login.c, add assertion accessor
* docs/reference/lasso/lasso-sections.txt:
   declare new function
 * lasso/id-ff/login.c lasso/id-ff/login.h:
   add new function lasso_login_get_assertion.
 * lasso/saml-2.0/login.c:
   store created assertions
 * lasso/id-ff/login.h:
   make assertion field private for bindings.
2010-01-04 09:14:20 +00:00
Benjamin Dauvergne c01e1231fa SAML 2.0: in saml2_helper.c, add new methods to manipulate SAML2 assertions
* lasso/saml-2.0/saml2_helper.c lasso/saml-2.0/saml2_helper.h:
   - add lasso_server_saml2_assertion_setup_signature, to help in
     defining signature upon saml2:Assertion nodes.
   - add new symbols LASSO_DURATION_MINUTE, LASSO_DURATION_HOUR,
     LASSO_DURATION_DAY, LASSO_DURATION_WEEK.
   - add method lasso_saml2_assertion_add_attribute_with_node

 * docs/reference/lasso/lasso-sections.txt:
   declare new functions in saml2_helper section.
2010-01-04 09:14:17 +00:00
Benjamin Dauvergne 399ca193e3 SAML 2.0: in provider.c, add node encryption function and reference it in doc
* lasso/saml-2.0/Makefile.am:
   add new header provider.h
 * lasso/saml-2.0/provider.c lasso/saml-2.0/provider.h:
   add new function lasso_provider_saml2_node_encrypt to encrypt nodes
   and encapslutate the XML Enc datas in a LassoSaml2EncryptedElement
   node.
 * docs/reference/lasso/lasso-sections.txt:
   add function to saml2_utils section
2010-01-04 09:14:10 +00:00
Benjamin Dauvergne fd256b2269 Docs: change the doc production and lot of other fixes
* lasso/Makefile.am:
   distribute extract_sections.py
 * docs/references/lasso/lasso.types.in: add missing class (mainly SAML2
   and ID-WSF 1.0/2.0) from docs/references/lasso.types.in

 * lasso/xml/strings.h:
   add lots of documentation, or at least documentation template to
   strings constants.
 * id-ff/login.h:
 * saml-2.0/assertion_query.h:
 * xml/xml.h:
   document undocumented enumerations.
 * lasso/errors.h:
   add proper documentation about error codes.
 * lasso/errors.c:
   new version of the lasso_strerror function
 * lasso/build_strerror.py:
   update the script that generater lasso_strerror from the
   documentation comments.

   Remove usage of OFTYPE

 * lasso/id-ff/session.c:
 * lasso/id-ff/session.h:
   remove usage of oftype, prefer gtk-introspection annotations instead.
 * lasso/id-wsf/data_service.h:
 * lasso/id-wsf/data_service.c:
   do the same.

   Add a script to build lasso-sections.txt

 * lasso/extract_sections.py:
   this script parses header files and generated lasso-sections.txt
   content for GObject class descriptions.

   Add a template file for the lasso-section.txt file

 * docs/references/lasso-sections.txt.in:
   this file serves as a base for the generation of lasso-sections.txt

   Update docs/references/Makefile.am for generating lasso-sections.txt

 * docs/references/Makefile.am:
   always rebuild template, using out of source build directory is too
   weird without it.
   call new script extract_sections.py to regenerate lasso-sections.txt
   if header files changed.

   Update lasso.sgml file with all missing sections

 * docs/reference/lasso.sgml:
   add all missing sections, mainly objects from XML schemas.

 * docs/reference/lasso-sections.txt: update it

 * *.c: add section documentation to some files.
 * lasso/xml/strings.h: fix bad usage or docbook markup
2009-08-26 15:15:07 +00:00