From ccfa38bf311f807f5163c8c69c7e12d7d37bfa7a Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Mon, 19 Dec 2011 17:38:10 +0100 Subject: [PATCH] [id-ff 1.2] add lasso_saml_name_identifier_equals() to compare NameIDs --- lasso/xml/saml_name_identifier.c | 14 ++++++++++++++ lasso/xml/saml_name_identifier.h | 3 +++ 2 files changed, 17 insertions(+) diff --git a/lasso/xml/saml_name_identifier.c b/lasso/xml/saml_name_identifier.c index 1d0d1a14..a93c8f7c 100644 --- a/lasso/xml/saml_name_identifier.c +++ b/lasso/xml/saml_name_identifier.c @@ -98,6 +98,20 @@ lasso_saml_name_identifier_get_type() return this_type; } +gboolean +lasso_saml_name_identifier_equals(LassoSamlNameIdentifier *a, + LassoSamlNameIdentifier *b) { + if (a == NULL || b == NULL) + return FALSE; + + if (! LASSO_IS_SAML_NAME_IDENTIFIER(a) && ! LASSO_IS_SAML_NAME_IDENTIFIER(b)) { + return FALSE; + } + return lasso_strisequal(a->NameQualifier, b->NameQualifier) + && lasso_strisequal(a->Format, b->Format) + && lasso_strisequal(a->content, b->content); +} + /** * lasso_saml_name_identifier_new: * diff --git a/lasso/xml/saml_name_identifier.h b/lasso/xml/saml_name_identifier.h index 4902727c..ede9dbab 100644 --- a/lasso/xml/saml_name_identifier.h +++ b/lasso/xml/saml_name_identifier.h @@ -83,6 +83,9 @@ LASSO_EXPORT LassoSamlNameIdentifier* lasso_saml_name_identifier_new(void); LASSO_EXPORT LassoSamlNameIdentifier* lasso_saml_name_identifier_new_from_xmlNode( xmlNode *xmlnode); +LASSO_EXPORT gboolean lasso_saml_name_identifier_equals(LassoSamlNameIdentifier *a, + LassoSamlNameIdentifier *b); + #ifdef __cplusplus } #endif /* __cplusplus */