]> git.sur5r.net Git - openldap/commitdiff
warn if no suffix or no init function are present
authorPierangelo Masarati <ando@openldap.org>
Sun, 11 Jan 2004 23:56:13 +0000 (23:56 +0000)
committerPierangelo Masarati <ando@openldap.org>
Sun, 11 Jan 2004 23:56:13 +0000 (23:56 +0000)
servers/slapd/backend.c

index e18009e01da7bc138db67e6b1b65f79ad5aa1781..b0c24c12af03ab6846fba2527d787c9ad825ad62 100644 (file)
@@ -172,6 +172,8 @@ int backend_init(void)
                binfo[nBackendInfo].bi_type != NULL;
                nBackendInfo++ )
        {
+               assert( binfo[nBackendInfo].bi_init );
+
                rc = binfo[nBackendInfo].bi_init( &binfo[nBackendInfo] );
 
                if(rc != 0) {
@@ -223,6 +225,21 @@ int backend_add(BackendInfo *aBackendInfo)
 {
    int rc = 0;
 
+   if ( aBackendInfo->bi_init == NULL ) {
+#ifdef NEW_LOGGING
+               LDAP_LOG( BACKEND, ERR, 
+                  "backend_add:  backend type \"%s\" does not have the "
+                 "(mandatory)init function\n",
+                  aBackendInfo->bi_type, 0, 0 );
+#else
+      Debug( LDAP_DEBUG_ANY,
+                  "backend_add:  backend type \"%s\" does not have the "
+                 "(mandatory)init function\n",
+                  aBackendInfo->bi_type, 0, 0 );
+#endif
+      return -1;
+   }
+
    if ((rc = aBackendInfo->bi_init(aBackendInfo)) != 0) {
 #ifdef NEW_LOGGING
                LDAP_LOG( BACKEND, ERR, 
@@ -360,6 +377,20 @@ int backend_startup(Backend *be)
 
                LDAP_TAILQ_INIT( &backendDB[i].be_pending_csn_list );
 
+               if ( backendDB[i].be_suffix == NULL ) {
+#ifdef NEW_LOGGING
+                       LDAP_LOG( BACKEND, CRIT, 
+                               "backend_startup: warning, database %d (%s) "
+                               "has no suffix\n",
+                               i, backendDB[i].bd_info->bi_type, 0 );
+#else
+                       Debug( LDAP_DEBUG_ANY,
+                               "backend_startup: warning, database %d (%s) "
+                               "has no suffix\n",
+                               i, backendDB[i].bd_info->bi_type, 0 );
+#endif
+               }
+
                if ( backendDB[i].bd_info->bi_db_open ) {
                        rc = backendDB[i].bd_info->bi_db_open(
                                &backendDB[i] );