Merge ~mirespace/ubuntu/+source/heimdal:ftbfs-kafs_strlcpy-lp2036253 into ubuntu/+source/heimdal:ubuntu/devel

Proposed by Miriam España Acebal
Status: Merged
Approved by: Andreas Hasenack
Approved revision: 0fc46e0fead10c6526a541488375652451ed22c1
Merge reported by: Andreas Hasenack
Merged at revision: 0fc46e0fead10c6526a541488375652451ed22c1
Proposed branch: ~mirespace/ubuntu/+source/heimdal:ftbfs-kafs_strlcpy-lp2036253
Merge into: ubuntu/+source/heimdal:ubuntu/devel
Diff against target: 78 lines (+24/-5)
4 files modified
debian/changelog (+12/-0)
debian/control (+7/-0)
debian/libkafs0-heimdal.symbols (+2/-2)
debian/libroken19-heimdal.symbols (+3/-3)
Reviewer Review Type Date Requested Status
Steve Langasek Pending
Canonical Server Reporter Pending
Review via email: mp+457424@code.launchpad.net

Description of the change

Hi team,

PPA for this is ppa:mirespace/heimdal-ftbfs-lp2036253
                https://launchpad.net/~mirespace/+archive/ubuntu/heimdal-ftbfs-lp2036253

The fix is similar to the one that Steve did for krb5. I follow strictly what he did (I'll ping him for his review on this too).

To get the list of shared libraries affected, I ended with an ugly inline command, not-efficient that I run in a lxc noble VM , for both affected libraries:

for s in $(for p in $(apt-cache rdepends libkafs0-heimdal | cut -d':' -f2 | xargs); do for l in $(apt-file list ${p} | grep '.so' | grep lib | cut -d':' -f2| xargs); do readlink -f ${l} ; done; done | sort -u); do nm -D ${s} | grep strlc && apt-file search ${s} && apt-cache show $(apt-file search ${s} | cut -d':' -f1)| grep ^Version; done

and

for s in $(for p in $(apt-cache rdepends libroken19-heimdal | cut -d':' -f2 | xargs); do for l in $(apt-file list ${p} | grep '.so' | grep lib | cut -d':' -f2| xargs); do readlink -f ${l} ; done; done | sort -u); do nm -D ${s} | grep strlc && apt-file search ${s} && apt-cache show $(apt-file search ${s} | cut -d':' -f1)| grep ^Version; done

... I'll do a better script after Xmas (I looked for an already done script for this, but I didn't find one)

For libkafs0-heimdal, the symbols on the output of that inline command are the libroken ones, so nothing to do for libkafs0-heimdal in this sense (nothing to add to d/control).

