mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-04 14:39:54 +00:00
pkcs11-provider: backport a fix for build with gcc-14
* fails only with 32bit MACHINEs, e.g. full log from qemux86: http://errors.yoctoproject.org/Errors/Details/790494/ Signed-off-by: Martin Jansa <martin.jansa@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
+49
@@ -0,0 +1,49 @@
|
||||
From 088f038de633b5de777fb0f95cd9598f320151f6 Mon Sep 17 00:00:00 2001
|
||||
From: Simo Sorce <simo@redhat.com>
|
||||
Date: Wed, 5 Jun 2024 11:22:35 -0400
|
||||
Subject: [PATCH] Fix types for old 32 bit systems
|
||||
|
||||
On x86 CK_ULONG and size_t have different sizes, ensure we use
|
||||
compatible types on our helper functions.
|
||||
|
||||
Signed-off-by: Simo Sorce <simo@redhat.com>
|
||||
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
|
||||
---
|
||||
Upstream-Status: Backport [https://github.com/latchset/pkcs11-provider/commit/9fa16b7fd398b62f06cb10892fe93dc574d67399]
|
||||
|
||||
src/asymmetric_cipher.c | 4 ++--
|
||||
src/util.h | 2 +-
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/asymmetric_cipher.c b/src/asymmetric_cipher.c
|
||||
index 4d87b1c..3256fd2 100644
|
||||
--- a/src/asymmetric_cipher.c
|
||||
+++ b/src/asymmetric_cipher.c
|
||||
@@ -251,12 +251,12 @@ static int p11prov_rsaenc_decrypt_init(void *ctx, void *provkey,
|
||||
static int
|
||||
p11prov_tls_constant_time_depadding(struct p11prov_rsaenc_ctx *encctx,
|
||||
unsigned char *out, unsigned char *buf,
|
||||
- size_t *out_size, CK_ULONG *ret_cond)
|
||||
+ CK_ULONG *out_size, CK_ULONG *ret_cond)
|
||||
{
|
||||
unsigned char randbuf[SSL_MAX_MASTER_KEY_LENGTH];
|
||||
CK_ULONG ver_cond = 0;
|
||||
CK_ULONG cond = 0;
|
||||
- size_t length = SSL_MAX_MASTER_KEY_LENGTH;
|
||||
+ CK_ULONG length = SSL_MAX_MASTER_KEY_LENGTH;
|
||||
int err;
|
||||
|
||||
/* always generate a random buffer, to constant_time swap in
|
||||
diff --git a/src/util.h b/src/util.h
|
||||
index bcbc2db..1b24666 100644
|
||||
--- a/src/util.h
|
||||
+++ b/src/util.h
|
||||
@@ -120,7 +120,7 @@ static inline int constant_select_int(CK_ULONG cond, int a, int b)
|
||||
return (int)((A & mask) | (B & ~mask));
|
||||
}
|
||||
|
||||
-static inline void constant_select_buf(CK_ULONG cond, size_t size,
|
||||
+static inline void constant_select_buf(CK_ULONG cond, CK_ULONG size,
|
||||
unsigned char *dst, unsigned char *a,
|
||||
unsigned char *b)
|
||||
{
|
||||
@@ -14,7 +14,9 @@ DEPENDS = "openssl"
|
||||
|
||||
SRCREV = "3a4fdd2a2e5643af2a0f857b66a19b9fa109d40f"
|
||||
|
||||
SRC_URI = "git://github.com/latchset/${BPN}.git;branch=main;protocol=https"
|
||||
SRC_URI = "git://github.com/latchset/${BPN}.git;branch=main;protocol=https \
|
||||
file://0001-Fix-types-for-old-32-bit-systems.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user