From 8f3820afd97171f669b389f4b8a12638beca0129 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jaime=20Pe=CC=81rez=20Crespo?= <jaime.perez@uninett.no>
Date: Mon, 7 Aug 2017 11:23:40 +0200
Subject: [PATCH] bugfix: The var_export() method is not always used for
 arrays.

---
 modules/ldap/lib/Auth/Process/BaseFilter.php | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/modules/ldap/lib/Auth/Process/BaseFilter.php b/modules/ldap/lib/Auth/Process/BaseFilter.php
index f05e80b06..6c6811e8c 100644
--- a/modules/ldap/lib/Auth/Process/BaseFilter.php
+++ b/modules/ldap/lib/Auth/Process/BaseFilter.php
@@ -302,13 +302,15 @@ abstract class sspmod_ldap_Auth_Process_BaseFilter extends SimpleSAML_Auth_Proce
      */
     public function var_export($value)
     {
-        // Remove sensitive data
-        foreach ($value as $key => &$val) {
-            if ($key === 'ldap.password') {
-                $val = empty($val) ? '' : '********';
+        if (is_array($value)) {
+            // remove sensitive data
+            foreach ($value as $key => &$val) {
+                if ($key === 'ldap.password') {
+                    $val = empty($val) ? '' : '********';
+                }
             }
+            unset($val);
         }
-        unset($val);
 
         $export = var_export($value, true);
         $lines = explode("\n", $export);
-- 
GitLab