Heimdal doesn't have autopkgtest. I checked it installs and uninstalls well, but I don't have a clear way/steps to test it (I'll look if there are older SRUs) but I didn't want to delay more the review of the steps taken to fix the issue (I mean, the list of packages affected).

Thanks in advance.

To post a comment you must log in.
Revision history for this message
Miriam España Acebal (mirespace) wrote :

(02:55:36 PM) LocutusOfBorg: mirespace, if I can, I'm happy to sponsor
...
(03:06:07 PM) LocutusOfBorg: both sponsored

https://bugs.launchpad.net/ubuntu/+source/heimdal/+bug/2036253/comments/3

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

This was sponsored and ingested into git already, closing the MP.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/changelog b/debian/changelog
2index 3ce8775..e2127b1 100644
3--- a/debian/changelog
4+++ b/debian/changelog
5@@ -1,3 +1,15 @@
6+heimdal (7.8.git20221117.28daf24+dfsg-3ubuntu2) noble; urgency=medium
7+
8+ * d/lib{kafs0,roken19}-heimdal.symbols:
9+ - _{kafs,rk}_strl{cat,cpy} are made optional symbols, since they
10+ are not needed when built against glibc 2.38 (LP: #2036253).
11+ - Make symbol dependencies on libroken19-heimdal and libkafs0-heimdal
12+ strict to avoid future symbol skew.
13+ * d/control: Declare Breaks: against older packages using these symbols.
14+
15+
16+ -- Miriam España Acebal <miriam.espana@canonical.com> Wed, 29 Nov 2023 12:55:12 +0100
17+
18 heimdal (7.8.git20221117.28daf24+dfsg-3ubuntu1) mantic; urgency=medium
19
20 * Merge from Debian unstable. Remaining changes:
21diff --git a/debian/control b/debian/control
22index a42fe7e..b02d633 100644
23--- a/debian/control
24+++ b/debian/control
25@@ -252,6 +252,13 @@ Pre-Depends: ${misc:Pre-Depends}
26 Section: libs
27 Architecture: any
28 Depends: ${misc:Depends}, ${shlibs:Depends}
29+Breaks: libafsauthent2 (<< 1.8.10-1ubuntu4~),
30+ libafsrpc2 (<< 1.8.10-1ubuntu4~),
31+ libhdb9-heimdal (<<7.8.git20221117.28daf24+dfsg-3ubuntu2~),
32+ libhx509-5-heimdal (<<7.8.git20221117.28daf24+dfsg-3ubuntu2~),
33+ libkadm5srv8-heimdal (<<7.8.git20221117.28daf24+dfsg-3ubuntu2~),
34+ libkdc2-heimdal (<<7.8.git20221117.28daf24+dfsg-3ubuntu2~),
35+ libkrb5-26-heimdal (<<7.8.git20221117.28daf24+dfsg-3ubuntu2~)
36 Description: Heimdal Kerberos - roken support library
37 Heimdal is a free implementation of Kerberos 5 that aims to be
38 compatible with MIT Kerberos.
39diff --git a/debian/libkafs0-heimdal.symbols b/debian/libkafs0-heimdal.symbols
40index 648ab4c..1d965ef 100644
41--- a/debian/libkafs0-heimdal.symbols
42+++ b/debian/libkafs0-heimdal.symbols
43@@ -1,4 +1,4 @@
44-libkafs.so.0 #PACKAGE# #MINVER#
45+libkafs.so.0 #PACKAGE# (= ${binary:Version})
46 _kafs_afslog_all_local_cells@Base 1.4.0+git20110226
47 _kafs_debug@Base 1.4.0+git20110226
48 _kafs_derive_des_key@Base 1.7~git20150920
49@@ -12,7 +12,7 @@ libkafs.so.0 #PACKAGE# #MINVER#
50 _kafs_get_cred@Base 1.4.0+git20110226
51 _kafs_realm_of_cell@Base 1.4.0+git20110226
52 _kafs_resolve_debug@Base 1.4.0+git20110226
53- _kafs_strlcpy@Base 1.4.0+git20110226
54+ (optional) _kafs_strlcpy@Base 1.4.0+git20110226
55 k_afs_cell_of_file@Base 1.4.0+git20110226
56 k_hasafs@Base 1.4.0+git20110226
57 k_hasafs_recheck@Base 1.4.0+git20110226
58diff --git a/debian/libroken19-heimdal.symbols b/debian/libroken19-heimdal.symbols
59index 177457f..2deddeb 100644
60--- a/debian/libroken19-heimdal.symbols
61+++ b/debian/libroken19-heimdal.symbols
62@@ -1,4 +1,4 @@
63-libroken.so.19 #PACKAGE# #MINVER#
64+libroken.so.19 #PACKAGE# (= ${binary:Version})
65 HEIMDAL_ROKEN_1.0@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
66 arg_printusage@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
67 arg_printusage_i18n@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
68@@ -98,8 +98,8 @@ libroken.so.19 #PACKAGE# #MINVER#
69 rk_socket_sockaddr_size@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
70 rk_strcollect@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
71 rk_strerror_r@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
72- rk_strlcat@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
73- rk_strlcpy@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
74+ (optional) rk_strlcat@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
75+ (optional) rk_strlcpy@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
76 rk_strlwr@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
77 rk_strpoolcollect@HEIMDAL_ROKEN_1.0 1.4.0+git20110226
78 rk_strpoolfree@HEIMDAL_ROKEN_1.0 1.4.0+git20110226

Subscribers

People subscribed via source and target branches