From dcbb48dec7ac363409e369502b29f4d15fa92c41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Kuzn=C3=ADk?= Date: Mon, 3 Mar 2025 10:29:36 +0000 Subject: [PATCH] ITS#9959 Do not read c_auth without lock --- servers/lloadd/monitor.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/servers/lloadd/monitor.c b/servers/lloadd/monitor.c index 1047f80c6e..d6c553e845 100644 --- a/servers/lloadd/monitor.c +++ b/servers/lloadd/monitor.c @@ -705,6 +705,12 @@ lload_monitor_conn_update( Operation *op, SlapReply *rs, Entry *e, void *priv ) } break; } + attr_delete( &e->e_attrs, ad_olmConnectionAuthzDN ); + if ( !BER_BVISNULL( &c->c_auth ) ) { + attr_merge_normalize_one( e, ad_olmConnectionAuthzDN, + &c->c_auth, op->o_tmpmemctx ); + } + CONNECTION_UNLOCK(c); a = attr_find( e->e_attrs, ad_olmConnectionType ); @@ -723,12 +729,6 @@ lload_monitor_conn_update( Operation *op, SlapReply *rs, Entry *e, void *priv ) } a->a_vals[0] = bv_state; - attr_delete( &e->e_attrs, ad_olmConnectionAuthzDN ); - if ( !BER_BVISNULL( &c->c_auth ) ) { - attr_merge_normalize_one( e, ad_olmConnectionAuthzDN, - &c->c_auth, op->o_tmpmemctx ); - } - a = attr_find( e->e_attrs, ad_olmPendingOps ); assert( a != NULL ); UI2BV( &a->a_vals[0], pending );