diff options
author | Anton Gerasimov <anton.gerasimov@here.com> | 2018-01-19 15:49:57 +0100 |
---|---|---|
committer | Anton Gerasimov <anton.gerasimov@here.com> | 2018-01-19 15:49:57 +0100 |
commit | fe5193054cfc6e815fdd91baa0f24111461d7dd4 (patch) | |
tree | 4d5e1df89f53c6820dcf08a6471319350488b183 /recipes-support | |
parent | fd82d80f664b1b20e201d49c620ec954d1d30b3c (diff) | |
download | meta-updater-fe5193054cfc6e815fdd91baa0f24111461d7dd4.tar.gz |
Add EVP_PKEY_meth_get* replacement functions to use with OpenSSL 1.0.2m as well
I couldn't find the reason why these functions are not present in libopenssl.so,
but apparently it doesn't affect 1.0.2k
Diffstat (limited to 'recipes-support')
-rw-r--r-- | recipes-support/libp11/files/0001-Workaround-for-a-buggy-version-of-openssl-1.0.2m.patch | 42 | ||||
-rw-r--r-- | recipes-support/libp11/libp11_0.4.7.bb | 3 |
2 files changed, 44 insertions, 1 deletions
diff --git a/recipes-support/libp11/files/0001-Workaround-for-a-buggy-version-of-openssl-1.0.2m.patch b/recipes-support/libp11/files/0001-Workaround-for-a-buggy-version-of-openssl-1.0.2m.patch new file mode 100644 index 0000000..0538eff --- /dev/null +++ b/recipes-support/libp11/files/0001-Workaround-for-a-buggy-version-of-openssl-1.0.2m.patch | |||
@@ -0,0 +1,42 @@ | |||
1 | From ccab5ce63dd5d3dbb4bd02998d21d34407e550f2 Mon Sep 17 00:00:00 2001 | ||
2 | From: Anton Gerasimov <anton.gerasimov@here.com> | ||
3 | Date: Fri, 19 Jan 2018 12:44:27 +0100 | ||
4 | Subject: [PATCH] Workaround for a buggy version of openssl (1.0.2m) | ||
5 | |||
6 | --- | ||
7 | src/p11_pkey.c | 12 +++++++++--- | ||
8 | 1 file changed, 9 insertions(+), 3 deletions(-) | ||
9 | |||
10 | diff --git a/src/p11_pkey.c b/src/p11_pkey.c | ||
11 | index 45d5ad3..75625e6 100644 | ||
12 | --- a/src/p11_pkey.c | ||
13 | +++ b/src/p11_pkey.c | ||
14 | @@ -139,8 +139,14 @@ static void EVP_PKEY_meth_copy(EVP_PKEY_METHOD *dst, const EVP_PKEY_METHOD *src) | ||
15 | |||
16 | #endif | ||
17 | |||
18 | -#if OPENSSL_VERSION_NUMBER < 0x100020d0L || defined(LIBRESSL_VERSION_NUMBER) | ||
19 | -static void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, | ||
20 | +#if OPENSSL_VERSION_NUMBER <= 0x100020e0L || defined(LIBRESSL_VERSION_NUMBER) | ||
21 | + | ||
22 | +# if (OPENSSL_VERSION_NUMBER & 0xFFFFFFF0) == 0x100020d0L | ||
23 | +# undef EVP_PKEY_meth_get_sign | ||
24 | +# undef EVP_PKEY_meth_get_decrypt | ||
25 | +# endif | ||
26 | + | ||
27 | +void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, | ||
28 | int (**psign_init) (EVP_PKEY_CTX *ctx), | ||
29 | int (**psign) (EVP_PKEY_CTX *ctx, | ||
30 | unsigned char *sig, size_t *siglen, | ||
31 | @@ -152,7 +158,7 @@ static void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, | ||
32 | *psign = pmeth->sign; | ||
33 | } | ||
34 | |||
35 | -static void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, | ||
36 | +void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, | ||
37 | int (**pdecrypt_init) (EVP_PKEY_CTX *ctx), | ||
38 | int (**pdecrypt) (EVP_PKEY_CTX *ctx, | ||
39 | unsigned char *out, | ||
40 | -- | ||
41 | 2.15.1 | ||
42 | |||
diff --git a/recipes-support/libp11/libp11_0.4.7.bb b/recipes-support/libp11/libp11_0.4.7.bb index 7d77e90..7a93102 100644 --- a/recipes-support/libp11/libp11_0.4.7.bb +++ b/recipes-support/libp11/libp11_0.4.7.bb | |||
@@ -8,7 +8,8 @@ LICENSE = "LGPLv2+" | |||
8 | LIC_FILES_CHKSUM = "file://COPYING;md5=fad9b3332be894bab9bc501572864b29" | 8 | LIC_FILES_CHKSUM = "file://COPYING;md5=fad9b3332be894bab9bc501572864b29" |
9 | DEPENDS = "libtool openssl" | 9 | DEPENDS = "libtool openssl" |
10 | 10 | ||
11 | SRC_URI = "git://github.com/OpenSC/libp11.git" | 11 | SRC_URI = "git://github.com/OpenSC/libp11.git \ |
12 | file://0001-Workaround-for-a-buggy-version-of-openssl-1.0.2m.patch" | ||
12 | SRCREV = "da725ab727342083478150a203a3c80c4551feb4" | 13 | SRCREV = "da725ab727342083478150a203a3c80c4551feb4" |
13 | 14 | ||
14 | S = "${WORKDIR}/git" | 15 | S = "${WORKDIR}/git" |