[cpp-sp] 02/02: SSPCPP-891 - Logout notifications are depending on access to SP session
Scott Cantor
cantor.2 at osu.edu
Tue Mar 10 11:24:12 EDT 2020
This is an automated email from the git hooks/post-receive script.
scantor pushed a commit to branch master
in repository cpp-sp.
View the commit online:
http://git.shibboleth.net/view/?p=cpp-sp.git;a=commit;h=6199e3e6fc710dde076a967da830fdcc5592d59a
commit 6199e3e6fc710dde076a967da830fdcc5592d59a
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Mar 10 11:22:10 2020 -0400
SSPCPP-891 - Logout notifications are depending on access to SP session
https://issues.shibboleth.net/jira/browse/SSPCPP-891
---
shibsp/handler/impl/SAML2Logout.cpp | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/shibsp/handler/impl/SAML2Logout.cpp b/shibsp/handler/impl/SAML2Logout.cpp
index d8e3a41..f07eef1 100644
--- a/shibsp/handler/impl/SAML2Logout.cpp
+++ b/shibsp/handler/impl/SAML2Logout.cpp
@@ -132,6 +132,7 @@ namespace shibsp {
vector<string> m_bindings;
map< string,boost::shared_ptr<MessageEncoder> > m_encoders;
auto_ptr_char m_protocol;
+ bool m_notifyWithoutSession;
#endif
};
@@ -157,6 +158,11 @@ SAML2Logout::SAML2Logout(const DOMElement* e, const char* appId, bool deprecatio
m_preserve.push_back("entityID");
m_preserve.push_back("RelayState");
+ pair<bool, bool> flag = getBool("notifyWithoutSession", shibspconstants::ASCII_SHIBSPCONFIG_NS);
+ if (!flag.first)
+ flag = getBool("notifyWithoutSession");
+ m_notifyWithoutSession = flag.first && flag.second;
+
if (SPConfig::getConfig().isEnabled(SPConfig::OutOfProcess)) {
SAMLConfig& conf = SAMLConfig::getConfig();
@@ -494,7 +500,7 @@ pair<bool,long> SAML2Logout::doRequest(const Application& application, HTTPReque
}
if (m_decoder->isUserAgentPresent()) {
- if (!session_id.empty()) {
+ if (!session_id.empty() || m_notifyWithoutSession) {
// Pass control to the first front channel notification point, if any.
map<string,string> parammap;
if (!relayState.empty())
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list