summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Clapies <nclapies@entrouvert.com>2004-08-24 15:55:12 +0000
committerNicolas Clapies <nclapies@entrouvert.com>2004-08-24 15:55:12 +0000
commit431249546effc1cc7390baf96e66676b2dee72ef (patch)
treeb8fe82d91386a4e8086d12171fd99784e05340cf
parent9ec06e4ae7e40a48263b760340ea7455d82f4411 (diff)
downloadlasso-431249546effc1cc7390baf96e66676b2dee72ef.tar.gz
lasso-431249546effc1cc7390baf96e66676b2dee72ef.tar.xz
lasso-431249546effc1cc7390baf96e66676b2dee72ef.zip
added test if identity is set before removing federation
-rw-r--r--lasso/id-ff/defederation.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/lasso/id-ff/defederation.c b/lasso/id-ff/defederation.c
index 3931de65..7f61b609 100644
--- a/lasso/id-ff/defederation.c
+++ b/lasso/id-ff/defederation.c
@@ -25,6 +25,8 @@
#include <lasso/environs/defederation.h>
+#include <lasso/xml/errors.h>
+
/*****************************************************************************/
/* public methods */
/*****************************************************************************/
@@ -314,8 +316,14 @@ lasso_defederation_init_notification(LassoDefederation *defederation,
profile->nameIdentifier = content;
/* remove federation with remote provider id */
+ if (profile->identity ==NULL) {
+ message(G_LOG_LEVEL_CRITICAL, "Identity not found\n");
+ ret = -1;
+ goto done;
+ }
lasso_identity_remove_federation(profile->identity, profile->remote_providerID);
+
/* remove assertion from session */
if (profile->session != NULL) {
lasso_session_remove_assertion(profile->session, profile->remote_providerID);