summaryrefslogtreecommitdiffstats
path: root/lasso/Attic
diff options
context:
space:
mode:
authorValery Febvre <vfebvre at easter-eggs.com>2004-09-30 13:42:58 +0000
committerValery Febvre <vfebvre at easter-eggs.com>2004-09-30 13:42:58 +0000
commit9db931fc1a70185625131ec248709169d01d45f4 (patch)
treecf874750211de2ec4fa5330eefec0dbcbddd230a /lasso/Attic
parentf5ec7237726f81a3254d11c0ab0cf8310e834b8d (diff)
downloadlasso-9db931fc1a70185625131ec248709169d01d45f4.tar.gz
lasso-9db931fc1a70185625131ec248709169d01d45f4.tar.xz
lasso-9db931fc1a70185625131ec248709169d01d45f4.zip
Added a parameter 'content' (optional) in lasso_federation_build_local_nameIdentifier()
and lasso_federation_build_remote_nameIdentifier() methods
Diffstat (limited to 'lasso/Attic')
-rw-r--r--lasso/Attic/protocols/federation.c56
-rw-r--r--lasso/Attic/protocols/federation.h6
2 files changed, 38 insertions, 24 deletions
diff --git a/lasso/Attic/protocols/federation.c b/lasso/Attic/protocols/federation.c
index e055f633..fb55cdc0 100644
--- a/lasso/Attic/protocols/federation.c
+++ b/lasso/Attic/protocols/federation.c
@@ -33,45 +33,57 @@ struct _LassoFederationPrivate
static GObjectClass *parent_class = NULL;
/*****************************************************************************/
-/* public methods */
+/* static methods/functions */
/*****************************************************************************/
-void
-lasso_federation_build_local_nameIdentifier(LassoFederation *federation,
- const gchar *nameQualifier,
- const gchar *format)
+static LassoNode*
+lasso_federation_build_nameIdentifier(const gchar *nameQualifier,
+ const gchar *format,
+ const gchar *content)
{
LassoNode *nameIdentifier;
xmlChar *id;
- id = lasso_build_unique_id(32);
- nameIdentifier = lasso_saml_name_identifier_new(id);
- xmlFree(id);
+ if (content == NULL) {
+ id = lasso_build_unique_id(32);
+ nameIdentifier = lasso_saml_name_identifier_new(id);
+ xmlFree(id);
+ }
+ else {
+ nameIdentifier = lasso_saml_name_identifier_new(content);
+ }
lasso_saml_name_identifier_set_nameQualifier(LASSO_SAML_NAME_IDENTIFIER(nameIdentifier),
nameQualifier);
lasso_saml_name_identifier_set_format(LASSO_SAML_NAME_IDENTIFIER(nameIdentifier),
format);
- federation->local_nameIdentifier = nameIdentifier;
+ return nameIdentifier;
+}
+
+/*****************************************************************************/
+/* public methods */
+/*****************************************************************************/
+
+void
+lasso_federation_build_local_nameIdentifier(LassoFederation *federation,
+ const gchar *nameQualifier,
+ const gchar *format,
+ const gchar *content)
+{
+ federation->local_nameIdentifier = lasso_federation_build_nameIdentifier(nameQualifier,
+ format,
+ content);
}
void
lasso_federation_build_remote_nameIdentifier(LassoFederation *federation,
const gchar *nameQualifier,
- const gchar *format)
+ const gchar *format,
+ const gchar *content)
{
- LassoNode *nameIdentifier;
- xmlChar *id;
-
- id = lasso_build_unique_id(32);
- nameIdentifier = lasso_saml_name_identifier_new(id);
- xmlFree(id);
- lasso_saml_name_identifier_set_nameQualifier(LASSO_SAML_NAME_IDENTIFIER(nameIdentifier),
- nameQualifier);
- lasso_saml_name_identifier_set_format(LASSO_SAML_NAME_IDENTIFIER(nameIdentifier),
- format);
-
- federation->remote_nameIdentifier = nameIdentifier;
+ federation->remote_nameIdentifier = lasso_federation_build_nameIdentifier(nameQualifier,
+ format,
+ content);
}
LassoFederation*
diff --git a/lasso/Attic/protocols/federation.h b/lasso/Attic/protocols/federation.h
index bc74a918..ae4a2ebb 100644
--- a/lasso/Attic/protocols/federation.h
+++ b/lasso/Attic/protocols/federation.h
@@ -73,11 +73,13 @@ LASSO_EXPORT LassoFederation* lasso_federation_new_from_dump (gch
LASSO_EXPORT void lasso_federation_build_local_nameIdentifier (LassoFederation *federation,
const gchar *nameQualifier,
- const gchar *format);
+ const gchar *format,
+ const gchar *content);
LASSO_EXPORT void lasso_federation_build_remote_nameIdentifier (LassoFederation *federation,
const gchar *nameQualifier,
- const gchar *format);
+ const gchar *format,
+ const gchar *content);
LASSO_EXPORT LassoFederation* lasso_federation_copy (LassoFederation *federation);