From d74ccb523e06ce89458ddc4d4f7ceffa1043f4b4 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 20 Oct 2025 10:52:06 +0200 Subject: [PATCH] Prevent LDAP password to be removed after editing existing config --- .../linphone/ui/main/settings/viewmodel/LdapViewModel.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt index 11bc1b22b..7e03643f2 100644 --- a/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/settings/viewmodel/LdapViewModel.kt @@ -165,6 +165,7 @@ class LdapViewModel : GenericViewModel() { val nameAttrs = nameAttributes.value.orEmpty().trim() val sipAttrs = sipAttributes.value.orEmpty().trim() val sipDomain = sipDomain.value.orEmpty().trim() + val pwd = password.value.orEmpty().trim() if ( server.isEmpty() || bindDn.isEmpty() || base.isEmpty() || filter.isEmpty() || maxResults.isEmpty() || timeout.isEmpty() || delay.isEmpty() || @@ -180,7 +181,11 @@ class LdapViewModel : GenericViewModel() { ldapParams.enabled = isEnabled.value == true ldapParams.server = server ldapParams.bindDn = bindDn - ldapParams.password = password.value.orEmpty().trim() + if (!pwd.isEmpty()) { + ldapParams.password = pwd + } else if (::ldapToEdit.isInitialized) { + ldapParams.password = ldapToEdit.params.password + } ldapParams.authMethod = Ldap.AuthMethod.Simple ldapParams.isTlsEnabled = useTls.value == true ldapParams.serverCertificatesVerificationMode = Ldap.CertVerificationMode.Default