From: Ondřej Kuzník Date: Mon, 27 Nov 2023 12:33:29 +0000 (+0000) Subject: ITS#10109 Pass operation to slap_get_csn() X-Git-Tag: OPENLDAP_REL_ENG_2_5_17~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=05482d1ae82d14fb20ad575cb0bee4778be8fb0b;p=thirdparty%2Fopenldap.git ITS#10109 Pass operation to slap_get_csn() --- diff --git a/contrib/slapd-modules/lastmod/lastmod.c b/contrib/slapd-modules/lastmod/lastmod.c index 116b9ae87b..b329ef700e 100644 --- a/contrib/slapd-modules/lastmod/lastmod.c +++ b/contrib/slapd-modules/lastmod/lastmod.c @@ -372,7 +372,7 @@ best_guess( Operation *op, entryCSN.bv_val = csnbuf; entryCSN.bv_len = sizeof( csnbuf ); - slap_get_csn( NULL, &entryCSN, 0 ); + slap_get_csn( op, &entryCSN, 0 ); ber_dupbv( bv_entryCSN, &entryCSN ); ber_dupbv( bv_nentryCSN, &entryCSN ); @@ -833,6 +833,11 @@ lastmod_db_open( BackendDB *be, ConfigReply *cr ) static char tmbuf[ LDAP_LUTIL_GENTIME_BUFSIZE ]; char csnbuf[ LDAP_PVT_CSNSTR_BUFSIZE ]; + void *thrctx = ldap_pvt_thread_pool_context(); + Connection conn = { 0 }; + OperationBuffer opbuf; + Operation *op; + struct berval entryCSN; struct berval timestamp; @@ -841,6 +846,9 @@ lastmod_db_open( BackendDB *be, ConfigReply *cr ) return -1; } + connection_fake_init2( &conn, &opbuf, thrctx, 0 ); + op = &opbuf.ob_op; + /* * Start */ @@ -850,7 +858,7 @@ lastmod_db_open( BackendDB *be, ConfigReply *cr ) entryCSN.bv_val = csnbuf; entryCSN.bv_len = sizeof( csnbuf ); - slap_get_csn( NULL, &entryCSN, 0 ); + slap_get_csn( op, &entryCSN, 0 ); if ( BER_BVISNULL( &lmi->lmi_rdnvalue ) ) { ber_str2bv( "Lastmod", 0, 1, &lmi->lmi_rdnvalue );