libspdm: Fix build with openssl 3.5

Backport new API signature, since the vendored version of openssl in
libspdm is 3.0.14, asn1.h has to sync for providing it.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Alistair Francis <alistair.francis@wdc.com>
Cc: Martin Jansa <martin.jansa@gmail.com>
This commit is contained in:
Khem Raj
2025-04-11 17:57:13 -07:00
parent 528df68be6
commit 9c99f403f7
2 changed files with 35 additions and 1 deletions
@@ -0,0 +1,33 @@
From 92f6c3d8fa26d9019ba27e0c1aa894517ada93b9 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 11 Apr 2025 17:47:05 -0700
Subject: [PATCH] Backport API introduced in openssl 3.5.0
This commit [1] introduced this new API which is used by pem.h from
openssl and it should be provided by asn1.h which is vendored here so
it goes out of sync and causes build errors e.g
In file included from ./os_stub/cryptlib_openssl/pk/x509.c:18:
/usr/include/openssl/pem.h:399:28: error: unknown type name 'OSSL_i2d_of_void_ctx'
399 | int PEM_ASN1_write_bio_ctx(OSSL_i2d_of_void_ctx *i2d, void *vctx,
[1] https://github.com/openssl/openssl/commit/35f6e7ea02b599d5aaf220b4720cbadd946d8023
Upstream-Status: Submitted [https://github.com/DMTF/libspdm/pull/3033]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
os_stub/openssllib/openssl_gen/openssl/asn1.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/os_stub/openssllib/openssl_gen/openssl/asn1.h b/os_stub/openssllib/openssl_gen/openssl/asn1.h
index a90152ee..fcfbe42e 100644
--- a/os_stub/openssllib/openssl_gen/openssl/asn1.h
+++ b/os_stub/openssllib/openssl_gen/openssl/asn1.h
@@ -368,6 +368,7 @@ typedef struct ASN1_VALUE_st ASN1_VALUE;
typedef void *d2i_of_void(void **, const unsigned char **, long);
typedef int i2d_of_void(const void *, unsigned char **);
+typedef int OSSL_i2d_of_void_ctx(const void *, unsigned char **, void *vctx);
/*-
* The following macros and typedefs allow an ASN1_ITEM
@@ -9,7 +9,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=8f9b59a81a88da8e812af43728b72dd7"
DEPENDS = "openssl"
SRC_URI = "git://github.com/DMTF/libspdm.git;branch=main;protocol=https"
SRC_URI = "git://github.com/DMTF/libspdm.git;branch=main;protocol=https \
file://0001-Backport-API-introduced-in-openssl-3.5.0.patch"
SRCREV = "1be116c7b7713fa9003e1bd53b53a34758549eb9"
S = "${WORKDIR}/git"