summaryrefslogtreecommitdiffstats
path: root/lasso
diff options
context:
space:
mode:
authorNicolas Clapies <nclapies@entrouvert.com>2004-07-30 11:38:38 +0000
committerNicolas Clapies <nclapies@entrouvert.com>2004-07-30 11:38:38 +0000
commit04c32c9de2acb7bc10303b071fdd064ea0a355be (patch)
treec6133239872e398969919869a482e9f3f498a318 /lasso
parent34938f2b40e7cdcaa5c512ed1bba1c68f656b30f (diff)
downloadlasso-04c32c9de2acb7bc10303b071fdd064ea0a355be.tar.gz
lasso-04c32c9de2acb7bc10303b071fdd064ea0a355be.tar.xz
lasso-04c32c9de2acb7bc10303b071fdd064ea0a355be.zip
update of examples to user identity and session objects
Diffstat (limited to 'lasso')
-rw-r--r--lasso/id-ff/identity.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/lasso/id-ff/identity.c b/lasso/id-ff/identity.c
index ed4af134..07e4609c 100644
--- a/lasso/id-ff/identity.c
+++ b/lasso/id-ff/identity.c
@@ -355,6 +355,8 @@ lasso_identity_new_from_dump(gchar *dump)
xmlChar *remote_providerID;
+ GError *err = NULL;
+
g_return_val_if_fail(dump != NULL, NULL);
/* new object */
@@ -380,7 +382,15 @@ lasso_identity_new_from_dump(gchar *dump)
xmlStrEqual(federation_xmlNode->name, LASSO_IDENTITY_FEDERATION_NODE)) {
federation_node = lasso_node_new_from_xmlNode(federation_xmlNode);
remote_providerID = lasso_node_get_attr_value(federation_node,
- LASSO_FEDERATION_REMOTE_PROVIDERID_NODE, NULL);
+ LASSO_FEDERATION_REMOTE_PROVIDERID_NODE, &err);
+ if(remote_providerID==NULL){
+ message(G_LOG_LEVEL_WARNING, err->message);
+ g_error_free(err);
+ lasso_node_destroy(federation_node);
+ federation_xmlNode = federation_xmlNode->next;
+ continue;
+ }
+
/* new federation */
federation = lasso_federation_new(remote_providerID);