From 7a4e70f3e6da6909011ccae4b24fb5e21521a04b Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Sun, 21 Mar 2021 17:20:05 +0000 Subject: [PATCH] ITS#8577 don't allow setting logDB to current DB --- servers/slapd/overlays/accesslog.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/servers/slapd/overlays/accesslog.c b/servers/slapd/overlays/accesslog.c index 14cd208fb6..c1daedcd76 100644 --- a/servers/slapd/overlays/accesslog.c +++ b/servers/slapd/overlays/accesslog.c @@ -941,6 +941,14 @@ log_cf_gen(ConfigArgs *c) c->log, c->cr_msg, c->value_dn.bv_val ); rc = 1; } + if ( !rc && ( li->li_db->bd_self == c->be->bd_self )) { + snprintf( c->cr_msg, sizeof( c->cr_msg ), + "<%s> invalid suffix, points to itself", + c->argv[0] ); + Debug( LDAP_DEBUG_ANY, "%s: %s \"%s\"\n", + c->log, c->cr_msg, c->value_dn.bv_val ); + rc = 1; + } ch_free( c->value_ndn.bv_val ); } else { li->li_db_suffix = c->value_ndn; @@ -2413,6 +2421,11 @@ accesslog_db_open( "accesslog: \"logdb \" missing or invalid.\n" ); return 1; } + if ( li->li_db->bd_self == be->bd_self ) { + Debug( LDAP_DEBUG_ANY, + "accesslog: \"logdb \" is this database, cannot log to itself.\n" ); + return 1; + } if ( slapMode & SLAP_TOOL_MODE ) return 0; -- 2.47.3