From ab64c237f7c6c838fa4be2203619c060ae80426a Mon Sep 17 00:00:00 2001
From: Kurt Zeilenga <kurt@openldap.org>
Date: Sat, 20 Mar 1999 01:25:11 +0000
Subject: [PATCH] Use calloc properly... could result in too few bytes being
 allocated. calloc(1, nelem*size) -> calloc(nelem, size)

---
 servers/slapd/aclparse.c | 3 +--
 servers/slapd/daemon.c   | 2 +-
 servers/slapd/modify.c   | 5 ++---
 3 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/servers/slapd/aclparse.c b/servers/slapd/aclparse.c
index d89fb84035..b7b0d9507a 100644
--- a/servers/slapd/aclparse.c
+++ b/servers/slapd/aclparse.c
@@ -181,8 +181,7 @@ parse_acl(
 			 * by clause consists of <who> and <access>
 			 */
 
-			b = (struct access *) ch_calloc( 1,
-			    sizeof(struct access) );
+			b = (struct access *) ch_calloc( 1, sizeof(struct access) );
 
 			if ( ++i == argc ) {
 				fprintf( stderr,
diff --git a/servers/slapd/daemon.c b/servers/slapd/daemon.c
index b395a72ee2..e55eaf1d08 100644
--- a/servers/slapd/daemon.c
+++ b/servers/slapd/daemon.c
@@ -74,7 +74,7 @@ slapd_daemon(
 	}
 #endif	/* !FD_SETSIZE */
 
-	c = (Connection *) ch_calloc( 1, dtblsize * sizeof(Connection) );
+	c = (Connection *) ch_calloc( (size_t) dtblsize, sizeof(Connection) );
 
 	for ( i = 0; i < dtblsize; i++ ) {
 		c[i].c_dn = NULL;
diff --git a/servers/slapd/modify.c b/servers/slapd/modify.c
index daca60d6e1..918c97a278 100644
--- a/servers/slapd/modify.c
+++ b/servers/slapd/modify.c
@@ -244,8 +244,7 @@ add_lastmods( Operation *op, LDAPModList **modlist )
 	tmp = (LDAPModList *) ch_calloc( 1, sizeof(LDAPModList) );
 	tmp->ml_type = ch_strdup( "modifiersname" );
 	tmp->ml_op = LDAP_MOD_REPLACE;
-	tmp->ml_bvalues = (struct berval **) ch_calloc( 1,
-	    2 * sizeof(struct berval *) );
+	tmp->ml_bvalues = (struct berval **) ch_calloc(2, sizeof(struct berval *));
 	tmp->ml_bvalues[0] = ber_bvdup( &bv );
 	tmp->ml_next = *modlist;
 	*modlist = tmp;
@@ -264,7 +263,7 @@ add_lastmods( Operation *op, LDAPModList **modlist )
 	tmp = (LDAPModList *) ch_calloc( 1, sizeof(LDAPModList) );
 	tmp->ml_type = ch_strdup( "modifytimestamp" );
 	tmp->ml_op = LDAP_MOD_REPLACE;
-	tmp->ml_bvalues = (struct berval **) ch_calloc( 1, 2 * sizeof(struct berval *) );
+	tmp->ml_bvalues = (struct berval **) ch_calloc(2, sizeof(struct berval *));
 	tmp->ml_bvalues[0] = ber_bvdup( &bv );
 	tmp->ml_next = *modlist;
 	*modlist = tmp;
-- 
GitLab