summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Clapies <nclapies@entrouvert.com>2004-07-23 16:32:36 +0000
committerNicolas Clapies <nclapies@entrouvert.com>2004-07-23 16:32:36 +0000
commite2f33ecf5a89b10591b77c9666c9d4d57a836799 (patch)
tree493c922ca31d6cce043a552791115496fac79da1
parent23d6cb138bf0eb8c6252bbc2b94897f386a51cc6 (diff)
downloadlasso-e2f33ecf5a89b10591b77c9666c9d4d57a836799.tar.gz
lasso-e2f33ecf5a89b10591b77c9666c9d4d57a836799.tar.xz
lasso-e2f33ecf5a89b10591b77c9666c9d4d57a836799.zip
fix bug in init of logout from request at idp
-rw-r--r--lasso/id-ff/logout.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/lasso/id-ff/logout.c b/lasso/id-ff/logout.c
index 1e30214f..84711782 100644
--- a/lasso/id-ff/logout.c
+++ b/lasso/id-ff/logout.c
@@ -254,7 +254,6 @@ lasso_logout_process_request_msg(LassoLogout *logout,
LassoNode *statusCode;
LassoNodeClass *statusCode_class;
xmlChar *remote_providerID;
- int nb_remote_providers;
g_return_val_if_fail(LASSO_IS_LOGOUT(logout), -1);
g_return_val_if_fail(request_msg!=NULL, -2);
@@ -346,16 +345,16 @@ lasso_logout_process_request_msg(LassoLogout *logout,
break;
case lassoProviderTypeIdp:
/* if more than one sp registered, backup original infos of the sp requester */
- nb_remote_providers = profileContext->user->assertion_providerIDs->len;
- if(nb_remote_providers>1){
+ /* FIXME : get the nb of remote providers with a proper way */
+ logout->first_remote_providerID = g_strdup(profileContext->remote_providerID);
+ if(profileContext->user->assertion_providerIDs->len>1){
logout->first_request = profileContext->request;
profileContext->request = NULL;
logout->first_response = profileContext->response;
profileContext->response = NULL;
-
- logout->first_remote_providerID = profileContext->remote_providerID;
- profileContext->remote_providerID = NULL;
+
+ profileContext->remote_providerID = NULL;
}
break;
@@ -457,7 +456,9 @@ lasso_logout_finalize(LassoLogout *logout)
static void
lasso_logout_instance_init(LassoLogout *logout)
{
-
+ logout->first_request = NULL;
+ logout->first_response = NULL;
+ logout->first_remote_providerID = NULL;
}
static void