From 16796cfc8223ccfca9c3c65c3c75621e497b9945 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Thu, 20 Jun 2019 10:20:59 +0200 Subject: v2.10.4 from Fedora --- 0001-enforce-system-crypto-policies.patch | 26 - 0002-do-not-install-plugins-into-libdir.patch | 80 --- 0003-fix-pkgconfig-paths.patch | 28 - compat_reports/2.10.3_to_2.10.4/compat_report.html | 600 +++++++++++++++++++++ ...hbase-0001-enforce-system-crypto-policies.patch | 26 + ...e-0002-do-not-install-plugins-into-libdir.patch | 80 +++ libcouchbase-0003-fix-pkgconfig-paths.patch | 28 + libcouchbase-0004-fix-test-so-resolution.patch | 26 + ...005-fixes-ssl-sockets-with-openssl-1.1.1c.patch | 37 ++ libcouchbase.spec | 22 +- libcouchbase.xml | 2 +- 11 files changed, 814 insertions(+), 141 deletions(-) delete mode 100644 0001-enforce-system-crypto-policies.patch delete mode 100644 0002-do-not-install-plugins-into-libdir.patch delete mode 100644 0003-fix-pkgconfig-paths.patch create mode 100644 compat_reports/2.10.3_to_2.10.4/compat_report.html create mode 100644 libcouchbase-0001-enforce-system-crypto-policies.patch create mode 100644 libcouchbase-0002-do-not-install-plugins-into-libdir.patch create mode 100644 libcouchbase-0003-fix-pkgconfig-paths.patch create mode 100644 libcouchbase-0004-fix-test-so-resolution.patch create mode 100644 libcouchbase-0005-fixes-ssl-sockets-with-openssl-1.1.1c.patch diff --git a/0001-enforce-system-crypto-policies.patch b/0001-enforce-system-crypto-policies.patch deleted file mode 100644 index 4c42bc1..0000000 --- a/0001-enforce-system-crypto-policies.patch +++ /dev/null @@ -1,26 +0,0 @@ -From f670b34632e994661e252f5f163023f71b2741fb Mon Sep 17 00:00:00 2001 -From: Sergey Avseyev -Date: Fri, 23 Feb 2018 19:02:53 +0300 -Subject: [PATCH] Enforce system crypto policies - ---- - src/ssl/ssl_common.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/src/ssl/ssl_common.c b/src/ssl/ssl_common.c -index 914b6f31..4b11ad04 100644 ---- a/src/ssl/ssl_common.c -+++ b/src/ssl/ssl_common.c -@@ -278,8 +278,7 @@ lcbio_pSSLCTX lcbio_ssl_new(const char *tsfile, const char *cafile, const char * - goto GT_ERR; - - } -- SSL_CTX_set_cipher_list(ret->ctx, "DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:AES128-SHA:DHE-RSA-SEED-SHA:DHE-DSS-SEED-SHA:SEED-SHA:RC2-CBC-MD5:RC4-SHA:RC4-MD5:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-MD5:EXP-RC4-MD5"); --// SSL_CTX_set_cipher_list(ret->ctx, "!NULL"); -+ SSL_CTX_set_cipher_list(ret->ctx, "PROFILE=SYSTEM"); - - if (cafile || tsfile) { - lcb_log(LOGARGS_S(settings, LCB_LOG_DEBUG), "Load verify locations from \"%s\"", tsfile ? tsfile : cafile); --- -2.19.2 - diff --git a/0002-do-not-install-plugins-into-libdir.patch b/0002-do-not-install-plugins-into-libdir.patch deleted file mode 100644 index 74a0528..0000000 --- a/0002-do-not-install-plugins-into-libdir.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 3d7f066b7d97a8d05fcde0b6cb1b6ac521279d82 Mon Sep 17 00:00:00 2001 -From: Sergey Avseyev -Date: Wed, 27 Sep 2017 02:04:00 +0300 -Subject: [PATCH] Do not install plugins into libdir - ---- - cmake/config-cmake.h.in | 2 +- - plugins/io/libev/CMakeLists.txt | 2 +- - plugins/io/libevent/CMakeLists.txt | 2 +- - plugins/io/libuv/CMakeLists.txt | 2 +- - src/iofactory.c | 6 ++++++ - 5 files changed, 10 insertions(+), 4 deletions(-) - -diff --git a/cmake/config-cmake.h.in b/cmake/config-cmake.h.in -index 81128091..f97d8bf5 100644 ---- a/cmake/config-cmake.h.in -+++ b/cmake/config-cmake.h.in -@@ -56,7 +56,7 @@ - - #cmakedefine LCB_USE_HDR_HISTOGRAM - --#define LCB_LIBDIR "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}" -+#define LCB_LIBDIR "${CMAKE_INSTALL_LIBDIR}/libcouchbase" - - #include "config_static.h" - #endif -diff --git a/plugins/io/libev/CMakeLists.txt b/plugins/io/libev/CMakeLists.txt -index 6eaa62f6..1ad13736 100644 ---- a/plugins/io/libev/CMakeLists.txt -+++ b/plugins/io/libev/CMakeLists.txt -@@ -26,4 +26,4 @@ ENDIF() - - INSTALL(TARGETS - couchbase_libev -- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/libcouchbase") -diff --git a/plugins/io/libevent/CMakeLists.txt b/plugins/io/libevent/CMakeLists.txt -index 1b96a9e3..95ff434b 100644 ---- a/plugins/io/libevent/CMakeLists.txt -+++ b/plugins/io/libevent/CMakeLists.txt -@@ -22,7 +22,7 @@ IF(LCB_EMBED_PLUGIN_LIBEVENT) - SET(LCB_LINK_SPEC "${LCB_LINKS_SPEC} ${LIBEVENT_LIBRARIES}") - ELSE() - ADD_LIBRARY(couchbase_libevent SHARED plugin-libevent.c) -- INSTALL(TARGETS couchbase_libevent LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) -+ INSTALL(TARGETS couchbase_libevent LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/libcouchbase") - TARGET_LINK_LIBRARIES(couchbase_libevent ${LIBEVENT_LIBRARIES}) - ENDIF() - -diff --git a/plugins/io/libuv/CMakeLists.txt b/plugins/io/libuv/CMakeLists.txt -index 2492a835..86f31687 100644 ---- a/plugins/io/libuv/CMakeLists.txt -+++ b/plugins/io/libuv/CMakeLists.txt -@@ -38,5 +38,5 @@ INCLUDE_DIRECTORIES(AFTER ${LIBUV_INCLUDE_DIR}) - ADD_DEFINITIONS(-DLIBCOUCHBASE_INTERNAL=1) - INSTALL(TARGETS - couchbase_libuv -- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/libcouchbase" - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) -diff --git a/src/iofactory.c b/src/iofactory.c -index 74eae50c..ca1a2d1b 100644 ---- a/src/iofactory.c -+++ b/src/iofactory.c -@@ -366,6 +366,12 @@ static lcb_error_t generate_options(plugin_info *pi, - } - ret = get_create_func(ours->v.v1.sofile, ours->v.v1.symbol, &plugin, want_debug); - if (ret != LCB_SUCCESS) { -+ char path[PATH_MAX]; -+ /* try to look up the so-file in the libdir */ -+ snprintf(path, PATH_MAX, "%s/%s", LCB_LIBDIR, ours->v.v1.sofile); -+ ret = get_create_func(path, ours->v.v1.symbol, &plugin, want_debug); -+ } -+ if (ret != LCB_SUCCESS) { - if (type) { - *type = LCB_IO_OPS_SELECT; - } --- -2.13.6 - diff --git a/0003-fix-pkgconfig-paths.patch b/0003-fix-pkgconfig-paths.patch deleted file mode 100644 index 29e3985..0000000 --- a/0003-fix-pkgconfig-paths.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 8355c1d68e8825e4aa006418ccd91eadbac6c02a Mon Sep 17 00:00:00 2001 -From: Sergey Avseyev -Date: Wed, 27 Sep 2017 12:30:44 +0300 -Subject: [PATCH] Fix pkgconfig paths - -Change-Id: I8459fc3d602266dd7bb9791f05f235da9308c562 ---- - packaging/libcouchbase.pc.in | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/packaging/libcouchbase.pc.in b/packaging/libcouchbase.pc.in -index 94820a65..c7171fcf 100644 ---- a/packaging/libcouchbase.pc.in -+++ b/packaging/libcouchbase.pc.in -@@ -1,7 +1,7 @@ - prefix=@CMAKE_INSTALL_PREFIX@ --exec_prefix=${prefix}/@CMAKE_INSTALL_BINDIR@ --includedir=${prefix}/include --libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@ -+exec_prefix=@CMAKE_INSTALL_PREFIX@ -+includedir=@CMAKE_INSTALL_PREFIX@/include -+libdir=@CMAKE_INSTALL_LIBDIR@ - - Name: libcouchbase @LCB_VERSION@ - Description: Couchbase client library --- -2.13.5 - diff --git a/compat_reports/2.10.3_to_2.10.4/compat_report.html b/compat_reports/2.10.3_to_2.10.4/compat_report.html new file mode 100644 index 0000000..4e229af --- /dev/null +++ b/compat_reports/2.10.3_to_2.10.4/compat_report.html @@ -0,0 +1,600 @@ + + + + + + + + + +libcouchbase: 2.10.3 to 2.10.4 compatibility report + + + +

