From 42c5dc3b299f918cf267ba097d6356a5f2029ef7 Mon Sep 17 00:00:00 2001 From: Olav Morken <olav.morken@uninett.no> Date: Mon, 13 Sep 2010 07:27:53 +0000 Subject: [PATCH] Utilities::debugMessage: Allow DOMelement as $message parameter. git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@2546 44740490-163a-0410-bde0-09ae8108e29a --- lib/SAML2/EncryptedAssertion.php | 6 ++---- lib/SimpleSAML/Utilities.php | 8 ++++++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/lib/SAML2/EncryptedAssertion.php b/lib/SAML2/EncryptedAssertion.php index 5084ebb6d..9c69ad08c 100644 --- a/lib/SAML2/EncryptedAssertion.php +++ b/lib/SAML2/EncryptedAssertion.php @@ -46,8 +46,7 @@ class SAML2_EncryptedAssertion { $xml = $assertion->toXML(); - $xmlStr = $xml->ownerDocument->saveXML($xml); - SimpleSAML_Utilities::debugMessage($xmlStr, 'encrypt'); + SimpleSAML_Utilities::debugMessage($xml, 'encrypt'); $enc = new XMLSecEnc(); $enc->setNode($xml); @@ -88,8 +87,7 @@ class SAML2_EncryptedAssertion { $assertionXML = SAML2_Utils::decryptElement($this->encryptedData, $inputKey); - $xmlStr = $assertionXML->ownerDocument->saveXML($assertionXML); - SimpleSAML_Utilities::debugMessage($xmlStr, 'decrypt'); + SimpleSAML_Utilities::debugMessage($assertionXML, 'decrypt'); return new SAML2_Assertion($assertionXML); } diff --git a/lib/SimpleSAML/Utilities.php b/lib/SimpleSAML/Utilities.php index 95b165c18..652212e5a 100644 --- a/lib/SimpleSAML/Utilities.php +++ b/lib/SimpleSAML/Utilities.php @@ -1910,11 +1910,11 @@ class SimpleSAML_Utilities { /** * Helper function to log messages that we send or receive. * - * @param string $message The message, as an XML string. + * @param string|DOMElement $message The message, as an XML string or an XML element. * @param string $type Whether this message is sent or received, encrypted or decrypted. */ public static function debugMessage($message, $type) { - assert('is_string($message)'); + assert('is_string($message) || $message instanceof DOMElement'); $globalConfig = SimpleSAML_Configuration::getInstance(); if (!$globalConfig->getBoolean('debug', FALSE)) { @@ -1922,6 +1922,10 @@ class SimpleSAML_Utilities { return; } + if ($message instanceof DOMElement) { + $message = $message->ownerDocument->saveXML($message); + } + switch ($type) { case 'in': SimpleSAML_Logger::debug('Received message:'); -- GitLab