mirror of
https://git.busybox.net/buildroot.git
synced 2024-11-23 13:33:28 +08:00
d974cfccb9
In OpenLDAP through 2.4.57 and 2.5.x through 2.5.1alpha, an assertion
failure in slapd can occur in the issuerAndThisUpdateCheck function via a
crafted packet, resulting in a denial of service (daemon exit) via a short
timestamp. This is related to schema_init.c and checkTime.
For more details, see the bugtracker:
https://bugs.openldap.org/show_bug.cgi?id=9454
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 2d6a0ea93e
)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
76 lines
2.2 KiB
Makefile
76 lines
2.2 KiB
Makefile
################################################################################
|
|
#
|
|
# openldap
|
|
#
|
|
################################################################################
|
|
|
|
OPENLDAP_VERSION = 2.4.57
|
|
OPENLDAP_SOURCE = openldap-$(OPENLDAP_VERSION).tgz
|
|
OPENLDAP_SITE = https://www.openldap.org/software/download/OpenLDAP/openldap-release
|
|
OPENLDAP_LICENSE = OpenLDAP Public License
|
|
OPENLDAP_LICENSE_FILES = LICENSE
|
|
OPENLDAP_INSTALL_STAGING = YES
|
|
OPENLDAP_DEPENDENCIES = host-pkgconf
|
|
|
|
# 0005-ITS-9454-fix-issuerAndThisUpdateCheck.patch
|
|
OPENLDAP_IGNORE_CVES += CVE-2021-27212
|
|
|
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
|
OPENLDAP_TLS = openssl
|
|
OPENLDAP_DEPENDENCIES += openssl
|
|
else ifeq ($(BR2_PACKAGE_GNUTLS),y)
|
|
OPENLDAP_TLS = gnutls
|
|
OPENLDAP_DEPENDENCIES += gnutls
|
|
else ifeq ($(BR2_PACKAGE_LIBNSS),y)
|
|
OPENLDAP_TLS = moznss
|
|
OPENLDAP_DEPENDENCIES += libnss
|
|
OPENLDAP_CPPFLAGS = \
|
|
-I$(STAGING_DIR)/usr/include/nss \
|
|
-I$(STAGING_DIR)/usr/include/nspr
|
|
else
|
|
OPENLDAP_TLS = no
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
|
OPENLDAP_MP = bignum
|
|
OPENLDAP_DEPENDENCIES += openssl
|
|
OPENLDAP_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libssl libcrypto`"
|
|
else ifeq ($(BR2_PACKAGE_GMP),y)
|
|
OPENLDAP_MP = gmp
|
|
OPENLDAP_DEPENDENCIES += gmp
|
|
else
|
|
OPENLDAP_MP = longlong
|
|
endif
|
|
|
|
OPENLDAP_CONF_ENV += ac_cv_func_memcmp_working=yes
|
|
|
|
OPENLDAP_CONF_OPTS += \
|
|
--enable-syslog \
|
|
--disable-proctitle \
|
|
--disable-slapd \
|
|
--with-yielding-select \
|
|
--sysconfdir=/etc \
|
|
--enable-dynamic=$(if $(BR2_STATIC_LIBS),no,yes) \
|
|
--with-tls=$(OPENLDAP_TLS) \
|
|
--with-mp=$(OPENLDAP_MP) \
|
|
CPPFLAGS="$(TARGET_CPPFLAGS) $(OPENLDAP_CPPFLAGS)"
|
|
|
|
# Somehow, ${STRIP} does not percolates through to the shtool script
|
|
# used to install the executables; thus, that script tries to run the
|
|
# executable it is supposed to install, resulting in an error.
|
|
OPENLDAP_MAKE_ENV = STRIP="$(TARGET_STRIP)"
|
|
|
|
ifeq ($(BR2_PACKAGE_OPENLDAP_CLIENTS),)
|
|
OPENLDAP_CLIENTS = \
|
|
ldapurl ldapexop ldapcompare ldapwhoami \
|
|
ldappasswd ldapmodrdn ldapdelete ldapmodify \
|
|
ldapsearch
|
|
define OPENLDAP_REMOVE_CLIENTS
|
|
$(RM) -f $(foreach p,$(OPENLDAP_CLIENTS),$(TARGET_DIR)/usr/bin/$(p))
|
|
$(RM) -rf $(TARGET_DIR)/etc/openldap
|
|
endef
|
|
OPENLDAP_POST_INSTALL_TARGET_HOOKS += OPENLDAP_REMOVE_CLIENTS
|
|
endif
|
|
|
|
$(eval $(autotools-package))
|