X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=saml%2Fbinding%2FMessageFlowRule.h;h=9ffaa7c564efc8aba29905b34edaa4b15de45a0d;hb=2cf60ce131535beae932489d2d1e3d2355799061;hp=885b82a60120536a595e2add5915ea74c67fef6a;hpb=b7c9dedddf0c9b1a799d993bf69ee8f130c6b8a9;p=shibboleth%2Fopensaml2.git diff --git a/saml/binding/MessageFlowRule.h b/saml/binding/MessageFlowRule.h index 885b82a..9ffaa7c 100644 --- a/saml/binding/MessageFlowRule.h +++ b/saml/binding/MessageFlowRule.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2006 Internet2 + * Copyright 2001-2007 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,6 +20,9 @@ * SAML replay and freshness checking SecurityPolicyRule */ +#ifndef __saml_flowrule_h__ +#define __saml_flowrule_h__ + #include @@ -27,8 +30,8 @@ namespace opensaml { /** * SAML replay and freshness checking SecurityPolicyRule * - * Subclasses can provide support for additional message types - * by overriding the main method and then calling the check method. + * Some form of message rule to extract ID and timestamp must be + * run prior to this rule. */ class SAML_API MessageFlowRule : public SecurityPolicyRule { @@ -36,13 +39,7 @@ namespace opensaml { MessageFlowRule(const DOMElement* e); virtual ~MessageFlowRule() {} - std::pair evaluate( - const xmltooling::XMLObject& message, - const GenericRequest* request, - const saml2md::MetadataProvider* metadataProvider, - const xmltooling::QName* role, - const xmltooling::TrustEngine* trustEngine - ) const; + void evaluate(const xmltooling::XMLObject& message, const GenericRequest* request, SecurityPolicy& policy) const; /** * Controls whether rule executes replay checking. @@ -61,17 +58,6 @@ namespace opensaml { void setExpires(time_t expires) { m_expires = expires; } - - protected: - /** - * Performs the check. - * - * @param id message identifier - * @param issueInstant timestamp of protocol message - * - * @exception BindingException raised if a check fails - */ - void check(const XMLCh* id, time_t issueInstant) const; private: bool m_checkReplay; @@ -79,3 +65,5 @@ namespace opensaml { }; }; + +#endif /* __saml_flowrule_h__ */