From ffda694dd622b31277da07be76d3469fad86150f Mon Sep 17 00:00:00 2001 From: William Brown Date: Sep 30 2016 03:48:42 +0000 Subject: Ticket 48986 - 47808 triggers overflow in uiduniq.c Bug Description: Certain configurations of uiduniq.c would cause an overflow when running with Address Sanitiser Fix Description: Increase the size of the allocation to tmp_config->attrs. https://fedorahosted.org/389/ticket/48986 Author: nhosoi Reviewed by: wibrown --- diff --git a/ldap/servers/plugins/uiduniq/uid.c b/ldap/servers/plugins/uiduniq/uid.c index d1d0162..2aba17a 100644 --- a/ldap/servers/plugins/uiduniq/uid.c +++ b/ldap/servers/plugins/uiduniq/uid.c @@ -302,7 +302,7 @@ uniqueness_entry_to_config(Slapi_PBlock *pb, Slapi_Entry *config_entry) } /* Store attrName in the config */ - tmp_config->attrs = (const char **) slapi_ch_calloc(1, sizeof(char *)); + tmp_config->attrs = (const char **) slapi_ch_calloc(2, sizeof(char *)); tmp_config->attrs[0] = slapi_ch_strdup(attrName); argc--; argv++; /* First argument was attribute name and remaining are subtrees */ @@ -345,7 +345,7 @@ uniqueness_entry_to_config(Slapi_PBlock *pb, Slapi_Entry *config_entry) * - requiredObjectClass */ /* Store attrName in the config */ - tmp_config->attrs = (const char **) slapi_ch_calloc(1, sizeof(char *)); + tmp_config->attrs = (const char **) slapi_ch_calloc(2, sizeof(char *)); tmp_config->attrs[0] = slapi_ch_strdup(attrName); /* There is no subtrees */