Merge commit '2.5.0' into moonshot-packaging-fixes
[shibboleth/sp.git] / shibsp / handler / Handler.h
index 5c93e1e..3a9a325 100644 (file)
@@ -63,6 +63,20 @@ namespace shibsp {
         virtual void log(SPRequest::SPLogLevel level, const std::string& msg) const;
 
         /**
+         * Prevents unused relay state from building up by cleaning old state from the client.
+         *
+         * <p>Handlers that generate relay state should call this method as a house cleaning
+         * step.
+         *
+         * @param application   the associated Application
+         * @param request       incoming HTTP request
+         * @param response      outgoing HTTP response
+         */
+        virtual void cleanRelayState(
+            const Application& application, const xmltooling::HTTPRequest& request, xmltooling::HTTPResponse& response
+            ) const;
+
+        /**
          * Implements various mechanisms to preserve RelayState,
          * such as cookies or StorageService-backed keys.
          *
@@ -158,9 +172,15 @@ namespace shibsp {
     /** Handler for SAML 2.0 Artifact Resolution. */
     #define SAML20_ARTIFACT_RESOLUTION_SERVICE "SAML2"
 
+    /** Handler for hooking new sessions with attribute checking. */
+    #define ATTR_CHECKER_HANDLER "AttributeChecker"
+
     /** Handler for metadata generation. */
     #define DISCOVERY_FEED_HANDLER "DiscoveryFeed"
 
+    /** Handler for external authentication integration. */
+    #define EXTERNAL_AUTH_HANDLER "ExternalAuth"
+
     /** Handler for metadata generation. */
     #define METADATA_GENERATOR_HANDLER "MetadataGenerator"