diff options
Diffstat (limited to 'net/phpldapadmin/files/patch-lib_ds.php')
-rw-r--r-- | net/phpldapadmin/files/patch-lib_ds.php | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/net/phpldapadmin/files/patch-lib_ds.php b/net/phpldapadmin/files/patch-lib_ds.php new file mode 100644 index 000000000000..6aa15b79323c --- /dev/null +++ b/net/phpldapadmin/files/patch-lib_ds.php @@ -0,0 +1,29 @@ +--- lib/ds.php.orig 2021-12-12 02:35:51 UTC ++++ lib/ds.php +@@ -371,7 +371,7 @@ abstract class DS { + $replacement = $this->getValue('login', 'sasl_dn_replacement'); + + if ($regex && $replacement) { +- $userDN = preg_replace($regex, $replacement, $_SERVER['REMOTE_USER']); ++ $userDN = preg_replace($regex, $replacement,is_null( $_SERVER['REMOTE_USER'])? "": $_SERVER['REMOTE_USER']); + + $CACHE[$this->index][$method] = $this->login($userDN, '', $method); + +@@ -437,7 +437,7 @@ abstract class DS { + if (DEBUG_ENABLED && (($fargs=func_get_args())||$fargs='NOARGS')) + debug_log('Entered (%%)',17,0,__FILE__,__LINE__,__METHOD__,$fargs); + +- if (! trim($this->getLogin(null)) && $_SESSION[APPCONFIG]->getValue('appearance','anonymous_bind_implies_read_only')) ++ if (! trim((string) $this->getLogin(null)) && $_SESSION[APPCONFIG]->getValue('appearance','anonymous_bind_implies_read_only')) + return true; + else + return $this->getValue('server','read_only'); +@@ -691,7 +691,7 @@ class Datastore { + debug_log('Entered (%%)',17,0,__FILE__,__LINE__,__METHOD__,$fargs); + + # If no index defined, then pick the lowest one. +- if (is_null($index) || ! trim($index) || ! is_numeric($index)) ++ if (is_null($index) || ! trim((string) $index) || ! is_numeric($index)) + $index = min($this->GetServerList())->getIndex(); + + if (! isset($this->objects[$index])) |