/* init.c - initialize various things */
/* $OpenLDAP$ */
/*
- * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2003 The OpenLDAP Foundation, All Rights Reserved.
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file
*/
#include "slap.h"
#include "lber_pvt.h"
+#ifdef LDAP_SLAPI
+#include "slapi.h"
+#endif
/*
* read-only global variables or variables only written by the listener
if( rc == 0 ) {
rc = backend_init( );
}
+
break;
default:
rc = backend_startup( be );
+#ifdef LDAP_SLAPI
+ if( rc == 0 ) {
+ Slapi_PBlock *pb = slapi_pblock_new();
+
+ if ( doPluginFNs( NULL, SLAPI_PLUGIN_START_FN, pb ) < 0 ) {
+ rc = -1;
+ }
+ slapi_pblock_destroy( pb );
+ }
+#endif /* LDAP_SLAPI */
+
return rc;
}
int slap_shutdown( Backend *be )
{
int rc;
+#ifdef LDAP_SLAPI
+ Slapi_PBlock *pb;
+#endif
#ifdef NEW_LOGGING
LDAP_LOG( OPERATION, CRIT,
/* let backends do whatever cleanup they need to do */
rc = backend_shutdown( be );
+#ifdef LDAP_SLAPI
+ pb = slapi_pblock_new( );
+ (void) doPluginFNs( NULL, SLAPI_PLUGIN_CLOSE_FN, pb );
+ slapi_pblock_destroy( pb );
+#endif /* LDAP_SLAPI */
+
return rc;
}