Alexey Serbin has submitted this change and it was merged. ( 
http://gerrit.cloudera.org:8080/12445 )

Change subject: [security] KUDU-2695 fix CheckOpenSSLInitialized()
......................................................................

[security] KUDU-2695 fix CheckOpenSSLInitialized()

With OpenSSL 1.1.0, the CRYPTO_get_locking_callback() and the whole old
threading API has been removed.  With the new threading API in OpenSSL,
there is no need to set locking callbacks.  In other words, starting
with OpenSSL 1.1.0, the library is initialized to be multithread-safe,
and that's exactly what Kudu needs from the OpenSSL's initialization.

Prior to this patch, the sample C++ Kudu client application from
  $KUDU_ROOT/examples/cpp
with added call of
  KUDU_CHECK_OK(kudu::client::DisableOpenSSLInitialization());
would fail on Ubuntu 18.04 with error message like below:
  Bad status: Runtime error: Locking callback not initialized

Prior to this patch, the sample Python Kudu client application from
$KUDU_HOME/examples/python/basic-python-example/basic_example.py
was failing exactly as reported in KUDU-2695.

With this patch, the same modified C++ Kudu client application
works fine at Ubuntu 18.04 (OpenSSL 1.1.0g, with packages
libssl-dev:amd64@1.1.0g-2ubuntu4.3, libssl1.1:amd64@1.1.0g-2ubuntu4.3).
The above mentioned Python example also works as intended with this fix.
I also verified that the kudu CLI utility works fine and uses TLS wire
encryption with this patch.

Change-Id: Ica7cf22ef81bbeffd25ef2826d925c41b97dc2d8
Reviewed-on: http://gerrit.cloudera.org:8080/12445
Reviewed-by: Adar Dembo <a...@cloudera.com>
Tested-by: Kudu Jenkins
---
M src/kudu/client/client-unittest.cc
M src/kudu/security/openssl_util.cc
2 files changed, 43 insertions(+), 8 deletions(-)

Approvals:
  Adar Dembo: Looks good to me, approved
  Kudu Jenkins: Verified

--
To view, visit http://gerrit.cloudera.org:8080/12445
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ica7cf22ef81bbeffd25ef2826d925c41b97dc2d8
Gerrit-Change-Number: 12445
Gerrit-PatchSet: 5
Gerrit-Owner: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Adar Dembo <a...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Todd Lipcon <t...@apache.org>

Reply via email to