openldap: hide configurables when libopenldap is not enabled

When openldap is not enabled, the following configurables remain present
in the config:

CONFIG_OPENLDAP_DEBUG=y
\# CONFIG_OPENLDAP_CRYPT is not set
\# CONFIG_OPENLDAP_MONITOR is not set
\# CONFIG_OPENLDAP_DB47 is not set
\# CONFIG_OPENLDAP_ICU is not set

This patch adds a libopenldap dependency for these options, removing the
above from .config when libopenldap is not used. Further, move these
configurables to Config.in.

Signed-off-by: Matthew Hagan <mnhagan88@gmail.com>
This commit is contained in:
Matthew Hagan 2021-12-18 18:09:02 +00:00
parent 3d809e0482
commit 6c0f24d146
2 changed files with 46 additions and 43 deletions

44
libs/openldap/Config.in Normal file
View File

@ -0,0 +1,44 @@
if PACKAGE_libopenldap
config OPENLDAP_DEBUG
bool "Enable debugging information"
default y
help
Enable debugging information. This option must be enabled
for the loglevel directive to work.
config OPENLDAP_CRYPT
bool "Crypt(3) passwords support"
default n
help
With crypt(3) password storage scheme enabled, OpenLDAP can
receive and store SHA-256 and SHA-512 password hashes from
Samba AD-DC. If this option is disabled, synchronization of
passwords between Samba AD-DC (v4.5 and above) and OpenLDAP
requires use of cleartext passwords.
To enable crypt(3) password synchronization functionality:
1. Re-include crypt(3) support in OpenWRT by enabling 'Include
crypt() support for SHA256, SHA512 and Blowfish ciphers' option
in "Advanced configuration options (for developers)" ->
"Toolchain Options".
2. Provision AD-DC with 'password hash userPassword schemes'
option. For more information, see smb.conf manpage for details
on 'password hash userPassword schemes'.
3. Use a script to synchronize passwords from AD-DC to
OpenLDAP. See samba-tool manpage for 'user syncpasswords'.
config OPENLDAP_MONITOR
bool "Enable monitor backend"
default n
help
Enable monitor backend to obtain information about the running
status of the daemon. See OpenLDAP documentation for more
information.
config OPENLDAP_DB47
bool "Berkeley DB support"
default n
help
Enable Berkeley DB support (BDB).
config OPENLDAP_ICU
bool "ICU support"
default n
help
Enable ICU (International Components for Unicode) support.
endif

View File

@ -55,49 +55,8 @@ define Package/libopenldap
TITLE+= (libraries)
endef
define Package/libopenldap/config
config OPENLDAP_DEBUG
bool "Enable debugging information"
default y
help
Enable debugging information. This option must be enabled
for the loglevel directive to work.
config OPENLDAP_CRYPT
bool "Crypt(3) passwords support"
default n
help
With crypt(3) password storage scheme enabled, OpenLDAP can
receive and store SHA-256 and SHA-512 password hashes from
Samba AD-DC. If this option is disabled, synchronization of
passwords between Samba AD-DC (v4.5 and above) and OpenLDAP
requires use of cleartext passwords.
To enable crypt(3) password synchronization functionality:
1. Re-include crypt(3) support in OpenWRT by enabling 'Include
crypt() support for SHA256, SHA512 and Blowfish ciphers' option
in "Advanced configuration options (for developers)" ->
"Toolchain Options".
2. Provision AD-DC with 'password hash userPassword schemes'
option. For more information, see smb.conf manpage for details
on 'password hash userPassword schemes'.
3. Use a script to synchronize passwords from AD-DC to
OpenLDAP. See samba-tool manpage for 'user syncpasswords'.
config OPENLDAP_MONITOR
bool "Enable monitor backend"
default n
help
Enable monitor backend to obtain information about the running
status of the daemon. See OpenLDAP documentation for more
information.
config OPENLDAP_DB47
bool "Berkeley DB support"
default n
help
Enable Berkeley DB support (BDB).
config OPENLDAP_ICU
bool "ICU support"
default n
help
Enable ICU (International Components for Unicode) support.
define Package/openldap/config
source "$(SOURCE)/Config.in"
endef
define Package/libopenldap/description