Comment 8 for bug 1988730

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

Jammy verification (continued), test (d)

d) It's now possible to have SCRAM and gssapi heimdal mechanisms installed at the same time

Start with SCRAM available on jammy, by installing the gssapi-mit package:

$ sudo apt install libsasl2-modules-gssapi-mit
...
$ ll /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2
lrwxrwxrwx 1 root root 18 Oct 19 21:06 /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2 -> libscram.so.2.0.25

$ dpkg -S /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2
libsasl2-modules-gssapi-mit:amd64: /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2

Confirming that installing libsasl2-modules-gssapi-heimdal from jammy removes libsasl2-modules-gssapi-mit:

$ sudo apt install libsasl2-modules-gssapi-heimdal
(...)
The following packages will be REMOVED:
  libsasl2-modules-gssapi-mit

And that removes the SCRAM module with it.

Switching to jammy-proposed, however, while still removing libsasl2-modules-gssapi-mit, will NOT remove the SCRAM module:

$ dpkg -l | grep -E "^ii.*sasl2" | awk '{print $2,$3}'
libsasl2-2:amd64 2.1.27+dfsg2-3ubuntu1.1
libsasl2-modules:amd64 2.1.27+dfsg2-3ubuntu1.2
libsasl2-modules-db:amd64 2.1.27+dfsg2-3ubuntu1.1
libsasl2-modules-gssapi-heimdal:amd64 2.1.27+dfsg2-3ubuntu1.2

$ apt-cache policy libsasl2-modules
libsasl2-modules:
  Installed: 2.1.27+dfsg2-3ubuntu1.2
  Candidate: 2.1.27+dfsg2-3ubuntu1.2
  Version table:
 *** 2.1.27+dfsg2-3ubuntu1.2 500
        500 http://br.archive.ubuntu.com/ubuntu jammy-proposed/main amd64 Packages
        100 /var/lib/dpkg/status
     2.1.27+dfsg2-3ubuntu1.1 500
        500 http://br.archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
     2.1.27+dfsg2-3ubuntu1 500
        500 http://br.archive.ubuntu.com/ubuntu jammy/main amd64 Packages

And even though we no longer have libsasl2-modules-gssapi-mit (due to the expected conflict with -heimdal), the SCRAM module is available:

$ ll /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2
lrwxrwxrwx 1 root root 18 Dec 12 11:52 /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2 -> libscram.so.2.0.25

$ dpkg -S /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2
libsasl2-modules:amd64: /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2

Now performing a release upgrade to kinetic with the system in the above state:
- like before, the summary presents that two (unrelated to cyrus-sasl2) packages will be removed
- in the end, 13 unrelated packages were removed:
13 packages are going to be removed.

 Continue [yN] Details [d]d
Remove (was auto installed) binutils binutils-common
  binutils-x86-64-linux-gnu inetutils-telnet libbinutils
  libctf-nobfd0 libctf0 libdns-export1110 libgprofng0 libicu70
  libisc-export1105 python3-openssl telnet

After the release upgrade, these were the sasl2 packages installed (from kinetic):
$ dpkg -l | grep sasl2 | awk '{print $2,$3}'
libsasl2-2:amd64 2.1.28+dfsg-6ubuntu2
libsasl2-modules:amd64 2.1.28+dfsg-6ubuntu2
libsasl2-modules-db:amd64 2.1.28+dfsg-6ubuntu2
libsasl2-modules-gssapi-heimdal:amd64 2.1.28+dfsg-6ubuntu2

$ apt-cache policy libsasl2-modules
libsasl2-modules:
  Installed: 2.1.28+dfsg-6ubuntu2
  Candidate: 2.1.28+dfsg-6ubuntu2
  Version table:
 *** 2.1.28+dfsg-6ubuntu2 500
        500 http://br.archive.ubuntu.com/ubuntu kinetic/main amd64 Packages
        100 /var/lib/dpkg/status

And SCRAM remained available:
$ ll /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2
lrwxrwxrwx 1 root root 18 Aug 16 2022 /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2 -> libscram.so.2.0.25

$ dpkg -S /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2
libsasl2-modules:amd64: /usr/lib/x86_64-linux-gnu/sasl2/libscram.so.2

Test (d) succeeded.