From: Scott Cantor Date: Sun, 27 Sep 2009 04:19:58 +0000 (+0000) Subject: Reducing header overuse, non-inlining selected methods (CPPOST-35). X-Git-Tag: 2.3~26 X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-opensaml.git;a=commitdiff_plain;h=c072b75e6f6e05e24a1c35b952008b38d0d375c1 Reducing header overuse, non-inlining selected methods (CPPOST-35). --- diff --git a/.cproject b/.cproject index 0e7d6b7..b095d59 100644 --- a/.cproject +++ b/.cproject @@ -1,7 +1,4 @@ - - - - + @@ -74,7 +71,7 @@ - + diff --git a/saml/RootObject.h b/saml/RootObject.h index 1f143bd..d0a459b 100644 --- a/saml/RootObject.h +++ b/saml/RootObject.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,7 +24,10 @@ #define __saml_root_h__ #include -#include + +namespace xmltooling { + class XMLTOOL_API DateTime; +}; namespace opensaml { diff --git a/saml/SAMLConfig.h b/saml/SAMLConfig.h index e36640e..97d1bbf 100644 --- a/saml/SAMLConfig.h +++ b/saml/SAMLConfig.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,7 +17,7 @@ /** * @file saml/SAMLConfig.h * - * Library configuration + * Library configuration. */ #ifndef __saml_config_h__ @@ -25,10 +25,9 @@ #include -#include -#include - #include +#include +#include /** * @namespace opensaml diff --git a/saml/binding/ArtifactMap.h b/saml/binding/ArtifactMap.h index d55ac29..c6a513d 100644 --- a/saml/binding/ArtifactMap.h +++ b/saml/binding/ArtifactMap.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,9 +24,11 @@ #define __saml_artmap_h__ #include -#include -#include -#include + +namespace xmltooling { + class XMLTOOL_API StorageService; + class XMLTOOL_API XMLObject; +}; namespace opensaml { diff --git a/saml/binding/MessageDecoder.h b/saml/binding/MessageDecoder.h index 479f199..0b37017 100644 --- a/saml/binding/MessageDecoder.h +++ b/saml/binding/MessageDecoder.h @@ -23,13 +23,17 @@ #ifndef __saml_decoder_h__ #define __saml_decoder_h__ -#include -#include -#include +#include + +namespace xmltooling { + class XMLTOOL_API GenericRequest; + class XMLTOOL_API XMLObject; +}; namespace opensaml { class SAML_API SAMLArtifact; + class SAML_API SecurityPolicy; namespace saml1p { class SAML_API Response; }; @@ -58,9 +62,7 @@ namespace opensaml { * * @return true iff the message was delivered by a user agent */ - virtual bool isUserAgentPresent() const { - return true; - } + virtual bool isUserAgentPresent() const; /** * Interface to caller-supplied artifact resolution mechanism. diff --git a/saml/binding/MessageEncoder.h b/saml/binding/MessageEncoder.h index dcbd86d..eb2db16 100644 --- a/saml/binding/MessageEncoder.h +++ b/saml/binding/MessageEncoder.h @@ -25,10 +25,11 @@ #include -#include -#include -#include -#include +namespace xmltooling { + class XMLTOOL_API Credential; + class XMLTOOL_API GenericResponse; + class XMLTOOL_API XMLObject; +}; namespace opensaml { @@ -54,18 +55,14 @@ namespace opensaml { * * @return true iff the encoding has size constraints */ - virtual bool isCompact() const { - return false; - } + virtual bool isCompact() const; /** * Indicates whether a web browser or similar user agent will receive the message. * * @return true iff the message will be handled by a user agent */ - virtual bool isUserAgentPresent() const { - return true; - } + virtual bool isUserAgentPresent() const; /** * Interface to caller-supplied artifact generation mechanism. diff --git a/saml/binding/SAMLArtifact.h b/saml/binding/SAMLArtifact.h index 9cdd958..9e7aa0d 100644 --- a/saml/binding/SAMLArtifact.h +++ b/saml/binding/SAMLArtifact.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,7 +17,7 @@ /** * @file saml/binding/SAMLArtifact.h * - * Base class for SAML 1.x and 2.0 artifacts + * Base class for SAML 1.x and 2.0 artifacts. */ #ifndef __saml_artifact_h__ @@ -26,7 +26,6 @@ #include #include -#include namespace opensaml { @@ -57,9 +56,7 @@ namespace opensaml { * * @return the binary artifact data */ - virtual std::string getBytes() const { - return m_raw; - } + virtual std::string getBytes() const; /** * Returns the binary type code of the artifact. @@ -67,9 +64,7 @@ namespace opensaml { * * @return the binary type code */ - virtual std::string getTypeCode() const { - return m_raw.substr(0,TYPECODE_LENGTH); - } + virtual std::string getTypeCode() const; /** * Returns the binary artifact data following the type code. @@ -77,9 +72,7 @@ namespace opensaml { * * @return the binary artifact data */ - virtual std::string getRemainingArtifact() const { - return m_raw.substr(TYPECODE_LENGTH); - } + virtual std::string getRemainingArtifact() const; /** * Returns a string that identifies the source of the artifact. @@ -118,10 +111,7 @@ namespace opensaml { * @param s base64-encoded artifact * @return the decoded artifact */ - static SAMLArtifact* parse(const XMLCh* s) { - xmltooling::auto_ptr_char temp(s); - return parse(temp.get()); - } + static SAMLArtifact* parse(const XMLCh* s); /** * Converts binary data to hex notation. diff --git a/saml/binding/SOAPClient.h b/saml/binding/SOAPClient.h index 8fd00e1..3fc9fd1 100644 --- a/saml/binding/SOAPClient.h +++ b/saml/binding/SOAPClient.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,12 +23,14 @@ #ifndef __saml_soap11client_h__ #define __saml_soap11client_h__ -#include #include + #include namespace opensaml { + class SAML_API SecurityPolicy; + /** * Specialized SOAPClient for SAML SOAP bindings. */ @@ -40,12 +42,9 @@ namespace opensaml { * * @param policy reference to SecurityPolicy to apply */ - SOAPClient(SecurityPolicy& policy) - : soap11::SOAPClient(policy.getValidating()), m_policy(policy), m_force(true), m_peer(NULL), m_criteria(NULL) { - } + SOAPClient(SecurityPolicy& policy); - virtual ~SOAPClient() { - } + virtual ~SOAPClient() {} /** * Controls whether to force transport/peer authentication via an X509TrustEngine. diff --git a/saml/binding/SecurityPolicy.h b/saml/binding/SecurityPolicy.h index 35bc4cf..cb05450 100644 --- a/saml/binding/SecurityPolicy.h +++ b/saml/binding/SecurityPolicy.h @@ -27,14 +27,17 @@ #include #include -#include -#include #if defined (_MSC_VER) #pragma warning( push ) #pragma warning( disable : 4250 4251 ) #endif +namespace xmltooling { + class XMLTOOL_API GenericRequest; + class XMLTOOL_API TrustEngine; +}; + namespace opensaml { namespace saml2 { diff --git a/saml/binding/SecurityPolicyRule.h b/saml/binding/SecurityPolicyRule.h index 8653f98..884264d 100644 --- a/saml/binding/SecurityPolicyRule.h +++ b/saml/binding/SecurityPolicyRule.h @@ -23,9 +23,15 @@ #ifndef __saml_secrule_h__ #define __saml_secrule_h__ -#include +#include + +namespace xmltooling { + class XMLTOOL_API GenericRequest; + class XMLTOOL_API XMLObject; +}; namespace opensaml { + class SAML_API SecurityPolicy; /** * A rule that a protocol request and message must meet in order to be valid and secure. diff --git a/saml/binding/impl/ArtifactMap.cpp b/saml/binding/impl/ArtifactMap.cpp index 19c92a1..8b755b3 100644 --- a/saml/binding/impl/ArtifactMap.cpp +++ b/saml/binding/impl/ArtifactMap.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,11 +25,15 @@ #include "binding/ArtifactMap.h" #include "binding/SAMLArtifact.h" +#include #include #include #include +#include #include +#include #include +#include using namespace opensaml; using namespace xmltooling::logging; diff --git a/saml/binding/impl/ClientCertAuthRule.cpp b/saml/binding/impl/ClientCertAuthRule.cpp index 382eb10..5d5715b 100644 --- a/saml/binding/impl/ClientCertAuthRule.cpp +++ b/saml/binding/impl/ClientCertAuthRule.cpp @@ -22,12 +22,14 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include "saml2/metadata/Metadata.h" #include "saml2/metadata/MetadataCredentialCriteria.h" #include "saml2/metadata/MetadataProvider.h" #include +#include #include #include #include @@ -88,7 +90,7 @@ bool ClientCertAuthRule::evaluate(const XMLObject& message, const GenericRequest return false; } - const std::vector& chain = request->getClientCertificates(); + const vector& chain = request->getClientCertificates(); if (chain.empty()) return false; diff --git a/saml/binding/impl/MessageDecoder.cpp b/saml/binding/impl/MessageDecoder.cpp index a185ba2..42039f4 100644 --- a/saml/binding/impl/MessageDecoder.cpp +++ b/saml/binding/impl/MessageDecoder.cpp @@ -66,6 +66,11 @@ void SAML_API opensaml::registerMessageDecoders() XMLObjectBuilder::registerBuilder(xmltooling::QName(samlconstants::SAML20ECP_NS, RelayState), new AnyElementBuilder()); } +bool MessageDecoder::isUserAgentPresent() const +{ + return true; +} + bool MessageDecoder::ArtifactResolver::isSupported(const SSODescriptorType& ssoDescriptor) const { EndpointManager mgr(ssoDescriptor.getArtifactResolutionServices()); diff --git a/saml/binding/impl/MessageEncoder.cpp b/saml/binding/impl/MessageEncoder.cpp index 6799c81..88f41da 100644 --- a/saml/binding/impl/MessageEncoder.cpp +++ b/saml/binding/impl/MessageEncoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -62,3 +62,13 @@ void SAML_API opensaml::registerMessageEncoders() conf.MessageEncoderManager.registerFactory(samlconstants::SAML20_BINDING_SOAP, saml2p::SAML2SOAPEncoderFactory); conf.MessageEncoderManager.registerFactory(samlconstants::SAML20_BINDING_PAOS, saml2p::SAML2ECPEncoderFactory); } + +bool MessageEncoder::isCompact() const +{ + return false; +} + +bool MessageEncoder::isUserAgentPresent() const +{ + return true; +} diff --git a/saml/binding/impl/MessageFlowRule.cpp b/saml/binding/impl/MessageFlowRule.cpp index 4ef7632..f19c815 100644 --- a/saml/binding/impl/MessageFlowRule.cpp +++ b/saml/binding/impl/MessageFlowRule.cpp @@ -22,9 +22,11 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include +#include #include #include diff --git a/saml/binding/impl/NullSecurityRule.cpp b/saml/binding/impl/NullSecurityRule.cpp index 0fe25ce..51a3d6a 100644 --- a/saml/binding/impl/NullSecurityRule.cpp +++ b/saml/binding/impl/NullSecurityRule.cpp @@ -21,6 +21,7 @@ */ #include "internal.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include diff --git a/saml/binding/impl/SAMLArtifact.cpp b/saml/binding/impl/SAMLArtifact.cpp index c3358fa..755089e 100644 --- a/saml/binding/impl/SAMLArtifact.cpp +++ b/saml/binding/impl/SAMLArtifact.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,13 +17,15 @@ /** * SAMLArtifact.cpp * - * Base class for SAML 1.x and 2.0 artifacts + * Base class for SAML 1.x and 2.0 artifacts. */ #include "internal.h" #include "binding/SAMLArtifact.h" #include +#include +#include using namespace opensaml; using namespace xmltooling; @@ -75,6 +77,21 @@ SAMLArtifact::SAMLArtifact(const char* s) #endif } +string SAMLArtifact::getBytes() const +{ + return m_raw; +} + +string SAMLArtifact::getTypeCode() const +{ + return m_raw.substr(0,TYPECODE_LENGTH); +} + +string SAMLArtifact::getRemainingArtifact() const +{ + return m_raw.substr(TYPECODE_LENGTH); +} + string SAMLArtifact::encode() const { xsecsize_t len=0; @@ -111,6 +128,12 @@ SAMLArtifact* SAMLArtifact::parse(const char* s) return SAMLConfig::getConfig().SAMLArtifactManager.newPlugin(type,s); } +SAMLArtifact* SAMLArtifact::parse(const XMLCh* s) +{ + auto_ptr_char temp(s); + return parse(temp.get()); +} + string SAMLArtifact::toHex(const string& s) { static char DIGITS[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; diff --git a/saml/binding/impl/SOAPClient.cpp b/saml/binding/impl/SOAPClient.cpp index 9aca512..ac29569 100644 --- a/saml/binding/impl/SOAPClient.cpp +++ b/saml/binding/impl/SOAPClient.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ #include "internal.h" #include "exceptions.h" #include "version.h" +#include "binding/SecurityPolicy.h" #include "binding/SOAPClient.h" #include "saml2/metadata/Metadata.h" #include "saml2/metadata/MetadataProvider.h" @@ -37,6 +38,11 @@ using namespace opensaml; using namespace xmltooling; using namespace std; +SOAPClient::SOAPClient(SecurityPolicy& policy) + : soap11::SOAPClient(policy.getValidating()), m_policy(policy), m_force(true), m_peer(NULL), m_criteria(NULL) +{ +} + void SOAPClient::send(const soap11::Envelope& env, const char* from, MetadataCredentialCriteria& to, const char* endpoint) { // Clear policy. diff --git a/saml/binding/impl/SecurityPolicy.cpp b/saml/binding/impl/SecurityPolicy.cpp index f473153..540cdae 100644 --- a/saml/binding/impl/SecurityPolicy.cpp +++ b/saml/binding/impl/SecurityPolicy.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include "saml2/core/Assertions.h" diff --git a/saml/binding/impl/SimpleSigningRule.cpp b/saml/binding/impl/SimpleSigningRule.cpp index c16dd7e..a48f040 100644 --- a/saml/binding/impl/SimpleSigningRule.cpp +++ b/saml/binding/impl/SimpleSigningRule.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include "saml2/core/Assertions.h" #include "saml2/metadata/Metadata.h" @@ -30,6 +31,7 @@ #include #include +#include #include #include diff --git a/saml/binding/impl/XMLSigningRule.cpp b/saml/binding/impl/XMLSigningRule.cpp index 5ebf1e2..12f459d 100644 --- a/saml/binding/impl/XMLSigningRule.cpp +++ b/saml/binding/impl/XMLSigningRule.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include "saml2/core/Assertions.h" #include "saml2/metadata/Metadata.h" diff --git a/saml/profile/impl/AudienceRestrictionRule.cpp b/saml/profile/impl/AudienceRestrictionRule.cpp index f87107e..ff0fceb 100644 --- a/saml/profile/impl/AudienceRestrictionRule.cpp +++ b/saml/profile/impl/AudienceRestrictionRule.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include "saml1/core/Assertions.h" #include "saml2/core/Assertions.h" diff --git a/saml/profile/impl/ConditionsRule.cpp b/saml/profile/impl/ConditionsRule.cpp index 9f417d8..13599fa 100644 --- a/saml/profile/impl/ConditionsRule.cpp +++ b/saml/profile/impl/ConditionsRule.cpp @@ -22,11 +22,13 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "binding/SecurityPolicyRule.h" #include "saml1/core/Assertions.h" #include "saml2/core/Assertions.h" #include +#include using namespace opensaml; using namespace xmltooling::logging; diff --git a/saml/profile/impl/IgnoreRule.cpp b/saml/profile/impl/IgnoreRule.cpp index f602424..4a3b104 100644 --- a/saml/profile/impl/IgnoreRule.cpp +++ b/saml/profile/impl/IgnoreRule.cpp @@ -25,6 +25,7 @@ #include "binding/SecurityPolicyRule.h" #include +#include #include using namespace opensaml; diff --git a/saml/saml1/binding/SAML1SOAPClient.h b/saml/saml1/binding/SAML1SOAPClient.h index c039649..0b8a3f1 100644 --- a/saml/saml1/binding/SAML1SOAPClient.h +++ b/saml/saml1/binding/SAML1SOAPClient.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,10 +23,16 @@ #ifndef __saml1_soap11client_h__ #define __saml1_soap11client_h__ -#include +#include namespace opensaml { + class SAML_API SOAPClient; + + namespace saml2md { + class SAML_API MetadataCredentialCriteria; + }; + namespace saml1p { class SAML_API Request; diff --git a/saml/saml1/binding/impl/SAML1ArtifactDecoder.cpp b/saml/saml1/binding/impl/SAML1ArtifactDecoder.cpp index 5e15190..a5f5fc7 100644 --- a/saml/saml1/binding/impl/SAML1ArtifactDecoder.cpp +++ b/saml/saml1/binding/impl/SAML1ArtifactDecoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,12 +23,14 @@ #include "internal.h" #include "exceptions.h" #include "binding/SAMLArtifact.h" +#include "binding/SecurityPolicy.h" #include "saml1/binding/SAML1MessageDecoder.h" #include "saml1/core/Protocols.h" #include "saml2/metadata/Metadata.h" #include "saml2/metadata/MetadataProvider.h" #include +#include #include #include #include diff --git a/saml/saml1/binding/impl/SAML1MessageDecoder.cpp b/saml/saml1/binding/impl/SAML1MessageDecoder.cpp index 39dfcc1..8a751b9 100644 --- a/saml/saml1/binding/impl/SAML1MessageDecoder.cpp +++ b/saml/saml1/binding/impl/SAML1MessageDecoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml1/binding/SAML1MessageDecoder.h" #include "saml1/core/Assertions.h" #include "saml1/core/Protocols.h" diff --git a/saml/saml1/binding/impl/SAML1POSTDecoder.cpp b/saml/saml1/binding/impl/SAML1POSTDecoder.cpp index 923d61b..6b543c0 100644 --- a/saml/saml1/binding/impl/SAML1POSTDecoder.cpp +++ b/saml/saml1/binding/impl/SAML1POSTDecoder.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml1/binding/SAML1MessageDecoder.h" #include "saml1/core/Assertions.h" #include "saml1/core/Protocols.h" @@ -32,6 +33,7 @@ #include #include #include +#include #include #include #include diff --git a/saml/saml1/binding/impl/SAML1POSTEncoder.cpp b/saml/saml1/binding/impl/SAML1POSTEncoder.cpp index d362a3d..600cd4b 100644 --- a/saml/saml1/binding/impl/SAML1POSTEncoder.cpp +++ b/saml/saml1/binding/impl/SAML1POSTEncoder.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include diff --git a/saml/saml1/binding/impl/SAML1SOAPClient.cpp b/saml/saml1/binding/impl/SAML1SOAPClient.cpp index 42dae01..d6e86ee 100644 --- a/saml/saml1/binding/impl/SAML1SOAPClient.cpp +++ b/saml/saml1/binding/impl/SAML1SOAPClient.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,8 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" +#include "binding/SOAPClient.h" #include "saml1/binding/SAML1SOAPClient.h" #include "saml1/core/Protocols.h" #include "saml2/metadata/Metadata.h" diff --git a/saml/saml1/binding/impl/SAML1SOAPDecoder.cpp b/saml/saml1/binding/impl/SAML1SOAPDecoder.cpp index 74c1960..9f6d4c5 100644 --- a/saml/saml1/binding/impl/SAML1SOAPDecoder.cpp +++ b/saml/saml1/binding/impl/SAML1SOAPDecoder.cpp @@ -22,10 +22,13 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml1/binding/SAML1MessageDecoder.h" #include "saml1/core/Protocols.h" #include +#include +#include #include #include #include diff --git a/saml/saml1/profile/impl/AssertionValidator.cpp b/saml/saml1/profile/impl/AssertionValidator.cpp index a7b2ada..edb4fce 100644 --- a/saml/saml1/profile/impl/AssertionValidator.cpp +++ b/saml/saml1/profile/impl/AssertionValidator.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,6 +25,7 @@ #include "saml1/profile/AssertionValidator.h" #include +#include #include using namespace opensaml::saml1; diff --git a/saml/saml2/binding/SAML2SOAPClient.h b/saml/saml2/binding/SAML2SOAPClient.h index c5d35cc..a02ff50 100644 --- a/saml/saml2/binding/SAML2SOAPClient.h +++ b/saml/saml2/binding/SAML2SOAPClient.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,10 +23,16 @@ #ifndef __saml2_soap11client_h__ #define __saml2_soap11client_h__ -#include +#include namespace opensaml { + class SAML_API SOAPClient; + + namespace saml2md { + class SAML_API MetadataCredentialCriteria; + }; + namespace saml2p { class SAML_API RequestAbstractType; diff --git a/saml/saml2/binding/impl/SAML2ArtifactDecoder.cpp b/saml/saml2/binding/impl/SAML2ArtifactDecoder.cpp index 081787f..e9fab4d 100644 --- a/saml/saml2/binding/impl/SAML2ArtifactDecoder.cpp +++ b/saml/saml2/binding/impl/SAML2ArtifactDecoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml2/binding/SAML2Artifact.h" #include "saml2/binding/SAML2MessageDecoder.h" #include "saml2/core/Protocols.h" @@ -29,6 +30,7 @@ #include "saml2/metadata/MetadataProvider.h" #include +#include #include #include #include diff --git a/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp b/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp index ea879a0..9ac6dea 100644 --- a/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp +++ b/saml/saml2/binding/impl/SAML2ArtifactEncoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include diff --git a/saml/saml2/binding/impl/SAML2ECPDecoder.cpp b/saml/saml2/binding/impl/SAML2ECPDecoder.cpp index 671e0e7..3446fdf 100644 --- a/saml/saml2/binding/impl/SAML2ECPDecoder.cpp +++ b/saml/saml2/binding/impl/SAML2ECPDecoder.cpp @@ -22,10 +22,12 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml2/binding/SAML2MessageDecoder.h" #include "saml2/core/Protocols.h" #include +#include #include #include #include diff --git a/saml/saml2/binding/impl/SAML2MessageDecoder.cpp b/saml/saml2/binding/impl/SAML2MessageDecoder.cpp index b79d313..5b83605 100644 --- a/saml/saml2/binding/impl/SAML2MessageDecoder.cpp +++ b/saml/saml2/binding/impl/SAML2MessageDecoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml2/binding/SAML2MessageDecoder.h" #include "saml2/core/Protocols.h" #include "saml2/metadata/Metadata.h" diff --git a/saml/saml2/binding/impl/SAML2POSTDecoder.cpp b/saml/saml2/binding/impl/SAML2POSTDecoder.cpp index 99a5f3c..87c5da1 100644 --- a/saml/saml2/binding/impl/SAML2POSTDecoder.cpp +++ b/saml/saml2/binding/impl/SAML2POSTDecoder.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml2/binding/SAML2MessageDecoder.h" #include "saml2/core/Protocols.h" #include "saml2/metadata/Metadata.h" @@ -31,6 +32,7 @@ #include #include #include +#include #include #include #include diff --git a/saml/saml2/binding/impl/SAML2POSTEncoder.cpp b/saml/saml2/binding/impl/SAML2POSTEncoder.cpp index 6fc4bc6..e4cdc92 100644 --- a/saml/saml2/binding/impl/SAML2POSTEncoder.cpp +++ b/saml/saml2/binding/impl/SAML2POSTEncoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,8 +29,11 @@ #include #include #include -#include +#include #include +#include +#include +#include #include #include #include diff --git a/saml/saml2/binding/impl/SAML2RedirectDecoder.cpp b/saml/saml2/binding/impl/SAML2RedirectDecoder.cpp index ddffd3b..b972f98 100644 --- a/saml/saml2/binding/impl/SAML2RedirectDecoder.cpp +++ b/saml/saml2/binding/impl/SAML2RedirectDecoder.cpp @@ -22,6 +22,7 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml2/binding/SAML2MessageDecoder.h" #include "saml2/binding/SAML2Redirect.h" #include "saml2/core/Protocols.h" @@ -30,6 +31,7 @@ #include #include +#include #include #include #include diff --git a/saml/saml2/binding/impl/SAML2RedirectEncoder.cpp b/saml/saml2/binding/impl/SAML2RedirectEncoder.cpp index 006185e..f6e1214 100644 --- a/saml/saml2/binding/impl/SAML2RedirectEncoder.cpp +++ b/saml/saml2/binding/impl/SAML2RedirectEncoder.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,8 +29,11 @@ #include #include #include +#include #include +#include #include +#include #include #include diff --git a/saml/saml2/binding/impl/SAML2SOAPClient.cpp b/saml/saml2/binding/impl/SAML2SOAPClient.cpp index 7c94c5d..2da5a0d 100644 --- a/saml/saml2/binding/impl/SAML2SOAPClient.cpp +++ b/saml/saml2/binding/impl/SAML2SOAPClient.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,6 +22,8 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" +#include "binding/SOAPClient.h" #include "saml2/binding/SAML2SOAPClient.h" #include "saml2/core/Protocols.h" #include "saml2/metadata/Metadata.h" diff --git a/saml/saml2/binding/impl/SAML2SOAPDecoder.cpp b/saml/saml2/binding/impl/SAML2SOAPDecoder.cpp index 346aa99..c712529 100644 --- a/saml/saml2/binding/impl/SAML2SOAPDecoder.cpp +++ b/saml/saml2/binding/impl/SAML2SOAPDecoder.cpp @@ -22,10 +22,13 @@ #include "internal.h" #include "exceptions.h" +#include "binding/SecurityPolicy.h" #include "saml2/binding/SAML2MessageDecoder.h" #include "saml2/core/Protocols.h" #include +#include +#include #include #include #include diff --git a/saml/saml2/core/impl/Assertions.cpp b/saml/saml2/core/impl/Assertions.cpp index 9b5495c..6dbd6c8 100644 --- a/saml/saml2/core/impl/Assertions.cpp +++ b/saml/saml2/core/impl/Assertions.cpp @@ -30,6 +30,7 @@ #include "saml2/metadata/MetadataCredentialCriteria.h" #include +#include #include #include #include diff --git a/saml/saml2/metadata/AbstractMetadataProvider.h b/saml/saml2/metadata/AbstractMetadataProvider.h index 50d00f1..723da5d 100644 --- a/saml/saml2/metadata/AbstractMetadataProvider.h +++ b/saml/saml2/metadata/AbstractMetadataProvider.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2007 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +29,10 @@ #include #include +namespace xmltooling { + class XMLTOOL_API KeyInfoResolver; +}; + namespace opensaml { namespace saml2md { diff --git a/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp b/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp index fd7948c..2852bb6 100644 --- a/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp +++ b/saml/saml2/metadata/impl/AbstractMetadataProvider.cpp @@ -28,6 +28,7 @@ #include "saml2/metadata/MetadataCredentialCriteria.h" #include +#include #include #include diff --git a/saml/saml2/metadata/impl/DynamicMetadataProvider.cpp b/saml/saml2/metadata/impl/DynamicMetadataProvider.cpp index 44fdeac..350eca6 100644 --- a/saml/saml2/metadata/impl/DynamicMetadataProvider.cpp +++ b/saml/saml2/metadata/impl/DynamicMetadataProvider.cpp @@ -28,6 +28,7 @@ #include #include #include +#include #include #include diff --git a/saml/saml2/metadata/impl/SignatureMetadataFilter.cpp b/saml/saml2/metadata/impl/SignatureMetadataFilter.cpp index 3bebcd7..ea8f0f4 100644 --- a/saml/saml2/metadata/impl/SignatureMetadataFilter.cpp +++ b/saml/saml2/metadata/impl/SignatureMetadataFilter.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2008 Internet2 + * Copyright 2001-2009 Internet2 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ #include "signature/SignatureProfileValidator.h" #include +#include #include #include #include diff --git a/saml/saml2/profile/impl/Assertion20Validator.cpp b/saml/saml2/profile/impl/Assertion20Validator.cpp index 463c45c..b5c857f 100644 --- a/saml/saml2/profile/impl/Assertion20Validator.cpp +++ b/saml/saml2/profile/impl/Assertion20Validator.cpp @@ -25,6 +25,7 @@ #include "saml2/profile/AssertionValidator.h" #include +#include #include using namespace opensaml::saml2; diff --git a/saml/saml2/profile/impl/BearerConfirmationRule.cpp b/saml/saml2/profile/impl/BearerConfirmationRule.cpp index 91a2632..13f16c8 100644 --- a/saml/saml2/profile/impl/BearerConfirmationRule.cpp +++ b/saml/saml2/profile/impl/BearerConfirmationRule.cpp @@ -27,6 +27,7 @@ #include "saml2/profile/SAML2AssertionPolicy.h" #include +#include #include using namespace opensaml::saml2; diff --git a/saml/saml2/profile/impl/BrowserSSOProfile20Validator.cpp b/saml/saml2/profile/impl/BrowserSSOProfile20Validator.cpp index 67b43a9..c248ea9 100644 --- a/saml/saml2/profile/impl/BrowserSSOProfile20Validator.cpp +++ b/saml/saml2/profile/impl/BrowserSSOProfile20Validator.cpp @@ -25,6 +25,7 @@ #include "saml2/profile/BrowserSSOProfileValidator.h" #include +#include #include using namespace opensaml::saml2; diff --git a/saml/saml2/profile/impl/DelegationRestrictionRule.cpp b/saml/saml2/profile/impl/DelegationRestrictionRule.cpp index cad245a..6a9100c 100644 --- a/saml/saml2/profile/impl/DelegationRestrictionRule.cpp +++ b/saml/saml2/profile/impl/DelegationRestrictionRule.cpp @@ -26,7 +26,9 @@ #include "saml2/core/Assertions.h" #include "util/SAMLConstants.h" +#include #include +#include using namespace opensaml::saml2; using namespace opensaml; diff --git a/saml/signature/ContentReference.h b/saml/signature/ContentReference.h index 0d77133..1a197e8 100644 --- a/saml/signature/ContentReference.h +++ b/saml/signature/ContentReference.h @@ -34,6 +34,11 @@ namespace opensaml { class SAML_API SignableObject; +#if defined (_MSC_VER) + #pragma warning( push ) + #pragma warning( disable : 4251 ) +#endif + /** * SAML-specific signature reference profile. */ @@ -102,6 +107,9 @@ namespace opensaml { const XMLCh* m_c14n; }; +#if defined (_MSC_VER) + #pragma warning( pop ) +#endif }; #endif /* __saml_sigref_h__ */