[pkg-opensc-maint] Bug#1062563: libp11: NMU diff for 64-bit time_t transition

Steve Langasek vorlon at debian.org
Thu Feb 1 23:04:57 GMT 2024


Source: libp11
Version: 0.4.12-1
Severity: serious
Tags: patch pending
Justification: library ABI skew on upgrade
User: debian-arm at lists.debian.org
Usertags: time-t

NOTICE: these changes must not be uploaded to unstable yet!

Dear maintainer,

As part of the 64-bit time_t transition required to support 32-bit
architectures in 2038 and beyond
(https://wiki.debian.org/ReleaseGoals/64bit-time), we have identified
libp11 as a source package shipping runtime libraries whose ABI
either is affected by the change in size of time_t, or could not be
analyzed via abi-compliance-checker (and therefore to be on the safe
side we assume is affected).

To ensure that inconsistent combinations of libraries with their
reverse-dependencies are never installed together, it is necessary to
have a library transition, which is most easily done by renaming the
runtime library package.

Since turning on 64-bit time_t is being handled centrally through a change
to the default dpkg-buildflags (https://bugs.debian.org/1037136), it is
important that libraries affected by this ABI change all be uploaded close
together in time.  Therefore I have prepared a 0-day NMU for libp11
which will initially be uploaded to experimental if possible, then to
unstable after packages have cleared binary NEW.

Please find the patch for this NMU attached.

If you have any concerns about this patch, please reach out ASAP.  Although
this package will be uploaded to experimental immediately, there will be a
period of several days before we begin uploads to unstable; so if information
becomes available that your package should not be included in the transition,
there is time for us to amend the planned uploads.



-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.5.0-14-generic (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
-------------- next part --------------
diff -Nru libp11-0.4.12/debian/changelog libp11-0.4.12/debian/changelog
--- libp11-0.4.12/debian/changelog	2023-08-21 12:21:43.000000000 +0000
+++ libp11-0.4.12/debian/changelog	2024-02-01 23:04:35.000000000 +0000
@@ -1,3 +1,10 @@
+libp11 (0.4.12-1.1) experimental; urgency=medium
+
+  * Non-maintainer upload.
+  * Rename libraries for 64-bit time_t transition.
+
+ -- Steve Langasek <vorlon at debian.org>  Thu, 01 Feb 2024 23:04:35 +0000
+
 libp11 (0.4.12-1) unstable; urgency=medium
 
   * Team upload
diff -Nru libp11-0.4.12/debian/control libp11-0.4.12/debian/control
--- libp11-0.4.12/debian/control	2023-08-21 12:21:43.000000000 +0000
+++ libp11-0.4.12/debian/control	2024-02-01 23:04:35.000000000 +0000
@@ -16,7 +16,7 @@
 
 Package: libp11-dev
 Architecture: any
-Depends: libp11-3 (= ${binary:Version}),
+Depends: libp11-3t64 (= ${binary:Version}),
          libssl-dev,
          pkg-config,
          ${misc:Depends}
@@ -28,14 +28,15 @@
  .
  This package contains the header files and static libraries.
 
-Package: libp11-3
+Package: libp11-3t64
+Provides: ${t64:Provides}
 Architecture: any
 Multi-Arch: same
 Section: libs
 Pre-Depends: ${misc:Pre-Depends}
 Depends: ${misc:Depends}, ${shlibs:Depends}
-Breaks: libp11-2
-Replaces: libp11-2
+Breaks: libp11-3 (<< ${source:Version}), libp11-2
+Replaces: libp11-3, libp11-2
 Description: pkcs#11 convenience library
  Libp11 is a library to simplify using smart cards via PKCS#11
  modules.  It was spun of the OpenSC project but can be used with any
diff -Nru libp11-0.4.12/debian/libp11-3.install libp11-0.4.12/debian/libp11-3.install
--- libp11-0.4.12/debian/libp11-3.install	2023-08-21 12:21:43.000000000 +0000
+++ libp11-0.4.12/debian/libp11-3.install	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-debian/tmp/usr/lib/*/libp11*.so.*
diff -Nru libp11-0.4.12/debian/libp11-3.symbols libp11-0.4.12/debian/libp11-3.symbols
--- libp11-0.4.12/debian/libp11-3.symbols	2023-08-21 12:21:43.000000000 +0000
+++ libp11-0.4.12/debian/libp11-3.symbols	1970-01-01 00:00:00.000000000 +0000
@@ -1,52 +0,0 @@
-libp11.so.3 libp11-3 #MINVER#
- ERR_get_CKR_code at LIBP11_3 0.4.9
- ERR_load_PKCS11_strings at LIBP11_3 0.4.4
- LIBP11_3 at LIBP11_3 0.4.4
- PKCS11_CTX_free at LIBP11_3 0.4.4
- PKCS11_CTX_init_args at LIBP11_3 0.4.4
- PKCS11_CTX_load at LIBP11_3 0.4.4
- PKCS11_CTX_new at LIBP11_3 0.4.4
- PKCS11_CTX_unload at LIBP11_3 0.4.4
- PKCS11_change_pin at LIBP11_3 0.4.4
- PKCS11_ecdsa_method_free at LIBP11_3 0.4.4
- PKCS11_enumerate_certs at LIBP11_3 0.4.4
- PKCS11_enumerate_keys at LIBP11_3 0.4.4
- PKCS11_enumerate_public_keys at LIBP11_3 0.4.4
- PKCS11_enumerate_slots at LIBP11_3 0.4.4
- PKCS11_find_certificate at LIBP11_3 0.4.4
- PKCS11_find_key at LIBP11_3 0.4.4
- PKCS11_find_next_token at LIBP11_3 0.4.9
- PKCS11_find_token at LIBP11_3 0.4.4
- PKCS11_generate_key at LIBP11_3 0.4.4
- PKCS11_generate_random at LIBP11_3 0.4.4
- PKCS11_get_ec_key_method at LIBP11_3 0.4.4
- PKCS11_get_ecdh_method at LIBP11_3 0.4.4
- PKCS11_get_ecdsa_method at LIBP11_3 0.4.4
- PKCS11_get_key_exponent at LIBP11_3 0.4.4
- PKCS11_get_key_modulus at LIBP11_3 0.4.4
- PKCS11_get_key_size at LIBP11_3 0.4.4
- PKCS11_get_key_type at LIBP11_3 0.4.4
- PKCS11_get_private_key at LIBP11_3 0.4.4
- PKCS11_get_public_key at LIBP11_3 0.4.4
- PKCS11_get_rsa_method at LIBP11_3 0.4.4
- PKCS11_get_slotid_from_slot at LIBP11_3 0.4.4
- PKCS11_init_pin at LIBP11_3 0.4.4
- PKCS11_init_token at LIBP11_3 0.4.4
- PKCS11_is_logged_in at LIBP11_3 0.4.4
- PKCS11_login at LIBP11_3 0.4.4
- PKCS11_logout at LIBP11_3 0.4.4
- PKCS11_open_session at LIBP11_3 0.4.4
- PKCS11_pkey_meths at LIBP11_3 0.4.9
- PKCS11_private_decrypt at LIBP11_3 0.4.4
- PKCS11_private_encrypt at LIBP11_3 0.4.4
- PKCS11_release_all_slots at LIBP11_3 0.4.4
- PKCS11_remove_certificate at LIBP11_3 0.4.9
- PKCS11_remove_key at LIBP11_3 0.4.9
- PKCS11_seed_random at LIBP11_3 0.4.4
- PKCS11_set_ui_method at LIBP11_3 0.4.4
- PKCS11_sign at LIBP11_3 0.4.4
- PKCS11_store_certificate at LIBP11_3 0.4.4
- PKCS11_store_private_key at LIBP11_3 0.4.4
- PKCS11_store_public_key at LIBP11_3 0.4.4
- PKCS11_update_slots at LIBP11_3 0.4.12
- PKCS11_verify at LIBP11_3 0.4.4
diff -Nru libp11-0.4.12/debian/libp11-3t64.install libp11-0.4.12/debian/libp11-3t64.install
--- libp11-0.4.12/debian/libp11-3t64.install	1970-01-01 00:00:00.000000000 +0000
+++ libp11-0.4.12/debian/libp11-3t64.install	2023-08-21 12:21:43.000000000 +0000
@@ -0,0 +1 @@
+debian/tmp/usr/lib/*/libp11*.so.*
diff -Nru libp11-0.4.12/debian/libp11-3t64.lintian-overrides libp11-0.4.12/debian/libp11-3t64.lintian-overrides
--- libp11-0.4.12/debian/libp11-3t64.lintian-overrides	1970-01-01 00:00:00.000000000 +0000
+++ libp11-0.4.12/debian/libp11-3t64.lintian-overrides	2024-02-01 23:04:35.000000000 +0000
@@ -0,0 +1 @@
+libp11-3t64: package-name-doesnt-match-sonames libp11-3
diff -Nru libp11-0.4.12/debian/libp11-3t64.symbols libp11-0.4.12/debian/libp11-3t64.symbols
--- libp11-0.4.12/debian/libp11-3t64.symbols	1970-01-01 00:00:00.000000000 +0000
+++ libp11-0.4.12/debian/libp11-3t64.symbols	2024-02-01 23:04:35.000000000 +0000
@@ -0,0 +1,52 @@
+libp11.so.3 libp11-3t64 #MINVER#
+ ERR_get_CKR_code at LIBP11_3 0.4.9
+ ERR_load_PKCS11_strings at LIBP11_3 0.4.4
+ LIBP11_3 at LIBP11_3 0.4.4
+ PKCS11_CTX_free at LIBP11_3 0.4.4
+ PKCS11_CTX_init_args at LIBP11_3 0.4.4
+ PKCS11_CTX_load at LIBP11_3 0.4.4
+ PKCS11_CTX_new at LIBP11_3 0.4.4
+ PKCS11_CTX_unload at LIBP11_3 0.4.4
+ PKCS11_change_pin at LIBP11_3 0.4.4
+ PKCS11_ecdsa_method_free at LIBP11_3 0.4.4
+ PKCS11_enumerate_certs at LIBP11_3 0.4.4
+ PKCS11_enumerate_keys at LIBP11_3 0.4.4
+ PKCS11_enumerate_public_keys at LIBP11_3 0.4.4
+ PKCS11_enumerate_slots at LIBP11_3 0.4.4
+ PKCS11_find_certificate at LIBP11_3 0.4.4
+ PKCS11_find_key at LIBP11_3 0.4.4
+ PKCS11_find_next_token at LIBP11_3 0.4.9
+ PKCS11_find_token at LIBP11_3 0.4.4
+ PKCS11_generate_key at LIBP11_3 0.4.4
+ PKCS11_generate_random at LIBP11_3 0.4.4
+ PKCS11_get_ec_key_method at LIBP11_3 0.4.4
+ PKCS11_get_ecdh_method at LIBP11_3 0.4.4
+ PKCS11_get_ecdsa_method at LIBP11_3 0.4.4
+ PKCS11_get_key_exponent at LIBP11_3 0.4.4
+ PKCS11_get_key_modulus at LIBP11_3 0.4.4
+ PKCS11_get_key_size at LIBP11_3 0.4.4
+ PKCS11_get_key_type at LIBP11_3 0.4.4
+ PKCS11_get_private_key at LIBP11_3 0.4.4
+ PKCS11_get_public_key at LIBP11_3 0.4.4
+ PKCS11_get_rsa_method at LIBP11_3 0.4.4
+ PKCS11_get_slotid_from_slot at LIBP11_3 0.4.4
+ PKCS11_init_pin at LIBP11_3 0.4.4
+ PKCS11_init_token at LIBP11_3 0.4.4
+ PKCS11_is_logged_in at LIBP11_3 0.4.4
+ PKCS11_login at LIBP11_3 0.4.4
+ PKCS11_logout at LIBP11_3 0.4.4
+ PKCS11_open_session at LIBP11_3 0.4.4
+ PKCS11_pkey_meths at LIBP11_3 0.4.9
+ PKCS11_private_decrypt at LIBP11_3 0.4.4
+ PKCS11_private_encrypt at LIBP11_3 0.4.4
+ PKCS11_release_all_slots at LIBP11_3 0.4.4
+ PKCS11_remove_certificate at LIBP11_3 0.4.9
+ PKCS11_remove_key at LIBP11_3 0.4.9
+ PKCS11_seed_random at LIBP11_3 0.4.4
+ PKCS11_set_ui_method at LIBP11_3 0.4.4
+ PKCS11_sign at LIBP11_3 0.4.4
+ PKCS11_store_certificate at LIBP11_3 0.4.4
+ PKCS11_store_private_key at LIBP11_3 0.4.4
+ PKCS11_store_public_key at LIBP11_3 0.4.4
+ PKCS11_update_slots at LIBP11_3 0.4.12
+ PKCS11_verify at LIBP11_3 0.4.4


More information about the pkg-opensc-maint mailing list