/* ch_malloc.c - malloc routines that test returns from malloc and friends */
+/* $OpenLDAP$ */
+/*
+ * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
+ * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
+ */
+
+#define CH_FREE 1
#include "portable.h"
#include "slap.h"
+#ifndef CSRIMALLOC
+
void *
ch_malloc(
ber_len_t size
void *new;
if ( (new = (void *) ber_memalloc( size )) == NULL ) {
+#ifdef NEW_LOGGING
+ LDAP_LOG( OPERATION, ERR,
+ "ch_malloc: allocation of %lu bytes failed\n", (long)size, 0,0 );
+#else
Debug( LDAP_DEBUG_ANY, "ch_malloc of %lu bytes failed\n",
(long) size, 0, 0 );
- exit( EXIT_SUCCESS );
+#endif
+ assert( 0 );
+ exit( EXIT_FAILURE );
}
return( new );
}
if ( (new = (void *) ber_memrealloc( block, size )) == NULL ) {
+#ifdef NEW_LOGGING
+ LDAP_LOG( OPERATION, ERR,
+ "ch_realloc: reallocation of %lu bytes failed\n", (long)size, 0,0 );
+#else
Debug( LDAP_DEBUG_ANY, "ch_realloc of %lu bytes failed\n",
(long) size, 0, 0 );
- exit( EXIT_SUCCESS );
+#endif
+ assert( 0 );
+ exit( EXIT_FAILURE );
}
return( new );
void *new;
if ( (new = (void *) ber_memcalloc( nelem, size )) == NULL ) {
+#ifdef NEW_LOGGING
+ LDAP_LOG( OPERATION, ERR,
+ "ch_calloc: allocation of %lu elements of %lu bytes faild\n",
+ (long)nelem, (long)size, 0 );
+#else
Debug( LDAP_DEBUG_ANY, "ch_calloc of %lu elems of %lu bytes failed\n",
(long) nelem, (long) size, 0 );
+#endif
+ assert( 0 );
exit( EXIT_FAILURE );
}
char *new;
if ( (new = ber_strdup( string )) == NULL ) {
+#ifdef NEW_LOGGING
+ LDAP_LOG( OPERATION, ERR,
+ "chr_strdup: duplication of \"%s\" failed\n", string, 0, 0 );
+#else
Debug( LDAP_DEBUG_ANY, "ch_strdup(%s) failed\n", string, 0, 0 );
+#endif
+ assert( 0 );
exit( EXIT_FAILURE );
}
{
ber_memfree( ptr );
}
+
+#endif