From: Kurt Zeilenga Date: Fri, 29 Jan 1999 03:56:18 +0000 (+0000) Subject: ldap_sort_entries() should try to malloc(0) when the count is zero. X-Git-Tag: OPENLDAP_SLAPD_BACK_LDAP~682 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=2c4e2fbfb2aaf373bfe2683677ffa31d95fd42c3;p=openldap ldap_sort_entries() should try to malloc(0) when the count is zero. should also return error in ldap_count_entries returns an error. --- diff --git a/libraries/libldap/sort.c b/libraries/libldap/sort.c index 300cccdf75..cab92cc7d7 100644 --- a/libraries/libldap/sort.c +++ b/libraries/libldap/sort.c @@ -91,6 +91,18 @@ ldap_sort_entries( count = ldap_count_entries( ld, *chain ); + + if ( count < 0 ) { + if( ld != NULL ) { + ld->ld_errno = LDAP_PARAM_ERROR; + } + return -1; + + } else if ( count < 2 ) { + /* zero or one entries -- already sorted! */ + return 0; + } + if ( (et = (struct entrything *) malloc( count * sizeof(struct entrything) )) == NULL ) { ld->ld_errno = LDAP_NO_MEMORY;