summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Dauvergne <bdauvergne@entrouvert.com>2011-12-22 18:19:29 +0100
committerBenjamin Dauvergne <bdauvergne@entrouvert.com>2011-12-22 18:19:29 +0100
commit26b341a2765aabbe9d90caf956a3bcaaba8b6dd1 (patch)
tree14347be4ec6870f3be27a34f21533a705198b306
parentb016558d06547c7514a2d0ada56980b8c10af744 (diff)
downloadlasso-26b341a2765aabbe9d90caf956a3bcaaba8b6dd1.tar.gz
lasso-26b341a2765aabbe9d90caf956a3bcaaba8b6dd1.tar.xz
lasso-26b341a2765aabbe9d90caf956a3bcaaba8b6dd1.zip
[id-ff 1.2] provision the SessionIndex into the assertions
Without it SLO session management is broken.
-rw-r--r--lasso/id-ff/login.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/lasso/id-ff/login.c b/lasso/id-ff/login.c
index dd3cc5c7..c20b4b5d 100644
--- a/lasso/id-ff/login.c
+++ b/lasso/id-ff/login.c
@@ -401,6 +401,12 @@ lasso_login_build_assertion(LassoLogin *login,
}
}
+ /* add session index */
+ if (lasso_provider_get_first_http_method(&login->parent.server->parent,
+ provider, LASSO_MD_PROTOCOL_TYPE_SINGLE_LOGOUT) != LASSO_HTTP_METHOD_NONE) {
+ lasso_assign_string(as->SessionIndex, assertion->AssertionID);
+ }
+
assertion->AuthenticationStatement = LASSO_SAML_AUTHENTICATION_STATEMENT(as);
/* Save signing material in assertion private datas to be able to sign later */