]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/overlays/retcode.c
check for ee == NULL
[openldap] / servers / slapd / overlays / retcode.c
index a1e655ed959fc0c240a5a47c90bdc84306899100..e7639befa832952fb013629c4acfc3d3f8519a67 100644 (file)
@@ -31,6 +31,7 @@
 #include <ac/socket.h>
 
 #include "slap.h"
+#include "config.h"
 #include "lutil.h"
 #include "ldif.h"
 
@@ -304,6 +305,7 @@ retcode_op_func( Operation *op, SlapReply *rs )
 
                        case LDAP_REQ_BIND:
                                /* skip if rootdn */
+                               /* FIXME: better give the db a chance? */
                                if ( be_isroot_pw( op ) ) {
                                        return LDAP_SUCCESS;
                                }
@@ -725,7 +727,7 @@ retcode_response( Operation *op, SlapReply *rs )
 }
 
 static int
-retcode_db_init( BackendDB *be )
+retcode_db_init( BackendDB *be, ConfigReply *cr )
 {
        slap_overinst   *on = (slap_overinst *)be->bd_info;
        retcode_t       *rd;
@@ -1087,7 +1089,7 @@ retcode_db_config(
 }
 
 static int
-retcode_db_open( BackendDB *be )
+retcode_db_open( BackendDB *be, ConfigReply *cr)
 {
        slap_overinst   *on = (slap_overinst *)be->bd_info;
        retcode_t       *rd = (retcode_t *)on->on_bi.bi_private;
@@ -1211,7 +1213,7 @@ retcode_db_open( BackendDB *be )
 }
 
 static int
-retcode_db_destroy( BackendDB *be )
+retcode_db_destroy( BackendDB *be, ConfigReply *cr )
 {
        slap_overinst   *on = (slap_overinst *)be->bd_info;
        retcode_t       *rd = (retcode_t *)on->on_bi.bi_private;
@@ -1371,6 +1373,8 @@ retcode_initialize( void )
                                "retcode: register_at failed\n", 0, 0, 0 );
                        return code;
                }
+
+               (*retcode_at[ i ].ad)->ad_type->sat_flags |= SLAP_AT_HIDE;
        }
 
        for ( i = 0; retcode_oc[ i ].desc != NULL; i++ ) {
@@ -1380,6 +1384,8 @@ retcode_initialize( void )
                                "retcode: register_oc failed\n", 0, 0, 0 );
                        return code;
                }
+
+               (*retcode_oc[ i ].oc)->soc_flags |= SLAP_OC_HIDE;
        }
 
        retcode.on_bi.bi_type = "retcode";