API compatibility report for the libcouchbase library between 2.10.3 and 2.10.4 versions on x86_64

+ +
+
+

Test Info


+ + + + + + + +
Library Namelibcouchbase
Version #12.10.3
Version #22.10.4
Archx86_64
GCC Version8
SubjectBinary Compatibility
+

Test Results


+ + + + + + +
Total Header Files33
Total Libraries1
Total Symbols / Types286 / 465
Compatibility100%
+

Problem Summary


+ + + + + + + + + +
SeverityCount
Added Symbols-0
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium0
Low0
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low0
+ +

Header Files  33 


+
+_cxxwrap.h
+analytics.h
+api-legacy.h
+api3.h
+assert.h
+auth.h
+cbft.h
+cntl-private.h
+cntl.h
+configuration.h
+couchbase.h
+crypto.h
+deprecated.h
+http.h
+iops.h
+ixmgmt.h
+kvbuf.h
+libev_io_opts.h
+libevent_io_opts.h
+libuv_compat.h
+libuv_io_opts.h
+metrics.h
+n1ql.h
+pktfwd.h
+plugin-internal.h
+select_io_opts.h
+subdoc.h
+sysdefs.h
+tracing.h
+vbucket.h
+views.h
+visibility.h
+wsaerr.h
+
+
to the top
+

