head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.8 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.6 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.4 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.2 pkgsrc-2011Q2-base:1.2 pkgsrc-2010Q1:1.1.0.4 pkgsrc-2010Q1-base:1.1 pkgsrc-2009Q4:1.1.0.2 pkgsrc-2009Q4-base:1.1; locks; strict; comment @# @; 1.2 date 2010.05.31.16.44.28; author manu; state dead; branches; next 1.1; 1.1 date 2009.12.01.08.49.46; author manu; state Exp; branches; next ; desc @@ 1.2 log @Update to lasso 2.2.91. From the NEWS file: 2.2.91 - January 26th 2010 -------------------------- A new Perl binding, fix for backward compatibility with old versions of glib, LassoLogout API is more robust since it does not need anymore for all SP logout to finish to work, new macro lasso_list_add_new_xml_node, add support for WS-Security UsernameToken (equivalent of poor man HTTP Digest Authentication), make public internal APIs: lasso_session_add_assertion, lasso_session_get_assertion and lasso_session_remove_assertion. 2.2.90 - January 18th 2010 -------------------------- Lots of internal changes and some external one too. There is a new api to force, forbid or let Lasso sign messages, it is called lasso_profile_set_signature_hint. Big overhaul of the ID-WSF 1 and 2 codes, and of the SAML 2.0 profiles. Now all SAML 2.0 profile use common internal functions from the lasso_saml20_profile_ namespace to handle bindings (SOAP,Redirect,POST,Artifact,PAOS). New internal API to load SSL keys from many more formats from the public API. In ID-WSF 2.0, Data Service Template has been simplified, we no more try to apply queries, it is the responsability of the using code to handle them. In bindings land, the file bindings/utils.py has been stuffed with utility function to manipulate 'type' tuple, with are now used to transfer argument and type description, their schema is (name, C-type, { dictionary of options } ), they are now used everywhere in the different bindings. We support output argument in PHP5, Python and Java, i.e. pointer of pointer arguments with are written to in order to return multiple values. For language where the binding convert error codes to exceptions (all of them now), the ouput value is returned as the normal return value of the method, so only one output argument is handled for now. We now use GObject-introspection annotations in the documentation to transfer to the binding generator the necessary metadata about the API (content of lists, hashtables, wheter pointer are caller/callee owned, can be NULL or if argument have a default value). The file bindings/override.xml is now deprecated. In documentation land, the main reference documentation was reorganizaed and more symbols have been added to it. Many more functions are documented. There is now tools to control the evolution of the ABI/API of Lasso. @ text @$NetBSD: patch-cc,v 1.1 2009/12/01 08:49:46 manu Exp $ --- lasso/utils.h.orig 2009-11-30 18:54:46.000000000 +0100 +++ lasso/utils.h 2009-11-30 19:31:22.000000000 +0100 @@@@ -336,4 +336,73 @@@@ g_return_val_if_fail(name != NULL, LASSO_PARAM_ERROR_BAD_TYPE_OR_NULL_OBJ); +/** + * The following macros are made to create some formalism for function's cleanup code. + * + * The exit label should be called 'cleanup'. And for functions returning an integer error code, the + * error code should be named 'rc' and 'return rc;' should be the last statement of the function. + */ + +/** + * goto_cleanup_with_rc: + * @@rc_value: integer return value + * + * This macro jump to the 'cleanup' label and set the return value to @@rc_value. + * + */ +#define goto_cleanup_with_rc(rc_value) \ + {\ + rc = (rc_value); \ + goto cleanup; \ + } + +/** + * goto_cleanup_if_fail: + * @@condition: a boolean condition + * + * Jump to the 'cleanup' label if the @@condition is FALSE. + * + */ +#define goto_cleanup_if_fail(condition) \ + {\ + if (! (condition) ) {\ + goto cleanup; \ + } \ + } + +/** + * goto_cleanup_if_fail_with_rc: + * @@condition: a boolean condition + * @@rc_value: integer return value + * + * Jump to the 'cleanup' label if the @@condition is FALSE and set the return value to + * @@rc_value. + * + */ +#define goto_cleanup_if_fail_with_rc(condition, rc_value) \ + {\ + if (! (condition) ) {\ + rc = (rc_value); \ + goto cleanup; \ + } \ + } + +/** + * goto_cleanup_if_fail_with_rc_with_warning: + * @@condition: a boolean condition + * @@rc_value: integer return value + * + * Jump to the 'cleanup' label if the @@condition is FALSE and set the return value to + * @@rc_value. Also emit a warning, showing the condition and the return value. + * + */ +#define goto_cleanup_if_fail_with_rc_with_warning(condition, rc_value) \ + {\ + if (! (condition) ) {\ + g_warning("%s failed, returning %s", __STRING(condition), __STRING(rc_value));\ + rc = (rc_value); \ + goto cleanup; \ + } \ + } + #define goto_exit_with_rc(rc_value) \ {\ @ 1.1 log @Pullup single logout related bugfixes from lasso -current. On SP initiated logout, the SP x509 certificate was included in the HTTP redirect URL. First this was an SAML standard violation, and second it inflated the URL beyond 2038 bytes, which is the maximum length for IE7 and prior. As a result, SP initated single logout was broken with IE7 and prior versions. @ text @d1 1 a1 1 $NetBSD$ @