diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libssh2')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libssh2/default.nix | 30 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libssh2/openssl_add_support_for_libressl_3_5.patch | 26 |
2 files changed, 56 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libssh2/default.nix b/nixpkgs/pkgs/development/libraries/libssh2/default.nix new file mode 100644 index 000000000000..1b5d65335b8d --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libssh2/default.nix @@ -0,0 +1,30 @@ +{ lib, stdenv, fetchurl, openssl, zlib, windows }: + +stdenv.mkDerivation rec { + pname = "libssh2"; + version = "1.10.0"; + + src = fetchurl { + url = "https://www.libssh2.org/download/libssh2-${version}.tar.gz"; + sha256 = "sha256-LWTpDz3tOUuR06LndMogOkF59prr7gMAPlpvpiHkHVE="; + }; + + outputs = [ "out" "dev" "devdoc" ]; + + patches = [ + # https://github.com/libssh2/libssh2/pull/700 + # openssl: add support for LibreSSL 3.5.x + ./openssl_add_support_for_libressl_3_5.patch + ]; + + buildInputs = [ openssl zlib ] + ++ lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64; + + meta = with lib; { + description = "A client-side C library implementing the SSH2 protocol"; + homepage = "https://www.libssh2.org"; + platforms = platforms.all; + license = licenses.bsd3; + maintainers = with maintainers; [ SuperSandro2000 ]; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/libssh2/openssl_add_support_for_libressl_3_5.patch b/nixpkgs/pkgs/development/libraries/libssh2/openssl_add_support_for_libressl_3_5.patch new file mode 100644 index 000000000000..d72a67a63403 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libssh2/openssl_add_support_for_libressl_3_5.patch @@ -0,0 +1,26 @@ +From f0681a4573d7c7f7484d3157ddff7063a200295b Mon Sep 17 00:00:00 2001 +From: Viktor Szakats <commit@vsz.me> +Date: Thu, 19 May 2022 13:25:06 +0000 +Subject: [PATCH] openssl: add support for LibreSSL 3.5.x + +LibreSSL 3.5.0 made more structures opaque, so let's enable existing +support for that when building against these LibreSSL versions. + +Ref: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.5.0-relnotes.txt +--- + src/openssl.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/openssl.h b/src/openssl.h +index 658b040..1733b9e 100644 +--- a/src/openssl.h ++++ b/src/openssl.h +@@ -58,7 +58,8 @@ + #include <openssl/rand.h> + + #if OPENSSL_VERSION_NUMBER >= 0x10100000L && \ +- !defined(LIBRESSL_VERSION_NUMBER) ++ !defined(LIBRESSL_VERSION_NUMBER) || \ ++ LIBRESSL_VERSION_NUMBER >= 0x3050000fL + # define HAVE_OPAQUE_STRUCTS 1 + #endif |