From: Pierangelo Masarati Date: Sat, 9 Jun 2007 14:14:45 +0000 (+0000) Subject: do not try to register custom monitor stuff when subordinate (related to ITS#4965... X-Git-Tag: OPENLDAP_REL_ENG_2_4_MP~412 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=133035cdd251128be004f2ca583a85b0558cdd21;p=openldap do not try to register custom monitor stuff when subordinate (related to ITS#4965); note: this might not be the best solution, because it does not allow to monitor subordinate databases; however, right now it's necessary, since subodinate databases do not register themselves in back-monitor --- diff --git a/servers/slapd/back-bdb/monitor.c b/servers/slapd/back-bdb/monitor.c index 87d31207d4..9c16fab2a8 100644 --- a/servers/slapd/back-bdb/monitor.c +++ b/servers/slapd/back-bdb/monitor.c @@ -275,6 +275,10 @@ bdb_monitor_db_init( BackendDB *be ) { struct bdb_info *bdb = (struct bdb_info *) be->be_private; + if ( SLAP_GLUE_SUBORDINATE( be ) ) { + return 0; + } + if ( bdb_monitor_initialize() == LDAP_SUCCESS ) { /* monitoring in back-bdb is on by default */ SLAP_DBFLAGS( be ) |= SLAP_DBFLAG_MONITORING; @@ -304,6 +308,10 @@ bdb_monitor_db_open( BackendDB *be ) return 0; } + if ( SLAP_GLUE_SUBORDINATE( be ) ) { + return 0; + } + mi = backend_info( "monitor" ); if ( !mi || !mi->bi_extra ) { SLAP_DBFLAGS( be ) ^= SLAP_DBFLAG_MONITORING; @@ -500,6 +508,10 @@ bdb_monitor_db_close( BackendDB *be ) { struct bdb_info *bdb = (struct bdb_info *) be->be_private; + if ( SLAP_GLUE_SUBORDINATE( be ) ) { + return 0; + } + if ( !BER_BVISNULL( &bdb->bi_monitor.bdm_filter ) ) { BackendInfo *mi = backend_info( "monitor" ); monitor_extra_t *mbe; @@ -529,5 +541,9 @@ bdb_monitor_db_close( BackendDB *be ) int bdb_monitor_db_destroy( BackendDB *be ) { + if ( SLAP_GLUE_SUBORDINATE( be ) ) { + return 0; + } + return 0; }