From fd41a333d806b9d4ac4a5f39775b650edc5756f6 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sat, 5 Oct 2019 13:49:52 +0200 Subject: libcouchbase: fix build This applies an upstream fix from libcouchbase to fix a timeout issue with openssl 1.1. See also https://hydra.nixos.org/build/102495724 ZHF #68361 --- ...01-Fix-timeouts-in-libcouchbase-testsuite.patch | 36 ++++++++++++++++++++++ .../development/libraries/libcouchbase/default.nix | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/libraries/libcouchbase/0001-Fix-timeouts-in-libcouchbase-testsuite.patch (limited to 'pkgs') diff --git a/pkgs/development/libraries/libcouchbase/0001-Fix-timeouts-in-libcouchbase-testsuite.patch b/pkgs/development/libraries/libcouchbase/0001-Fix-timeouts-in-libcouchbase-testsuite.patch new file mode 100644 index 00000000000..1c57757f855 --- /dev/null +++ b/pkgs/development/libraries/libcouchbase/0001-Fix-timeouts-in-libcouchbase-testsuite.patch @@ -0,0 +1,36 @@ +From 58237e64fa77ec5cdec658b3295f71ec899175fa Mon Sep 17 00:00:00 2001 +From: Maximilian Bosch +Date: Sat, 5 Oct 2019 13:47:59 +0200 +Subject: [PATCH] Fix timeouts in libcouchbase testsuite + +Nix-specific patch. Basically +https://github.com/couchbase/libcouchbase/commit/b272f6ab88be523bbcf9d5c4252d07fccb023fe5, but +rebased onto 2.10.4. +--- + src/ssl/ssl_e.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/ssl/ssl_e.c b/src/ssl/ssl_e.c +index f4506cf..734a3e6 100644 +--- a/src/ssl/ssl_e.c ++++ b/src/ssl/ssl_e.c +@@ -210,10 +210,16 @@ flush_ssl_data(lcbio_ESSL *es) + * calls. While we could have done this inline with the send() call this + * would make future optimization more difficult. */ + GT_WRITE_DONE: ++#if !LCB_CAN_OPTIMIZE_SSL_BIO ++ BIO_get_mem_ptr(es->wbio, &wmb); ++#endif + while (wmb->length > (size_t)tmp_len) { + char dummy[4096]; + unsigned to_read = MINIMUM(wmb->length-tmp_len, sizeof dummy); + BIO_read(es->wbio, dummy, to_read); ++#if !LCB_CAN_OPTIMIZE_SSL_BIO ++ BIO_get_mem_ptr(es->wbio, &wmb); ++#endif + } + BIO_clear_retry_flags(es->wbio); + return 0; +-- +2.23.0 + diff --git a/pkgs/development/libraries/libcouchbase/default.nix b/pkgs/development/libraries/libcouchbase/default.nix index 23b39bca1f3..ccfe241324e 100644 --- a/pkgs/development/libraries/libcouchbase/default.nix +++ b/pkgs/development/libraries/libcouchbase/default.nix @@ -19,6 +19,8 @@ stdenv.mkDerivation rec { # Running tests in parallel does not work enableParallelChecking = false; + patches = [ ./0001-Fix-timeouts-in-libcouchbase-testsuite.patch ]; + doCheck = !stdenv.isDarwin; meta = with stdenv.lib; { -- cgit 1.4.1