SSPCPP-382 - cb58f699-b61c-0410-a6fe-9272a202ed29
authorScott Cantor <cantor.2@osu.edu>
Mon, 18 Jul 2011 17:37:17 +0000 (17:37 +0000)
committerScott Cantor <cantor.2@osu.edu>
Mon, 18 Jul 2011 17:37:17 +0000 (17:37 +0000)
https://issues.shibboleth.net/jira/browse/SSPCPP-382

shibsp/ServiceProvider.cpp
shibsp/handler/impl/AbstractHandler.cpp
shibsp/handler/impl/FormSessionInitiator.cpp
shibsp/handler/impl/LogoutHandler.cpp
shibsp/handler/impl/SessionHandler.cpp

index 70194b5..3cd3f12 100644 (file)
@@ -100,8 +100,8 @@ namespace shibsp {
         }
 
         request.setContentType("text/html");
-        request.setResponseHeader("Expires","01-Jan-1997 12:00:00 GMT");
-        request.setResponseHeader("Cache-Control","private,no-store,no-cache");
+        request.setResponseHeader("Expires","Wed, 01 Jan 1997 12:00:00 GMT");
+        request.setResponseHeader("Cache-Control","private,no-store,no-cache,max-age=0");
 
         // Nothing in the request map, so check for a property named "page" in the Errors property set.
         if (!pathname.first && props) {
index 0c70794..2286016 100644 (file)
@@ -762,8 +762,8 @@ long AbstractHandler::sendPostResponse(
 
     httpResponse.setContentType("text/html");
     if (!postExpire.first || postExpire.second) {
-        httpResponse.setResponseHeader("Expires", "01-Jan-1997 12:00:00 GMT");
-        httpResponse.setResponseHeader("Cache-Control", "no-cache, no-store, must-revalidate, private");
+        httpResponse.setResponseHeader("Expires", "Wed, 01 Jan 1997 12:00:00 GMT");
+        httpResponse.setResponseHeader("Cache-Control", "no-cache, no-store, must-revalidate, private, max-age=0");
         httpResponse.setResponseHeader("Pragma", "no-cache");
     }
     return httpResponse.sendResponse(str);
index 4f0ad5a..a3e654f 100644 (file)
@@ -117,8 +117,8 @@ pair<bool,long> FormSessionInitiator::run(SPRequest& request, string& entityID,
     preserveRelayState(app, request, target);
 
     request.setContentType("text/html");
-    request.setResponseHeader("Expires","01-Jan-1997 12:00:00 GMT");
-    request.setResponseHeader("Cache-Control","private,no-store,no-cache");
+    request.setResponseHeader("Expires","Wed, 01 Jan 1997 12:00:00 GMT");
+    request.setResponseHeader("Cache-Control","private,no-store,no-cache,max-age=0");
     string fname(m_template);
     ifstream infile(XMLToolingConfig::getConfig().getPathResolver()->resolve(fname, PathResolver::XMLTOOLING_CFG_FILE).c_str());
     if (!infile)
index 19c9785..253bde1 100644 (file)
@@ -69,8 +69,8 @@ pair<bool,long> LogoutHandler::sendLogoutPage(
         prop.second = tname.c_str();
     }
     response.setContentType("text/html");
-    response.setResponseHeader("Expires","01-Jan-1997 12:00:00 GMT");
-    response.setResponseHeader("Cache-Control","private,no-store,no-cache");
+    response.setResponseHeader("Expires","Wed, 01 Jan 1997 12:00:00 GMT");
+    response.setResponseHeader("Cache-Control","private,no-store,no-cache,max-age=0");
     string fname(prop.second);
     ifstream infile(XMLToolingConfig::getConfig().getPathResolver()->resolve(fname, PathResolver::XMLTOOLING_CFG_FILE).c_str());
     if (!infile)
index 5e04626..57d0fd7 100644 (file)
@@ -123,8 +123,8 @@ pair<bool,long> SessionHandler::run(SPRequest& request, bool isHandler) const
         if (!session) {
             s << "A valid session was not found.</pre></body></html>" << endl;
             request.setContentType("text/html");
-            request.setResponseHeader("Expires","01-Jan-1997 12:00:00 GMT");
-            request.setResponseHeader("Cache-Control","private,no-store,no-cache");
+            request.setResponseHeader("Expires","Wed, 01 Jan 1997 12:00:00 GMT");
+            request.setResponseHeader("Cache-Control","private,no-store,no-cache,max-age=0");
             return make_pair(true, request.sendResponse(s));
         }
     }
@@ -132,8 +132,8 @@ pair<bool,long> SessionHandler::run(SPRequest& request, bool isHandler) const
         s << "Exception while retrieving active session:" << endl
             << '\t' << ex.what() << "</pre></body></html>" << endl;
         request.setContentType("text/html");
-        request.setResponseHeader("Expires","01-Jan-1997 12:00:00 GMT");
-        request.setResponseHeader("Cache-Control","private,no-store,no-cache");
+        request.setResponseHeader("Expires","Wed, 01 Jan 1997 12:00:00 GMT");
+        request.setResponseHeader("Cache-Control","private,no-store,no-cache,max-age=0");
         return make_pair(true, request.sendResponse(s));
     }
 
@@ -198,7 +198,7 @@ pair<bool,long> SessionHandler::run(SPRequest& request, bool isHandler) const
 
     s << "</pre></body></html>";
     request.setContentType("text/html; charset=UTF-8");
-    request.setResponseHeader("Expires","01-Jan-1997 12:00:00 GMT");
-    request.setResponseHeader("Cache-Control","private,no-store,no-cache");
+    request.setResponseHeader("Expires","Wed, 01 Jan 1997 12:00:00 GMT");
+    request.setResponseHeader("Cache-Control","private,no-store,no-cache,max-age=0");
     return make_pair(true, request.sendResponse(s));
 }