Libraries  1 


+
+libcouchbase.so.2.0.65
+
+
to the top
+


+

Test Info


+ + + + + + +
Library Namelibcouchbase
Version #12.10.3
Version #22.10.4
Archx86_64
SubjectSource Compatibility
+

Test Results


+ + + + + + +
Total Header Files33
Total Libraries1
Total Symbols / Types554 / 472
Compatibility100%
+

Problem Summary


+ + + + + + + + + +
SeverityCount
Added Symbols-0
Removed SymbolsHigh0
Problems with
Data Types
High0
Medium0
Low0
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low3
+ + +

Problems with Constants, Low Severity  3 


+configuration.h
+ +[+] LCB_VERSION +
+ + + +[+] LCB_VERSION_CHANGESET +
+ + + +[+] LCB_VERSION_STRING +
+ + +
+to the top
+

Header Files  33 


+
+_cxxwrap.h
+analytics.h
+api-legacy.h
+api3.h
+assert.h
+auth.h
+cbft.h
+cntl-private.h
+cntl.h
+configuration.h
+couchbase.h
+crypto.h
+deprecated.h
+http.h
+iops.h
+ixmgmt.h
+kvbuf.h
+libev_io_opts.h
+libevent_io_opts.h
+libuv_compat.h
+libuv_io_opts.h
+metrics.h
+n1ql.h
+pktfwd.h
+plugin-internal.h
+select_io_opts.h
+subdoc.h
+sysdefs.h
+tracing.h
+vbucket.h
+views.h
+visibility.h
+wsaerr.h
+
+
to the top
+

Libraries  1 


+
+libcouchbase.so.2.0.65
+
+
to the top
+



