summaryrefslogtreecommitdiff
path: root/app-crypt/p11-kit
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-08-04 03:16:33 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-08-04 03:16:33 +0100
commitf71e91f3fbcdebf01a5ecf58164716586daeaa5b (patch)
treede424b7f2c5bc642fea9632333bea58bee68c202 /app-crypt/p11-kit
parentb0ebd12de22226fd7b69140ccd700efda3eb5fa6 (diff)
gentoo auto-resync : 04:08:2023 - 03:16:33
Diffstat (limited to 'app-crypt/p11-kit')
-rw-r--r--app-crypt/p11-kit/Manifest2
-rw-r--r--app-crypt/p11-kit/files/p11-kit-0.25.0-fix-C_GetInterface.patch39
-rw-r--r--app-crypt/p11-kit/p11-kit-0.25.0-r1.ebuild52
3 files changed, 93 insertions, 0 deletions
diff --git a/app-crypt/p11-kit/Manifest b/app-crypt/p11-kit/Manifest
index 7401a36b7b5b..c5bd81e38e02 100644
--- a/app-crypt/p11-kit/Manifest
+++ b/app-crypt/p11-kit/Manifest
@@ -1,8 +1,10 @@
AUX p11-kit-0.24.1-configure-clang16.patch 1071 BLAKE2B d12b500a4f38060ec9845cf6b0a348af11b8a1f02fb7d9c4cb2a74825305808d710ab6f69efc0b36f304f0e74a269a81b89b5651e2261c2109b6f942d80749d3 SHA512 5a6dc630d23607910faa1923e2389817f356df33a90e973612f92ef0617a53650cb316e1f2d009ddc658e4599721ad76b5a31ea2150928702c1b6937ab07023d
+AUX p11-kit-0.25.0-fix-C_GetInterface.patch 1410 BLAKE2B c15a8950a73cd9b0a656df2e00c8068abacb14dc9c9b30e67fb777b9987a4419a215904828554a0269699319725d90aab4996895231d325be825a431e99ad4e4 SHA512 69c31b5f2c5dbfb5504281c2518a1cb555973e0a80c5317dc8605d793740c8f2fca0506c2f9baa88de181bab9455a16efdf9649a5a08c35214f2bc46e9dc265a
DIST p11-kit-0.23.22.tar.xz 830016 BLAKE2B 4e1edfd9e2441d237c07a16c003aee5ffde38f1cf545c26e435645429f2cfa4fe7ca61cdc3c3940390aa040ba991f2ee3995b14cc31bb886d5eeffa8ed5e1721 SHA512 098819e6ca4ad9cc2a0bc2e478aea67354d051a4f03e6c7d75d13d2469b6dc7654f26b15530052f6ed51acb35531c2539e0f971b31e29e6673e857c903afb080
DIST p11-kit-0.24.1.tar.xz 838304 BLAKE2B e5cb98881279199e2674e2ff4f12d72c4d126c54429ee7ece6dd56ad1987f84abf58a67b8bf2405b19a5bca9d1106f8ec901364ac3d2488f65b3f92b51f850fe SHA512 8cf170c714bb9e0cf3df93e8ec55b8e3c55cabf2c6a27f177ac6de8b8028985df2ca0216d3215d6828dc2ae3095c4e1a4febe8cb26b88ec321defc66bb011e81
DIST p11-kit-0.25.0.tar.xz 958940 BLAKE2B 6ffce977f86c516a327afe50f4cc5a36e86ba7f43c6cb555db419d9e4ba7543a9f1847ba83da348cd6d7bbebe55dfa26cfe3a3aaa3e1d5420a4b8dc6cbbff088 SHA512 e6df3cb224f6ff5671bd3c0557503b5f20bbfded1b6ec340b1dafcbd1b1725ea2d41d0e920756716e0fe9cb28270d115fe77b23ec876a15007b22e3f30d015fe
EBUILD p11-kit-0.23.22.ebuild 1419 BLAKE2B dbd06b7fbf70073570c4bf38bb8f5f6c8875fc932f77bfbeb6934b00d0550371576276190b8b4d054f23633778a69d65ac4c7cc5930f0350fa9e5389d23b4c62 SHA512 d4330c6ea50ebab32a47c550148276a34ead4b8202a8d34efb427564e1b1edf42e9c21885a1252abb49d5820a90498f5e455189de2f6fa6dd3af0c3e53c39aff
EBUILD p11-kit-0.24.1-r1.ebuild 1667 BLAKE2B 75be06aefb5adde36d1009778e221f09a3a1d6b2fa24dfe364b7b04c514decfe3473a998114a2ba6f3d9d3c96cfca7de1f2a2179cb441ed3bff11ebc13c03909 SHA512 3fde1185e77d1a04b268bb270c62b00829984f1f2a8ce9f0ea704efb4bdfbe4bc1be2750bf210724cb2bb46775eab03a8c881cdc397afb37173ae125fa038683
+EBUILD p11-kit-0.25.0-r1.ebuild 1399 BLAKE2B 34ed78a41c3edc7c32f756a1709ccc9663f40a62f268031db7ed3fa1d7b7c891c8f0fc8e8eb51aebaa9669dca9b8d62414b39221a9fed1860024964f6985be9a SHA512 017bfab5cf0ee8a25da65189e07be3bca4a90a7ccfb44ec1d04fa7dec129b532a36da7c834088676e2f93ec50c8fa7a5e578f5e082a8188918a194bb3e5a358d
EBUILD p11-kit-0.25.0.ebuild 1341 BLAKE2B 51085ea00a4726dc7f6a82407c0307186f5ff63d05f7285912cd300d83392cc170b9843605823667ff16dbe03cfc71c6aed7c462c69adeeefa25340a4129e08d SHA512 17f6336889db7ebdc49aa78c73ff67f93c99b92ce717cbba798ba9942cde91c0404b88479b05ccb00dec3db88c119e1b8d1edd7ba5f42c8fe4d9fc16847d813f
MISC metadata.xml 382 BLAKE2B 9ed935e598f60088af1877e443371ccb2c70fc397b21702cb4c47a971132c8a912763bf6ab0d27a3b1a387df39542ac7c5f59345a123808476578878633ed938 SHA512 97c120c9c10d8ee73162beb9970f07153f10b095199adee814459754a3df1414f25b8faae036a19f165a45f8ed4ad0a3087272139d69326018450006b75047a1
diff --git a/app-crypt/p11-kit/files/p11-kit-0.25.0-fix-C_GetInterface.patch b/app-crypt/p11-kit/files/p11-kit-0.25.0-fix-C_GetInterface.patch
new file mode 100644
index 000000000000..b3b411c33bdc
--- /dev/null
+++ b/app-crypt/p11-kit/files/p11-kit-0.25.0-fix-C_GetInterface.patch
@@ -0,0 +1,39 @@
+https://github.com/p11-glue/p11-kit/commit/d1d4b0ac316a27c739ff91e6c4153f1154e96e5a
+
+From d1d4b0ac316a27c739ff91e6c4153f1154e96e5a Mon Sep 17 00:00:00 2001
+From: Xi Ruoyao <xry111@xry111.site>
+Date: Thu, 27 Jul 2023 12:18:15 +0800
+Subject: [PATCH] Fix probing of C_GetInterface
+
+`p11_dl_symbol (dl, "C_GetInterface")` uses dlsym() to find
+C_GetInterface in the loaded pkcs11 module. For legacy (pre-3.0) pkcs11
+modules, C_GetInterface is not defined in the module. But according to
+the documentation of dlsym():
+
+ The search performed by dlsym() is breadth first through the
+ dependency tree of these shared objects.
+
+So if a pkcs11 module links to libp11-kit.so, the C_GetInterface
+implementation in libp11-kit.so itself will be found. This
+C_GetInterface will return the metadata of p11-kit-proxy.so, causing
+"Refuse to load the p11-kit-proxy.so as a registered module".
+
+To solve the issue, if p11_dl_symbol() returns the C_GetInterface in
+libp11-kit.so itself, we should ignore it and continue trying
+C_GetFunctionList.
+--- a/p11-kit/modules.c
++++ b/p11-kit/modules.c
+@@ -383,6 +383,12 @@ dlopen_and_get_function_list (Module *mod,
+ mod->loaded_module = dl;
+
+ gi = p11_dl_symbol (dl, "C_GetInterface");
++
++#ifndef OS_WIN32
++ if (gi == C_GetInterface)
++ gi = NULL;
++#endif
++
+ if (gi) {
+ /* Get the default standard interface */
+ rv = gi ((unsigned char *)"PKCS 11", NULL, &interface, 0);
+
diff --git a/app-crypt/p11-kit/p11-kit-0.25.0-r1.ebuild b/app-crypt/p11-kit/p11-kit-0.25.0-r1.ebuild
new file mode 100644
index 000000000000..b2c897076931
--- /dev/null
+++ b/app-crypt/p11-kit/p11-kit-0.25.0-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit bash-completion-r1 meson-multilib
+
+DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
+HOMEPAGE="https://p11-glue.github.io/p11-glue/p11-kit.html"
+SRC_URI="https://github.com/p11-glue/p11-kit/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="+libffi gtk-doc nls systemd test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ app-misc/ca-certificates
+ >=dev-libs/libtasn1-3.4:=[${MULTILIB_USEDEP}]
+ libffi? ( dev-libs/libffi:=[${MULTILIB_USEDEP}] )
+ systemd? ( sys-apps/systemd:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ gtk-doc? ( dev-util/gtk-doc )
+ nls? ( sys-devel/gettext )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-C_GetInterface.patch
+)
+
+multilib_src_configure() {
+ # Disable unsafe tests, bug#502088
+ export FAKED_MODE=1
+
+ local emesonargs=(
+ -Dbashcompdir="$(get_bashcompdir)"
+ -Dtrust_module=enabled
+ -Dtrust_paths="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
+ $(meson_feature libffi)
+ $(meson_use nls)
+ $(meson_use test)
+ $(meson_native_use_bool gtk-doc gtk_doc)
+ $(meson_native_true man)
+ $(meson_native_use_feature systemd)
+ )
+
+ meson_src_configure
+}