From bf9adc29542bc870faa08d308a55712adfe46188 Mon Sep 17 00:00:00 2001 From: Jaipaul Cheernam Date: Thu, 27 Aug 2026 20:53:16 +0200 Subject: [PATCH] lftp: fix build with OpenSSL 4.0 Backport upstream fix allowing build with OpenSSL 4.x. Upstream-Status: Backport [https://github.com/lavv17/lftp/commit/68d42105d788] Signed-off-by: Jaipaul Cheernam Signed-off-by: Khem Raj --- .../0001-allow-build-with-OpenSSL-4.x.patch | 55 +++++++++++++++++++ .../recipes-connectivity/lftp/lftp_4.9.3.bb | 1 + 2 files changed, 56 insertions(+) create mode 100644 meta-networking/recipes-connectivity/lftp/lftp/0001-allow-build-with-OpenSSL-4.x.patch diff --git a/meta-networking/recipes-connectivity/lftp/lftp/0001-allow-build-with-OpenSSL-4.x.patch b/meta-networking/recipes-connectivity/lftp/lftp/0001-allow-build-with-OpenSSL-4.x.patch new file mode 100644 index 0000000000..f617a0e269 --- /dev/null +++ b/meta-networking/recipes-connectivity/lftp/lftp/0001-allow-build-with-OpenSSL-4.x.patch @@ -0,0 +1,55 @@ +From 68d42105d78838d0ab155296b69fcb99d28d22c2 Mon Sep 17 00:00:00 2001 +From: Rudi Heitbaum +Date: Sat, 21 Mar 2026 03:56:46 +0000 +Subject: [PATCH] allow build with OpenSSL 4.x + +Upstream-Status: Backport [https://github.com/lavv17/lftp/commit/68d42105d788] +Signed-off-by: Jaipaul Cheernam +--- + src/lftp_ssl.cc | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/lftp_ssl.cc b/src/lftp_ssl.cc +index f53edf24..49328f74 100644 +--- a/src/lftp_ssl.cc ++++ b/src/lftp_ssl.cc +@@ -1022,8 +1022,8 @@ const char *lftp_ssl_openssl::strerror() + int lftp_ssl_openssl::verify_crl(X509_STORE_CTX *ctx) + { + X509_OBJECT *obj=0; +- X509_NAME *subject=0; +- X509_NAME *issuer=0; ++ const X509_NAME *subject=0; ++ const X509_NAME *issuer=0; + X509 *xs=0; + X509_CRL *crl=0; + X509_REVOKED *revoked=0; +@@ -1436,7 +1436,7 @@ void lftp_ssl_openssl::check_certificate() + unsigned char *nulstr = (unsigned char *)""; + unsigned char *peer_CN = nulstr; + +- X509_NAME *name = X509_get_subject_name(server_cert) ; ++ const X509_NAME *name = X509_get_subject_name(server_cert) ; + if(name) + while((j = X509_NAME_get_index_by_NID(name, NID_commonName, i))>=0) + i=j; +@@ -1446,7 +1446,7 @@ void lftp_ssl_openssl::check_certificate() + UTF8 etc. */ + + if(i>=0) { +- ASN1_STRING *tmp = X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name,i)); ++ const ASN1_STRING *tmp = X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name,i)); + + /* In OpenSSL 0.9.7d and earlier, ASN1_STRING_to_UTF8 fails if the input + is already UTF-8 encoded. We check for this case and copy the raw +@@ -1522,8 +1522,8 @@ int lftp_ssl_openssl::verify_callback(int ok,X509_STORE_CTX *ctx) + if(cert!=prev_cert) + { + int depth = X509_STORE_CTX_get_error_depth(ctx); +- X509_NAME *subject = X509_get_subject_name(cert); +- X509_NAME *issuer = X509_get_issuer_name(cert); ++ const X509_NAME *subject = X509_get_subject_name(cert); ++ const X509_NAME *issuer = X509_get_issuer_name(cert); + char *subject_line = X509_NAME_oneline(subject, NULL, 0); + char *issuer_line = X509_NAME_oneline(issuer, NULL, 0); + Log::global->Format(3,"Certificate depth: %d; subject: %s; issuer: %s\n", diff --git a/meta-networking/recipes-connectivity/lftp/lftp_4.9.3.bb b/meta-networking/recipes-connectivity/lftp/lftp_4.9.3.bb index d132813403..e46b5c7f10 100644 --- a/meta-networking/recipes-connectivity/lftp/lftp_4.9.3.bb +++ b/meta-networking/recipes-connectivity/lftp/lftp_4.9.3.bb @@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" SRC_URI = "http://lftp.yar.ru/ftp/lftp-${PV}.tar.bz2 \ file://0001-gnulib-fix-lftp-build-with-clang-lld-and-gcc16.patch \ + file://0001-allow-build-with-OpenSSL-4.x.patch \ " SRC_URI[sha256sum] = "adceaef1bd21a38d07c973233fab603813c431f0a8dcbd23239fa9a41ae17b6e"