+ +
+ + diff --git a/libcouchbase-0001-enforce-system-crypto-policies.patch b/libcouchbase-0001-enforce-system-crypto-policies.patch new file mode 100644 index 0000000..4c42bc1 --- /dev/null +++ b/libcouchbase-0001-enforce-system-crypto-policies.patch @@ -0,0 +1,26 @@ +From f670b34632e994661e252f5f163023f71b2741fb Mon Sep 17 00:00:00 2001 +From: Sergey Avseyev +Date: Fri, 23 Feb 2018 19:02:53 +0300 +Subject: [PATCH] Enforce system crypto policies + +--- + src/ssl/ssl_common.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/ssl/ssl_common.c b/src/ssl/ssl_common.c +index 914b6f31..4b11ad04 100644 +--- a/src/ssl/ssl_common.c ++++ b/src/ssl/ssl_common.c +@@ -278,8 +278,7 @@ lcbio_pSSLCTX lcbio_ssl_new(const char *tsfile, const char *cafile, const char * + goto GT_ERR; + + } +- SSL_CTX_set_cipher_list(ret->ctx, "DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:AES128-SHA:DHE-RSA-SEED-SHA:DHE-DSS-SEED-SHA:SEED-SHA:RC2-CBC-MD5:RC4-SHA:RC4-MD5:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-MD5:EXP-RC4-MD5"); +-// SSL_CTX_set_cipher_list(ret->ctx, "!NULL"); ++ SSL_CTX_set_cipher_list(ret->ctx, "PROFILE=SYSTEM"); + + if (cafile || tsfile) { + lcb_log(LOGARGS_S(settings, LCB_LOG_DEBUG), "Load verify locations from \"%s\"", tsfile ? tsfile : cafile); +-- +2.19.2 + diff --git a/libcouchbase-0002-do-not-install-plugins-into-libdir.patch b/libcouchbase-0002-do-not-install-plugins-into-libdir.patch new file mode 100644 index 0000000..74a0528 --- /dev/null +++ b/libcouchbase-0002-do-not-install-plugins-into-libdir.patch @@ -0,0 +1,80 @@ +From 3d7f066b7d97a8d05fcde0b6cb1b6ac521279d82 Mon Sep 17 00:00:00 2001 +From: Sergey Avseyev +Date: Wed, 27 Sep 2017 02:04:00 +0300 +Subject: [PATCH] Do not install plugins into libdir + +--- + cmake/config-cmake.h.in | 2 +- + plugins/io/libev/CMakeLists.txt | 2 +- + plugins/io/libevent/CMakeLists.txt | 2 +- + plugins/io/libuv/CMakeLists.txt | 2 +- + src/iofactory.c | 6 ++++++ + 5 files changed, 10 insertions(+), 4 deletions(-) + +diff --git a/cmake/config-cmake.h.in b/cmake/config-cmake.h.in +index 81128091..f97d8bf5 100644 +--- a/cmake/config-cmake.h.in ++++ b/cmake/config-cmake.h.in +@@ -56,7 +56,7 @@ + + #cmakedefine LCB_USE_HDR_HISTOGRAM + +-#define LCB_LIBDIR "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}" ++#define LCB_LIBDIR "${CMAKE_INSTALL_LIBDIR}/libcouchbase" + + #include "config_static.h" + #endif +diff --git a/plugins/io/libev/CMakeLists.txt b/plugins/io/libev/CMakeLists.txt +index 6eaa62f6..1ad13736 100644 +--- a/plugins/io/libev/CMakeLists.txt ++++ b/plugins/io/libev/CMakeLists.txt +@@ -26,4 +26,4 @@ ENDIF() + + INSTALL(TARGETS + couchbase_libev +- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/libcouchbase") +diff --git a/plugins/io/libevent/CMakeLists.txt b/plugins/io/libevent/CMakeLists.txt +index 1b96a9e3..95ff434b 100644 +--- a/plugins/io/libevent/CMakeLists.txt ++++ b/plugins/io/libevent/CMakeLists.txt +@@ -22,7 +22,7 @@ IF(LCB_EMBED_PLUGIN_LIBEVENT) + SET(LCB_LINK_SPEC "${LCB_LINKS_SPEC} ${LIBEVENT_LIBRARIES}") + ELSE() + ADD_LIBRARY(couchbase_libevent SHARED plugin-libevent.c) +- INSTALL(TARGETS couchbase_libevent LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) ++ INSTALL(TARGETS couchbase_libevent LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/libcouchbase") + TARGET_LINK_LIBRARIES(couchbase_libevent ${LIBEVENT_LIBRARIES}) + ENDIF() + +diff --git a/plugins/io/libuv/CMakeLists.txt b/plugins/io/libuv/CMakeLists.txt +index 2492a835..86f31687 100644 +--- a/plugins/io/libuv/CMakeLists.txt ++++ b/plugins/io/libuv/CMakeLists.txt +@@ -38,5 +38,5 @@ INCLUDE_DIRECTORIES(AFTER ${LIBUV_INCLUDE_DIR}) + ADD_DEFINITIONS(-DLIBCOUCHBASE_INTERNAL=1) + INSTALL(TARGETS + couchbase_libuv +- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}/libcouchbase" + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +diff --git a/src/iofactory.c b/src/iofactory.c +index 74eae50c..ca1a2d1b 100644 +--- a/src/iofactory.c ++++ b/src/iofactory.c +@@ -366,6 +366,12 @@ static lcb_error_t generate_options(plugin_info *pi, + } + ret = get_create_func(ours->v.v1.sofile, ours->v.v1.symbol, &plugin, want_debug); + if (ret != LCB_SUCCESS) { ++ char path[PATH_MAX]; ++ /* try to look up the so-file in the libdir */ ++ snprintf(path, PATH_MAX, "%s/%s", LCB_LIBDIR, ours->v.v1.sofile); ++ ret = get_create_func(path, ours->v.v1.symbol, &plugin, want_debug); ++ } ++ if (ret != LCB_SUCCESS) { + if (type) { + *type = LCB_IO_OPS_SELECT; + } +-- +2.13.6 + diff --git a/libcouchbase-0003-fix-pkgconfig-paths.patch b/libcouchbase-0003-fix-pkgconfig-paths.patch new file mode 100644 index 0000000..29e3985 --- /dev/null +++ b/libcouchbase-0003-fix-pkgconfig-paths.patch @@ -0,0 +1,28 @@ +From 8355c1d68e8825e4aa006418ccd91eadbac6c02a Mon Sep 17 00:00:00 2001 +From: Sergey Avseyev +Date: Wed, 27 Sep 2017 12:30:44 +0300 +Subject: [PATCH] Fix pkgconfig paths + +Change-Id: I8459fc3d602266dd7bb9791f05f235da9308c562 +--- + packaging/libcouchbase.pc.in | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/packaging/libcouchbase.pc.in b/packaging/libcouchbase.pc.in +index 94820a65..c7171fcf 100644 +--- a/packaging/libcouchbase.pc.in ++++ b/packaging/libcouchbase.pc.in +@@ -1,7 +1,7 @@ + prefix=@CMAKE_INSTALL_PREFIX@ +-exec_prefix=${prefix}/@CMAKE_INSTALL_BINDIR@ +-includedir=${prefix}/include +-libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@ ++exec_prefix=@CMAKE_INSTALL_PREFIX@ ++includedir=@CMAKE_INSTALL_PREFIX@/include ++libdir=@CMAKE_INSTALL_LIBDIR@ + + Name: libcouchbase @LCB_VERSION@ + Description: Couchbase client library +-- +2.13.5 + diff --git a/libcouchbase-0004-fix-test-so-resolution.patch b/libcouchbase-0004-fix-test-so-resolution.patch new file mode 100644 index 0000000..9984dd9 --- /dev/null +++ b/libcouchbase-0004-fix-test-so-resolution.patch @@ -0,0 +1,26 @@ +From 0c00d0a84762b0e5f5fe4b53d5b8fa6e839334de Mon Sep 17 00:00:00 2001 +From: Sergey Avseyev +Date: Thu, 20 Jun 2019 10:22:03 +0300 +Subject: [PATCH 2/2] Fix test SO resolution + +Change-Id: I00d817381061a4ec06fcc86925eec2d1daf8c7d8 +--- + cmake/Modules/GenerateConfigDotH.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/Modules/GenerateConfigDotH.cmake b/cmake/Modules/GenerateConfigDotH.cmake +index a919be33..aee77cb1 100644 +--- a/cmake/Modules/GenerateConfigDotH.cmake ++++ b/cmake/Modules/GenerateConfigDotH.cmake +@@ -38,7 +38,7 @@ ELSEIF (CMAKE_SYSTEM_NAME STREQUAL "Linux") + OUTPUT_VARIABLE LIBM_SO_TRACE + ERROR_QUIET + OUTPUT_STRIP_TRAILING_WHITESPACE) +- STRING(REGEX MATCH [-_a-z0-9/]+libm.so[.0-9]* LIBM_SO_PATH ${LIBM_SO_TRACE}) ++ STRING(REGEX MATCH [-_a-z0-9/]+libm.so[.0-9]+ LIBM_SO_PATH ${LIBM_SO_TRACE}) + IF (EXISTS "${LIBM_SO_PATH}") + GET_FILENAME_COMPONENT(CMAKE_TEST_SHARED_OBJECT ${LIBM_SO_PATH} NAME) + ENDIF() +-- +2.22.0 + diff --git a/libcouchbase-0005-fixes-ssl-sockets-with-openssl-1.1.1c.patch b/libcouchbase-0005-fixes-ssl-sockets-with-openssl-1.1.1c.patch new file mode 100644 index 0000000..a5f2970 --- /dev/null +++ b/libcouchbase-0005-fixes-ssl-sockets-with-openssl-1.1.1c.patch @@ -0,0 +1,37 @@ +From 21267293d5b2c445beab4c792a94eb39434db592 Mon Sep 17 00:00:00 2001 +From: Sergey Avseyev +Date: Tue, 30 Apr 2019 16:36:19 +0300 +Subject: [PATCH 1/2] Fixes SSL sockets with openssl 1.1.1c+ + +BIO_get_mem_ptr does not give direct access to internal buffer, so we +have to invalidate our copy before using buffer values. + +Change-Id: I0dba625dd0be702ec7eea640047facf3caf79fef +--- + 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 f4506cf6..734a3e64 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.22.0 + diff --git a/libcouchbase.spec b/libcouchbase.spec index 3250198..e89dde3 100644 --- a/libcouchbase.spec +++ b/libcouchbase.spec @@ -1,6 +1,6 @@ # remirepo spec file for libcouchbase # -# Copyright (c) 2013-2018 Remi Collet +# Copyright (c) 2013-2019 Remi Collet # License: CC-BY-SA # http://creativecommons.org/licenses/by-sa/4.0/ # @@ -23,17 +23,22 @@ %endif Name: libcouchbase -Version: 2.10.3 -Release: 2%{?dist} +Version: 2.10.4 +Release: 1%{?dist} Summary: Couchbase client library Group: System Environment/Libraries License: ASL 2.0 URL: http://www.couchbase.com/communities/c/getting-started Source0: http://packages.couchbase.com/clients/c/%{name}-%{version}.tar.gz -Patch0: 0001-enforce-system-crypto-policies.patch -Patch1: 0002-do-not-install-plugins-into-libdir.patch -Patch2: 0003-fix-pkgconfig-paths.patch +Patch0: %{name}-0001-enforce-system-crypto-policies.patch +Patch1: %{name}-0002-do-not-install-plugins-into-libdir.patch +Patch2: %{name}-0003-fix-pkgconfig-paths.patch +# http://review.couchbase.org/110930 +Patch3: %{name}-0004-fix-test-so-resolution.patch +# http://review.couchbase.org/110929 +Patch4: %{name}-0005-fixes-ssl-sockets-with-openssl-1.1.1c.patch + BuildRequires: gcc BuildRequires: gcc-c++ @@ -129,6 +134,8 @@ a Couchbase Server. %patch0 -p1 -b .crypto %patch1 -p1 -b .plug %patch2 -p1 -b .pkgc +%patch3 -p1 -b .testso +%patch4 -p1 -b .openssl %build @@ -203,6 +210,9 @@ make %{_smp_mflags} alltests test ARGS=%{_smp_mflags} %changelog +* Thu Jun 20 2019 Sergey Avseyev - 2.10.4-1 +- Update to 2.10.4 + * Mon Jan 21 2019 Sergey Avseyev - 2.10.3-2 - Add explicit curdir on CMake invocation diff --git a/libcouchbase.xml b/libcouchbase.xml index 1679efa..035f5a3 100644 --- a/libcouchbase.xml +++ b/libcouchbase.xml @@ -9,7 +9,7 @@ -2.10.3 +2.10.4 -- cgit