Commit Graph

30 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 f5442dc84b SAML 2.0: add support for attribute, authentication and authorization authorities metadata
* server.c,serverprivate.h: add new private method
   lasso_server_get_firs_providerID_by_role(server, role)w
 * defederation.c: use new private method
   lasso_server_get_first_providerID_by_role for find providerID
   when the argument remote_providerID is null in
   lasso_defederation_init_notification.
 * lasso/id-ff/login.c (lasso_login_init_authn_request): use new private
   method lasso_server_get_first_providerID_by_role.
 * provider.h: add thre new provider role (authn,pdp,attribute) and
    four new services (authn,assertionid,attribute,authz) and also
    a ROLE_ANY value (-1) for catchall purpose and a ROLE_LAST for
    array sizing.
 * provider.h: add a LAST member to LassoMdProtocolType enum.
  * providerprivate.h,provider.c:
   - removes separate hashtable for descriptors depending on provider role,
     use only one table named Descriptors.
   - use the LAST members of enumerations to dimention static string arrays.
  * provider.h: add a LAST member to the e
2010-03-27 16:51:43 +00:00
Benjamin Dauvergne e76546078f Core: in provider.c, add accessors for encryption informations
* lasso/id-ff/provider.c:
   add getters for encryption_sym_key_type and encryption_public_key.
 * lasso/id-ff/providerprivate.h:
   declare new accessors.
2010-01-04 09:14:01 +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
Benjamin Dauvergne a475d9eb00 Core: add new internal API lasso_provider_verify_query_signature
* lasso/id-ff/provider.c:
   try to keep some homgeneity between lasso_verify_signature and
   lasso_verify_query_signature functions, by having mirror methods
   inside the LassoProvider class. this new methods comes with complete
   documentation.
 * lasso/xml/tools.c:
   add a xmlDoc argument to lasso_verify_signature, in order to
   reuse an already built message context, and possible problems with
   interned string in parsed xml documents.
2009-03-27 15:05:00 +00:00
Benjamin Dauvergne 3b2f3fbced Core: add xmlDoc parameter to lasso_provider_verify_saml_signature
* lasso/id-ff/provider.c:
   add an xmlDoc parameter to lasso_provider_verify_saml_signature,
   reflecting change in lasso_verify_signature.
   fix memory leaks of an xmlSecKeysMngr.
   complete arguments checking.
 * lasso/id-ff/login.c:
   update use of lasso_provider_verify_signature in LassoLogin
2009-03-27 15:04:58 +00:00
Benjamin Dauvergne fdc8c66a98 XML: new LassoProvider API to verify XMLDsig signatures
* lasso/id-ff/provider.c, lasso/id-ff/providerprivate.h:
  - (lasso_provider_verify_saml_signature) validate a signed
    saml Request, Response or Assertion, using the public key
    of the given provider.
2009-01-24 09:33:55 +00:00
Benjamin Dauvergne 33bbf7a7de All: Fix missing field initializer problems
* lots of files: Explicitely set all field of initialized structures,
  in order to remove -Wno-missing-field-initilizers from needed
  compiler options when using -Wall -Wextra.
2009-01-24 09:33:40 +00:00
Benjamin Dauvergne 2ca9f2c46a Export lasso_provider_load_metadata_from_buffer
* lasso/id-ff/providerprivate.h: add declaration for private function
  lasso_provider_load_metadata_from_buffer
2008-11-02 11:49:55 +00:00
Benjamin Dauvergne 9ed0670e48 * Remove ending blanks 2008-09-12 15:06:58 +00:00
Damien Laniel 4fc6657e0c updated Copyright dates in all files 2007-05-30 17:17:45 +00:00
Damien Laniel 13f707bf30 Allow the choice of the encryption algorithm to use 2006-12-20 09:03:41 +00:00
Frédéric Péters 10ab6685fc achieved support for using affiliations 2006-12-01 18:45:10 +00:00
Damien Laniel 27a0c91c69 Initialise and destroy correctly provider private datas 2006-11-30 18:11:59 +00:00
Damien Laniel 736481f244 Encrypt Assertions at the last moment, so that the assertions should be fully built before that 2006-11-29 15:06:49 +00:00
Damien Laniel 5f2583da6d Changed setEncryption(boolean) to setEncryptionMode(enum mode) 2006-11-22 12:45:38 +00:00
Damien Laniel 0b5bbddb45 changed provider->private_data->encryption name to provider->private_data->encryption_enabled 2006-11-22 11:02:43 +00:00
Damien Laniel d0edddf2bb Added lasso_provider_set_encryption method to activate or desactive encryption 2006-11-22 10:30:54 +00:00
Frédéric Péters 4016a87eac added loading of affiliation metadata (not yet acted upon) 2006-11-19 20:07:46 +00:00
Frédéric Péters 4c72aa673b spec refers to signing/encryption so use that vocabulary (even if I don't like
it)
2006-11-08 19:23:45 +00:00
Frédéric Péters e26ed0d719 minor changes & fix to coding style for enc public key loading 2006-11-08 18:14:17 +00:00
Frédéric Péters e6074f1ad4 encryption_public_key will always be set from metadata; no need for filename
stuff and to touch the public struct.
2006-11-08 17:45:45 +00:00
Damien Laniel 87415b9c80 load encryption key from metadatas 2006-11-08 17:16:31 +00:00
Frédéric Péters ebb9f7dffc SAML 2.0 support (only web-sso for the moment) 2005-11-20 15:38:19 +00:00
Nicolas Clapies f0bfe0bff4 Added private method lasso_provider_get_public_key() to get public key info. 2005-09-26 15:02:52 +00:00
Frédéric Péters 4adc5b5847 renamed ProfileService to DataService 2005-08-25 07:19:27 +00:00
Frédéric Péters 397e980c6c loads public key into xmlSecKey on LassoProvider instanciation; this merges
signature verification in XML messages and in query strings.
2005-04-25 10:43:48 +00:00
Frédéric Péters 7a4de405c3 produce 1.1 requests and notifications when interoperating with previous
liberty implementations
2005-01-28 13:29:14 +00:00
Emmanuel Raviart 7a03e99b09 Updated Copyright and authors. 2005-01-22 15:57:56 +00:00
Frédéric Péters a61cc39269 moved some lasso private functions to new providerprivate.h; insure it is
included properly in other files (as well as some sessionprivate.h that were
missing)
2004-12-31 11:51:11 +00:00