You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by kf...@apache.org on 2015/03/17 04:00:50 UTC
svn commit: r1667169 - in /tomcat/tc7.0.x/trunk:
java/org/apache/catalina/authenticator/SingleSignOn.java
webapps/docs/changelog.xml
Author: kfujino
Date: Tue Mar 17 03:00:50 2015
New Revision: 1667169
URL: http://svn.apache.org/r1667169
Log:
Add support for LAST_ACCESS_AT_START system property to SingleSignOn.
Modified:
tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SingleSignOn.java
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SingleSignOn.java
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SingleSignOn.java?rev=1667169&r1=1667168&r2=1667169&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SingleSignOn.java (original)
+++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SingleSignOn.java Tue Mar 17 03:00:50 2015
@@ -27,6 +27,7 @@ import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
+import org.apache.catalina.Globals;
import org.apache.catalina.Realm;
import org.apache.catalina.Session;
import org.apache.catalina.SessionEvent;
@@ -58,6 +59,19 @@ import org.apache.tomcat.util.res.String
*/
public class SingleSignOn extends ValveBase implements SessionListener {
+ protected static final boolean LAST_ACCESS_AT_START;
+
+ static {
+ String lastAccessAtStart = System.getProperty(
+ "org.apache.catalina.session.StandardSession.LAST_ACCESS_AT_START");
+ if (lastAccessAtStart == null) {
+ LAST_ACCESS_AT_START = Globals.STRICT_SERVLET_COMPLIANCE;
+ } else {
+ LAST_ACCESS_AT_START =
+ Boolean.valueOf(lastAccessAtStart).booleanValue();
+ }
+ }
+
//------------------------------------------------------ Constructor
public SingleSignOn() {
super(true);
@@ -237,9 +251,14 @@ public class SingleSignOn extends ValveB
// If so, we'll just remove the expired session from the
// SSO. If the session was logged out, we'll log out
// of all session associated with the SSO.
+ long idle;
+ if (LAST_ACCESS_AT_START) {
+ idle = session.getLastAccessedTimeInternal();
+ } else {
+ idle = session.getThisAccessedTimeInternal();
+ }
if (((session.getMaxInactiveInterval() > 0)
- && (System.currentTimeMillis() - session.getThisAccessedTimeInternal() >=
- session.getMaxInactiveInterval() * 1000))
+ && idle >= session.getMaxInactiveInterval() * 1000)
|| (Session.SESSION_PASSIVATED_EVENT.equals(event.getType()))
|| (!session.getManager().getContainer().getState().isAvailable())) {
removeSession(ssoId, session);
Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1667169&r1=1667168&r2=1667169&view=diff
==============================================================================
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Mar 17 03:00:50 2015
@@ -159,6 +159,10 @@
when <code>org.apache.tomcat.InstanceManager</code> is not initialized.
(violetagg)
</fix>
+ <fix>
+ Add support for <code>LAST_ACCESS_AT_START</code> system property to
+ <code>SingleSignOn</code>. (kfujino)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org