Fix method signature mismatch, redeclare pure methods on pure subclasses.
authorScott Cantor <cantor.2@osu.edu>
Fri, 11 May 2007 05:20:38 +0000 (05:20 +0000)
committerScott Cantor <cantor.2@osu.edu>
Fri, 11 May 2007 05:20:38 +0000 (05:20 +0000)
xmltooling/encryption/impl/EncryptionImpl.cpp
xmltooling/security/OpenSSLTrustEngine.h
xmltooling/security/X509TrustEngine.h
xmltooling/soap/impl/SOAPImpl.cpp

index 1dd34a8..d5de5e4 100644 (file)
@@ -286,7 +286,7 @@ namespace xmlencryption {
         IMPL_STRING_ATTRIB(Target);
         IMPL_XMLOBJECT_CHILDREN(UnknownXMLObject, m_children.end());
 
-        void setAttribute(QName& qualifiedName, const XMLCh* value) {
+        void setAttribute(QName& qualifiedName, const XMLCh* value, bool ID=false) {
             if (!qualifiedName.hasNamespaceURI()) {
                 if (XMLString::equals(qualifiedName.getLocalPart(),ID_ATTRIB_NAME)) {
                     setId(value);
@@ -297,7 +297,7 @@ namespace xmlencryption {
                     return;
                 }
             }
-            AbstractAttributeExtensibleXMLObject::setAttribute(qualifiedName, value);
+            AbstractAttributeExtensibleXMLObject::setAttribute(qualifiedName, value, ID);
         }
 
     protected:
index fc17190..f8d08bc 100644 (file)
@@ -53,7 +53,30 @@ namespace xmltooling {
         
     public:
         virtual ~OpenSSLTrustEngine() {}
-        
+
+        virtual bool validate(
+            xmlsignature::Signature& sig,
+            const CredentialResolver& credResolver,
+            CredentialCriteria* criteria=NULL
+            ) const=0;
+
+        virtual bool validate(
+            const XMLCh* sigAlgorithm,
+            const char* sig,
+            xmlsignature::KeyInfo* keyInfo,
+            const char* in,
+            unsigned int in_len,
+            const CredentialResolver& credResolver,
+            CredentialCriteria* criteria=NULL
+            ) const=0;
+
+        virtual bool validate(
+            XSECCryptoX509* certEE,
+            const std::vector<XSECCryptoX509*>& certChain,
+            const CredentialResolver& credResolver,
+            CredentialCriteria* criteria=NULL
+            ) const=0;
+
         /**
          * Determines whether an X.509 credential is valid with respect to the
          * source of credentials supplied.
index 2501ace..0d45321 100644 (file)
@@ -49,7 +49,23 @@ namespace xmltooling {
         
     public:
         virtual ~X509TrustEngine() {}
-        
+
+        virtual bool validate(
+            xmlsignature::Signature& sig,
+            const CredentialResolver& credResolver,
+            CredentialCriteria* criteria=NULL
+            ) const=0;
+
+        virtual bool validate(
+            const XMLCh* sigAlgorithm,
+            const char* sig,
+            xmlsignature::KeyInfo* keyInfo,
+            const char* in,
+            unsigned int in_len,
+            const CredentialResolver& credResolver,
+            CredentialCriteria* criteria=NULL
+            ) const=0;
+
         /**
          * Determines whether an X.509 credential is valid with respect to the
          * source of credentials supplied.
index ebaeb91..2b33a47 100644 (file)
@@ -227,14 +227,14 @@ namespace {
         IMPL_STRING_ATTRIB(EncodingStyle);
         IMPL_XMLOBJECT_CHILDREN(UnknownXMLObject, m_children.end());
 
-        void setAttribute(QName& qualifiedName, const XMLCh* value) {
+        void setAttribute(QName& qualifiedName, const XMLCh* value, bool ID=false) {
             if (qualifiedName.hasNamespaceURI() && XMLString::equals(qualifiedName.getNamespaceURI(),SOAP11ENV_NS)) {
                 if (XMLString::equals(qualifiedName.getLocalPart(),ENCODINGSTYLE_ATTRIB_NAME)) {
                     setEncodingStyle(value);
                     return;
                 }
             }
-            AbstractAttributeExtensibleXMLObject::setAttribute(qualifiedName, value);
+            AbstractAttributeExtensibleXMLObject::setAttribute(qualifiedName, value, ID);
         }
 
     protected:
@@ -291,7 +291,7 @@ namespace {
         IMPL_BOOLEAN_ATTRIB(MustUnderstand);
         IMPL_XMLOBJECT_CHILDREN(UnknownXMLObject, m_children.end());
 
-        void setAttribute(QName& qualifiedName, const XMLCh* value) {
+        void setAttribute(QName& qualifiedName, const XMLCh* value, bool ID=false) {
             if (qualifiedName.hasNamespaceURI() && XMLString::equals(qualifiedName.getNamespaceURI(),SOAP11ENV_NS)) {
                 if (XMLString::equals(qualifiedName.getLocalPart(),MUSTUNDERSTAND_ATTRIB_NAME)) {
                     setMustUnderstand(value);
@@ -302,7 +302,7 @@ namespace {
                     return;
                 }
             }
-            AbstractAttributeExtensibleXMLObject::setAttribute(qualifiedName, value);
+            AbstractAttributeExtensibleXMLObject::setAttribute(qualifiedName, value, ID);
         }
 
     protected: