From 629789612e75dab0deb62f4fdcee89fbe467efa6 Mon Sep 17 00:00:00 2001 From: Andrew Ruthven Date: Wed, 1 May 2024 00:21:46 +1200 Subject: [PATCH] Prevent using undefined or non-existant variables --- inc/drivers_ldap.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/inc/drivers_ldap.php b/inc/drivers_ldap.php index 82ef6af0..017537ea 100644 --- a/inc/drivers_ldap.php +++ b/inc/drivers_ldap.php @@ -627,16 +627,19 @@ function sync_LDAP_groups(){ foreach ( $mapping as $field => $value ) { dbg_error_log( "LDAP", "Considering copying %s", $field ); - if ( isset($validUserFields[$field]) ) { + if ( isset($validUserFields[$field]) && isset($ldap_values[$value]) ) { $user->{$field} = $ldap_values[$value]; dbg_error_log( "LDAP", "Setting usr->%s to %s from LDAP field %s", $field, $ldap_values[$value], $value ); } } - if ($user->fullname == "") { + // A sane default for the fullname is the group name. + if (! isset($user->fullname) || $user->fullname == "") { $user->fullname = $group; } + // A sane default for the displayname is the fullname (which might be + // the group name). if (! isset($user->displayname) || $user->displayname == "") { $user->displayname = $user->fullname; }