Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-14597

Native compilation broken with OpenSSL-1.1.0 because EVP_CIPHER_CTX has been made opaque

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0.0-alpha4
    • 3.0.0-beta1, 2.10.1
    • None
    • None
    • openssl-1.1.0

    Description

      Trying to build Hadoop trunk on Fedora 26 which has openssl-devel-1.1.0 fails with this error

      [WARNING] /home/raviprak/Code/hadoop/trunk/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/crypto/OpensslCipher.c: In function ‘check_update_max_output_len’:
      [WARNING] /home/raviprak/Code/hadoop/trunk/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/crypto/OpensslCipher.c:256:14: error: dereferencing pointer to incomplete type ‘EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}’
      [WARNING]    if (context->flags & EVP_CIPH_NO_PADDING) {
      [WARNING]               ^~
      

      https://github.com/openssl/openssl/issues/962 mattcaswell says

      One of the primary differences between master (OpenSSL 1.1.0) and the 1.0.2 version is that many types have been made opaque, i.e. applications are no longer allowed to look inside the internals of the structures

      Attachments

        1. HADOOP-14597.00.patch
          2 kB
          Ravi Prakash
        2. HADOOP-14597.01.patch
          3 kB
          Ravi Prakash
        3. HADOOP-14597.02.patch
          3 kB
          Ravi Prakash
        4. HADOOP-14597.03.patch
          3 kB
          Ravi Prakash
        5. HADOOP-14597.04.patch
          7 kB
          Ravi Prakash

        Issue Links

          Activity

            People

              raviprak Ravi Prakash
              raviprak Ravi Prakash
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: