summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Dauvergne <bdauvergne@entrouvert.com>2011-12-19 17:38:10 +0100
committerBenjamin Dauvergne <bdauvergne@entrouvert.com>2011-12-19 17:38:10 +0100
commitccfa38bf311f807f5163c8c69c7e12d7d37bfa7a (patch)
tree5901047c7cf28b6fdcc638c2c7173397ba6c1c90
parent476baa59f771fd15706668987be1ea6bc2e45f15 (diff)
downloadlasso-ccfa38bf311f807f5163c8c69c7e12d7d37bfa7a.tar.gz
lasso-ccfa38bf311f807f5163c8c69c7e12d7d37bfa7a.tar.xz
lasso-ccfa38bf311f807f5163c8c69c7e12d7d37bfa7a.zip
[id-ff 1.2] add lasso_saml_name_identifier_equals() to compare NameIDs
-rw-r--r--lasso/xml/saml_name_identifier.c14
-rw-r--r--lasso/xml/saml_name_identifier.h3
2 files changed, 17 insertions, 0 deletions
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 */