Apply manual validators even when schema was used.
[shibboleth/cpp-opensaml.git] / saml / saml2 / binding / impl / SAML2POSTDecoder.cpp
index fb0342b..99a5f3c 100644 (file)
@@ -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.
@@ -94,11 +94,11 @@ XMLObject* SAML2POSTDecoder::decode(
         relayState.erase();
 
     // Decode the base64 into SAML.
-    unsigned int x;
+    xsecsize_t x;
     XMLByte* decoded=Base64::decode(reinterpret_cast<const XMLByte*>(msg),&x);
     if (!decoded)
         throw BindingException("Unable to decode base64 in POST binding message.");
-    log.debugStream() << "decoded SAML message:" << logging::eol << decoded << logging::eol;
+    log.debugStream() << "decoded SAML message:\n" << decoded << logging::eol;
     
     // Parse and bind the document into an XMLObject.
     MemBufInputSource src(decoded, x, "SAMLMessage", true);
@@ -122,8 +122,7 @@ XMLObject* SAML2POSTDecoder::decode(
         root = static_cast<saml2::RootObject*>(request);
     }
     
-    if (!policy.getValidating())
-        SchemaValidators.validate(root);
+    SchemaValidators.validate(root);
 
     // Run through the policy.
     extractMessageDetails(*root, genericRequest, samlconstants::SAML20P_NS, policy);