]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/init.c
ignore "schemacheck off" (with warning)
[openldap] / servers / slapd / init.c
index 6ab72623220e8579b275ff378ea5b78a3545cc0f..76e12989d4639defeadbf9d93e195dbf9af8bea8 100644 (file)
@@ -2,7 +2,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2003 The OpenLDAP Foundation.
+ * Copyright 1998-2005 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -35,7 +35,7 @@
 #include "slap.h"
 #include "lber_pvt.h"
 #ifdef LDAP_SLAPI
-#include "slapi.h"
+#include "slapi/slapi.h"
 #endif
 
 /*
@@ -138,7 +138,8 @@ slap_init( int mode, const char *name )
        
                        (void) ldap_pvt_thread_initialize();
 
-                       ldap_pvt_thread_pool_init(&connection_pool, connection_pool_max, 0);
+                       ldap_pvt_thread_pool_init( &connection_pool,
+                               connection_pool_max, 0);
 
                        ldap_pvt_thread_mutex_init( &entry2str_mutex );
                        ldap_pvt_thread_mutex_init( &replog_mutex );
@@ -205,7 +206,7 @@ int slap_startup( Backend *be )
        if( rc == 0 ) {
                Slapi_PBlock *pb = slapi_pblock_new();
 
-               if ( doPluginFNs( NULL, SLAPI_PLUGIN_START_FN, pb ) < 0 ) {
+               if ( slapi_int_call_plugins( NULL, SLAPI_PLUGIN_START_FN, pb ) < 0 ) {
                        rc = -1;
                }
                slapi_pblock_destroy( pb );
@@ -231,15 +232,12 @@ int slap_shutdown( Backend *be )
                slap_name, 0, 0 );
 #endif
 
-
-       slap_sasl_destroy();
-
        /* 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 );
+       pb = slapi_pblock_new();
+       (void) slapi_int_call_plugins( NULL, SLAPI_PLUGIN_CLOSE_FN, pb );
        slapi_pblock_destroy( pb );
 #endif /* LDAP_SLAPI */
 
@@ -259,9 +257,14 @@ int slap_destroy(void)
                slap_name, 0, 0 );
 #endif
 
+       if ( default_referral ) {
+               ber_bvarray_free( default_referral );
+       }
 
        rc = backend_destroy();
 
+       slap_sasl_destroy();
+
        entry_destroy();
 
        ldap_pvt_thread_destroy();