Merge ~sergiodj/ubuntu/+source/openldap:MRE-2.5.16-jammy into ubuntu/+source/openldap:ubuntu/jammy-devel

Proposed by Sergio Durigan Junior
Status: Merged
Approved by: git-ubuntu bot
Approved revision: not available
Merged at revision: fce0fedaadf6c60aae6b4ebec150bbc1414b2a36
Proposed branch: ~sergiodj/ubuntu/+source/openldap:MRE-2.5.16-jammy
Merge into: ubuntu/+source/openldap:ubuntu/jammy-devel
Diff against target: 208 lines (+37/-35)
7 files modified
CHANGES (+5/-0)
build/version.var (+4/-4)
debian/changelog (+9/-0)
doc/guide/admin/guide.html (+1/-1)
servers/slapd/back-asyncmeta/modify.c (+5/-9)
servers/slapd/back-meta/modify.c (+4/-15)
servers/slapd/bconfig.c (+9/-6)
Reviewer Review Type Date Requested Status
git-ubuntu bot Approve
Bryce Harrington (community) Approve
Canonical Server Reporter Pending
Review via email: mp+448095@code.launchpad.net

Description of the change

This is a new MRE for OpenLDAP on Jammy, version 2.5.16.

This version has been released today in order to fix a significant regression that was introduced in 2.5.15, which can cause slapd to abruptly terminate.

PPA: https://launchpad.net/~sergiodj/+archive/ubuntu/openldap

The package is building as I write this description. I will run its dep8 tests (and the dep8 tests from its reverse dependencies) as soon as possible.

To post a comment you must log in.
Revision history for this message
Bryce Harrington (bryce) wrote :

Quite a concise upstream release, just a couple bugfixes.

I think this is fine as is if you're wanting to roll this out urgently. But if you're open to one nitpick, I'd suggest for the changelog to mention what the bug fixes were, since there's just two. Could even just include the changelog entry text verbatim. I notice only one of the upstream bug #'s is mentioned; if that is because it is a more urgent problem then that might be worth additional discussion. Otherwise, ITS#10067 could also be mentioned.

review: Approve
Revision history for this message
git-ubuntu bot (git-ubuntu-bot) wrote :

Approvers: sergiodj, bryce
Uploaders: sergiodj, bryce
MP auto-approved

review: Approve
Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

On Monday, July 31 2023, Bryce Harrington wrote:

> Quite a concise upstream release, just a couple bugfixes.
>
> I think this is fine as is if you're wanting to roll this out
> urgently. But if you're open to one nitpick, I'd suggest for the
> changelog to mention what the bug fixes were, since there's just two.
> Could even just include the changelog entry text verbatim. I notice
> only one of the upstream bug #'s is mentioned; if that is because it
> is a more urgent problem then that might be worth additional
> discussion. Otherwise, ITS#10067 could also be mentioned.

Thank you, Bryce.

I'll adopt your suggestion and expand the changelog entry to include the
other bug.

I still have to wait for the dep8 tests to pass before I proceed because
that's what I committed to do in the Test Plan, but I'll upload the
package right after I have the results.

Cheers,

--
Sergio
GPG key ID: E92F D0B3 6B14 F1F4 D8E0 EB2F 106D A1C8 C3CB BF14

Revision history for this message
Sergio Durigan Junior (sergiodj) wrote :

Uploaded:

$ dput openldap_2.5.16+dfsg-0ubuntu0.22.04.1_source.changes
Trying to upload package to ubuntu
Checking signature on .changes
gpg: /home/sergio/work/openldap/openldap_2.5.16+dfsg-0ubuntu0.22.04.1_source.changes: Valid signature from 106DA1C8C3CBBF14
Checking signature on .dsc
gpg: /home/sergio/work/openldap/openldap_2.5.16+dfsg-0ubuntu0.22.04.1.dsc: Valid signature from 106DA1C8C3CBBF14
Package includes an .orig.tar.gz file although the debian revision suggests
that it might not be required. Multiple uploads of the .orig.tar.gz may be
rejected by the upload queue management software.
Uploading to ubuntu (via ftp to upload.ubuntu.com):
  Uploading openldap_2.5.16+dfsg-0ubuntu0.22.04.1.dsc: done.
  Uploading openldap_2.5.16+dfsg.orig.tar.gz: done.
  Uploading openldap_2.5.16+dfsg-0ubuntu0.22.04.1.debian.tar.xz: done.
  Uploading openldap_2.5.16+dfsg-0ubuntu0.22.04.1_source.buildinfo: done.
  Uploading openldap_2.5.16+dfsg-0ubuntu0.22.04.1_source.changes: done.
