]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-bdb/bind.c
Never let ldif_parse_line() return a NULL value with success.
[openldap] / servers / slapd / back-bdb / bind.c
index be64c5b6a8c90ca587a63b51cbf81943868bf619..7a9230dcdc355291fae7a7323585a3396a5a6e49 100644 (file)
@@ -44,12 +44,20 @@ bdb_bind(
        DB_LOCK         lock;
 
 #ifdef NEW_LOGGING
-       LDAP_LOG (( "bind", LDAP_LEVEL_ARGS, "==> bdb_bind: dn: %s\n", dn->bv_val ));
+       LDAP_LOG ( OPERATION, ARGS, "==> bdb_bind: dn: %s\n", dn->bv_val, 0, 0 );
 #else
        Debug( LDAP_DEBUG_ARGS, "==> bdb_bind: dn: %s\n", dn->bv_val, 0, 0);
 #endif
 
-       LOCK_ID(bdb->bi_dbenv, &locker);
+       rc = LOCK_ID(bdb->bi_dbenv, &locker);
+       switch(rc) {
+       case 0:
+               break;
+       default:
+               send_ldap_result( conn, op, rc=LDAP_OTHER,
+                       NULL, "internal error", NULL, NULL );
+               return rc;
+       }
 
 dn2entry_retry:
        /* get entry */
@@ -134,7 +142,8 @@ dn2entry_retry:
        if ( is_entry_subentry( e ) ) {
                /* entry is an subentry, don't allow bind */
 #ifdef NEW_LOGGING
-               LDAP_LOG (( "bind", LDAP_LEVEL_DETAIL1, "bdb_bind: entry is subentry\n" ));
+               LDAP_LOG ( OPERATION, DETAIL1, 
+                       "bdb_bind: entry is subentry\n", 0, 0, 0 );
 #else
                Debug( LDAP_DEBUG_TRACE, "entry is subentry\n", 0,
                        0, 0 );
@@ -151,7 +160,7 @@ dn2entry_retry:
        if ( is_entry_alias( e ) ) {
                /* entry is an alias, don't allow bind */
 #ifdef NEW_LOGGING
-               LDAP_LOG (( "bind", LDAP_LEVEL_DETAIL1, "bdb_bind: entry is alias\n" ));
+               LDAP_LOG ( OPERATION, DETAIL1, "bdb_bind: entry is alias\n", 0, 0, 0 );
 #else
                Debug( LDAP_DEBUG_TRACE, "entry is alias\n", 0,
                        0, 0 );
@@ -170,7 +179,8 @@ dn2entry_retry:
                        conn, op, e );
 
 #ifdef NEW_LOGGING
-               LDAP_LOG (( "bind", LDAP_LEVEL_DETAIL1, "bdb_bind: entry is referral\n" ));
+               LDAP_LOG ( OPERATION, DETAIL1, 
+                       "bdb_bind: entry is referral\n", 0, 0, 0 );
 #else
                Debug( LDAP_DEBUG_TRACE, "entry is referral\n", 0,
                        0, 0 );