From 9b779ed84db0d123b64b8ce0a8e43e77316b128e Mon Sep 17 00:00:00 2001 From: Mark Reynolds Date: Jan 24 2020 16:33:21 +0000 Subject: Issue 50853 - Fix NULL pointer deref in config setting Description: Need to check if the config init function is defined for the attribute before blindly calling it. This fixes a regression from issue 48707. relates: https://pagure.io/389-ds-base/issue/50853 Reviewed by: tbordaz & mhonek (Thanks!) --- diff --git a/ldap/servers/slapd/libglobs.c b/ldap/servers/slapd/libglobs.c index 41c9bbd..c43c5ee 100644 --- a/ldap/servers/slapd/libglobs.c +++ b/ldap/servers/slapd/libglobs.c @@ -7957,7 +7957,7 @@ config_set(const char *attr, struct berval **values, char *errorbuf, int apply) initval = (void *)config_initvalue_to_onoff(cgas, initvalbuf, sizeof(initvalbuf)); } else if (cgas->config_var_type == CONFIG_SPECIAL_FILTER_VERIFY) { initval = (void *)config_initvalue_to_special_filter_verify(cgas, initvalbuf, sizeof(initvalbuf)); - } else { + } else if (cgas->geninitfunc) { initval = cgas->geninitfunc(); } PR_ASSERT(initval);