Successfully uploaded packages.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/CHANGES b/CHANGES
2index 6256ae7..23c0e5e 100644
3--- a/CHANGES
4+++ b/CHANGES
5@@ -1,5 +1,10 @@
6 OpenLDAP 2.5 Change Log
7
8+OpenLDAP 2.5.16 Release (2023/07/31)
9+ Fixed slapd cn=config incorrect handling of paused (ITS#10045)
10+ Fixed slapd-meta to account for MOD ops being optional (ITS#10067)
11+ Fixed slapd-asyncmeta to account for MOD ops being optional (ITS#10067)
12+
13 OpenLDAP 2.5.15 Release (2023/07/10)
14 Added libldap openssl3 support (ITS#9436, ITS#10030)
15 Fixed libldap handling of TCP KEEPALIVE options (ITS#10015)
16diff --git a/build/version.var b/build/version.var
17index 5bcd71b..cd4e7aa 100644
18--- a/build/version.var
19+++ b/build/version.var
20@@ -15,9 +15,9 @@
21 ol_package=OpenLDAP
22 ol_major=2
23 ol_minor=5
24-ol_patch=15
25-ol_api_inc=20515
26+ol_patch=16
27+ol_api_inc=20516
28 ol_api_current=1
29-ol_api_revision=10
30+ol_api_revision=11
31 ol_api_age=1
32-ol_release_date="2023/07/10"
33+ol_release_date="2023/07/31"
34diff --git a/debian/changelog b/debian/changelog
35index 61b5af5..df4030a 100644
36--- a/debian/changelog
37+++ b/debian/changelog
38@@ -1,3 +1,12 @@
39+openldap (2.5.16+dfsg-0ubuntu0.22.04.1) jammy; urgency=medium
40+
41+ * New upstream version (LP: #2029170).
42+ - Fixed slapd cn=config incorrect handling of paused (ITS#10045)
43+ - Fixed slapd-meta to account for MOD ops being optional (ITS#10067)
44+ - Fixed slapd-asyncmeta to account for MOD ops being optional (ITS#10067)
45+
46+ -- Sergio Durigan Junior <sergio.durigan@canonical.com> Mon, 31 Jul 2023 18:13:10 -0400
47+
48 openldap (2.5.15+dfsg-0ubuntu0.22.04.1) jammy; urgency=medium
49
50 * New upstream version (LP: #2027079).
51diff --git a/doc/guide/admin/guide.html b/doc/guide/admin/guide.html
52index 5fb51d0..679b61e 100644
53--- a/doc/guide/admin/guide.html
54+++ b/doc/guide/admin/guide.html
55@@ -23,7 +23,7 @@
56 <DIV CLASS="title">
57 <H1 CLASS="doc-title">OpenLDAP Software 2.5 Administrator's Guide</H1>
58 <ADDRESS CLASS="doc-author">The OpenLDAP Project &lt;<A HREF="https://www.openldap.org/">https://www.openldap.org/</A>&gt;</ADDRESS>
59-<ADDRESS CLASS="doc-modified">10 July 2023</ADDRESS>
60+<ADDRESS CLASS="doc-modified">31 July 2023</ADDRESS>
61 <BR CLEAR="All">
62 </DIV>
63 <DIV CLASS="contents">
64diff --git a/servers/slapd/back-asyncmeta/modify.c b/servers/slapd/back-asyncmeta/modify.c
65index a70bae8..c28bdc4 100644
66--- a/servers/slapd/back-asyncmeta/modify.c
67+++ b/servers/slapd/back-asyncmeta/modify.c
68@@ -67,21 +67,15 @@ asyncmeta_back_modify_start(Operation *op,
69
70 for ( i = 0, ml = op->orm_modlist; ml; i++ ,ml = ml->sml_next )
71 ;
72- if (i > 0) {
73- mods = op->o_tmpalloc( sizeof( LDAPMod )*i, op->o_tmpmemctx );
74- }
75
76- if ( mods == NULL ) {
77- rs->sr_err = LDAP_OTHER;
78- retcode = META_SEARCH_ERR;
79- goto doreturn;
80- }
81- modv = ( LDAPMod ** )op->o_tmpalloc( ( i + 1 )*sizeof( LDAPMod * ), op->o_tmpmemctx );
82+ modv = op->o_tmpalloc( ( i + 1 )*sizeof( LDAPMod * ) + i*sizeof( LDAPMod ),
83+ op->o_tmpmemctx );
84 if ( modv == NULL ) {
85 rs->sr_err = LDAP_OTHER;
86 retcode = META_SEARCH_ERR;
87 goto doreturn;
88 }
89+ mods = (LDAPMod *)&modv[ i + 1 ];
90
91 isupdate = be_shadow_update( op );
92 for ( i = 0, ml = op->orm_modlist; ml; ml = ml->sml_next ) {
93@@ -224,6 +218,8 @@ done:
94 op->o_tmpfree( mdn.bv_val, op->o_tmpmemctx );
95 }
96
97+ op->o_tmpfree( modv, op->o_tmpmemctx );
98+
99 doreturn:;
100 Debug( LDAP_DEBUG_TRACE, "%s <<< asyncmeta_back_modify_start[%p]=%d\n", op->o_log_prefix, msc, candidates[candidate].sr_msgid );
101 return retcode;
102diff --git a/servers/slapd/back-meta/modify.c b/servers/slapd/back-meta/modify.c
103index 0a78e76..459e835 100644
104--- a/servers/slapd/back-meta/modify.c
105+++ b/servers/slapd/back-meta/modify.c
106@@ -74,18 +74,8 @@ meta_back_modify( Operation *op, SlapReply *rs )
107 for ( i = 0, ml = op->orm_modlist; ml; i++ ,ml = ml->sml_next )
108 ;
109
110- mods = ch_malloc( sizeof( LDAPMod )*i );
111- if ( mods == NULL ) {
112- rs->sr_err = LDAP_OTHER;
113- send_ldap_result( op, rs );
114- goto cleanup;
115- }
116- modv = ( LDAPMod ** )ch_malloc( ( i + 1 )*sizeof( LDAPMod * ) );
117- if ( modv == NULL ) {
118- rs->sr_err = LDAP_OTHER;
119- send_ldap_result( op, rs );
120- goto cleanup;
121- }
122+ modv = ch_malloc( ( i + 1 )*sizeof( LDAPMod * ) + i*sizeof( LDAPMod ) );
123+ mods = (LDAPMod *)&modv[ i + 1 ];
124
125 dc.ctx = "modifyAttrDN";
126 isupdate = be_shadow_update( op );
127@@ -206,11 +196,10 @@ cleanup:;
128 }
129 if ( modv != NULL ) {
130 for ( i = 0; modv[ i ]; i++ ) {
131- free( modv[ i ]->mod_bvalues );
132+ ch_free( modv[ i ]->mod_bvalues );
133 }
134 }
135- free( mods );
136- free( modv );
137+ ch_free( modv );
138
139 if ( mc ) {
140 meta_back_release_conn( mi, mc );
141diff --git a/servers/slapd/bconfig.c b/servers/slapd/bconfig.c
142index 15d4a6a..4c4b925 100644
143--- a/servers/slapd/bconfig.c
144+++ b/servers/slapd/bconfig.c
145@@ -5966,7 +5966,7 @@ config_back_add( Operation *op, SlapReply *rs )
146 dopause = 0;
147 if ( op->o_abandon ) {
148 rs->sr_err = SLAPD_ABANDON;
149- goto out;
150+ goto unpause;
151 }
152
153 ldap_pvt_thread_rdwr_wlock( &cfb->cb_rwlock );
154@@ -6021,10 +6021,11 @@ config_back_add( Operation *op, SlapReply *rs )
155 out2:;
156 ldap_pvt_thread_rdwr_wunlock( &cfb->cb_rwlock );
157
158-out:;
159+unpause:;
160 if ( dopause )
161 slap_unpause_server();
162
163+out:;
164 { int repl = op->o_dont_replicate;
165 if ( rs->sr_err == LDAP_COMPARE_TRUE ) {
166 rs->sr_text = NULL; /* Set after config_add_internal */
167@@ -6513,7 +6514,7 @@ config_back_modify( Operation *op, SlapReply *rs )
168 do_pause = 0;
169 if ( op->o_abandon ) {
170 rs->sr_err = SLAPD_ABANDON;
171- goto out;
172+ goto unpause;
173 }
174 }
175 ldap_pvt_thread_rdwr_wlock( &cfb->cb_rwlock );
176@@ -6549,9 +6550,10 @@ config_back_modify( Operation *op, SlapReply *rs )
177 }
178
179 ldap_pvt_thread_rdwr_wunlock( &cfb->cb_rwlock );
180-out:
181+unpause:;
182 if ( do_pause )
183 slap_unpause_server();
184+out:
185 send_ldap_result( op, rs );
186 slap_graduate_commit_csn( op );
187 return rs->sr_err;
188@@ -6694,7 +6696,7 @@ config_back_modrdn( Operation *op, SlapReply *rs )
189 dopause = 0;
190 if ( op->o_abandon ) {
191 rs->sr_err = SLAPD_ABANDON;
192- goto out;
193+ goto unpause;
194 }
195
196 ldap_pvt_thread_rdwr_wlock( &cfb->cb_rwlock );
197@@ -6765,9 +6767,10 @@ config_back_modrdn( Operation *op, SlapReply *rs )
198
199 ldap_pvt_thread_rdwr_wunlock( &cfb->cb_rwlock );
200
201-out:
202+unpause:
203 if ( dopause )
204 slap_unpause_server();
205+out:
206 send_ldap_result( op, rs );
207 return rs->sr_err;
208 }

Subscribers

People subscribed via source and target branches