+/* $OpenLDAP$ */
/*
* Copyright 1998,1999 The OpenLDAP Foundation, Redwood City, California, USA
* All rights reserved.
*/
#include "portable.h"
-#include "ldap_pvt_thread.h"
#if defined( HAVE_LWP )
#include <ac/time.h>
#include <ac/socket.h>
-#include "lber.h"
-#include "ldap.h"
-#include "ldap_log.h"
+#include "ldap-int.h"
+
+#include "ldap_pvt_thread.h"
#include <lwp/lwp.h>
#include <lwp/stackdep.h>
int i;
if ( stacks == NULL ) {
- stacks = (struct stackinfo *) ch_calloc( 1, MAX_THREADS *
+ stacks = (struct stackinfo *) LDAP_CALLOC( 1, MAX_THREADS *
sizeof(struct stackinfo) );
+
+ if( stacks == NULL ) {
+ Debug( LDAP_DEBUG_ANY, "stacks allocation failed",
+ 0, 0, 0 );
+ return NULL;
+ }
}
for ( i = 0; i < MAX_THREADS; i++ ) {
}
if ( stacks[i].stk_stack == NULL ) {
- stacks[i].stk_stack = (stkalign_t *) malloc(
+ stacks[i].stk_stack = (stkalign_t *) LDAP_MALLOC(
(MAX_STACK / sizeof(stkalign_t) + 1 )
* sizeof(stkalign_t) );
+
+ if( stacks[i].stk_stack == NULL ) {
+ Debug( LDAP_DEBUG_ANY, "stack allocation failed",
+ 0, 0, 0 );
+ return( NULL );
+ }
}
*stacknop = i;
stacks[stackno].stk_inuse = 0;
}
-static static void
+static void
lwp_create_stack( void *(*func)(), void *arg, int stackno )
{
(*func)( arg );
}
}
- nt = (tl_t *) malloc( sizeof( tl_t ));
+ nt = (tl_t *) LDAP_MALLOC( sizeof( tl_t ));
+
+ if( nt == NULL ) return -1;
nt->tl_next = sglob->tsl_list;
nt->tl_wake = now + interval;