diff options
| author | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2009-09-29 13:20:31 +0000 |
|---|---|---|
| committer | Benjamin Dauvergne <bdauvergne@entrouvert.com> | 2009-09-29 13:20:31 +0000 |
| commit | af7feb46702a2d7bb30deb0f354bfadee9c27a6b (patch) | |
| tree | 4413b7629a1a7932dd11da5fa2b3c55dda1b9bc0 | |
| parent | 1fb7750337bff7d7ad638621cc38c3cf2e1ffe54 (diff) | |
| download | lasso-af7feb46702a2d7bb30deb0f354bfadee9c27a6b.tar.gz lasso-af7feb46702a2d7bb30deb0f354bfadee9c27a6b.tar.xz lasso-af7feb46702a2d7bb30deb0f354bfadee9c27a6b.zip | |
Add method to Provider to retrieve default NameIDFormat
* lasso/id-ff/provider.c lasso/id-ff/provider.h:
add lasso_provider_get_default_name_id_format, which returns the firs
listed NameIDFormat from the SAML 2.0 metadatas of the provider.
| -rw-r--r-- | lasso/id-ff/provider.c | 13 | ||||
| -rw-r--r-- | lasso/id-ff/provider.h | 2 |
2 files changed, 15 insertions, 0 deletions
diff --git a/lasso/id-ff/provider.c b/lasso/id-ff/provider.c index 4aa9cae1..8a1f9dd2 100644 --- a/lasso/id-ff/provider.c +++ b/lasso/id-ff/provider.c @@ -1290,3 +1290,16 @@ lasso_provider_verify_query_signature(LassoProvider *provider, const char *messa return lasso_query_verify_signature(message, provider_public_key); } +/** + * lasso_provider_get_default_name_id_format: + * @provider: a #LassoProvider object + * + * If the provider has a list of supported name id formats in its metadatas, return the first one. + * + * Return value: a NameIDFormat URI or NULL, the returned value must be freed by the caller. + */ +gchar* +lasso_provider_get_default_name_id_format(const LassoProvider *provider) +{ + return lasso_provider_get_metadata_one(provider, "NameIDFormat"); +} diff --git a/lasso/id-ff/provider.h b/lasso/id-ff/provider.h index bf61d2e6..12cad15a 100644 --- a/lasso/id-ff/provider.h +++ b/lasso/id-ff/provider.h @@ -202,6 +202,8 @@ LASSO_EXPORT void lasso_provider_set_encryption_mode(LassoProvider *provider, LASSO_EXPORT void lasso_provider_set_encryption_sym_key_type(LassoProvider *provider, LassoEncryptionSymKeyType encryption_sym_key_type); +LASSO_EXPORT gchar* lasso_provider_get_default_name_id_format(const LassoProvider *provider); + #ifdef __cplusplus } #endif /* __cplusplus */ |
