Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-10013

Have fine grained control over OpenSSL dependency.

    XMLWordPrintableJSON

    Details

    • Story Points:
      3

      Description

      We currently decide during the build configuration phase whether to link against OpenSSL or not. Whenever the developer enabled both  libevent+openssl, we internally signal via USE_SSL_SOCKET.

      OpenSSL already provides more to us than only code used for TLS – our JWT handling also relies on OpenSSL.

      We should consider cleaning this up. We could introduce another internal configuration signal, say HAVE_SSL. When configuring, the user could enable SSL without  libevent and get our JWT specific code but no TLS.

      In our CMake code, we could replace  https://github.com/apache/mesos/blob/558829eb24f4ad636348497075bbc0428a4794a4/cmake/CompilationConfigure.cmake#L583-L586 with

      if (ENABLE_SSL)
        add_definitions(-DHAVE_SSL=1)
        if (ENABLE_LIBEVENT)
          add_definitions(-DUSE_SSL_SOCKET=1)
        endif ()
      endif () 

      When -DENABLE_SSL gets supplied, the preprocessor would see HAVE_SSL. When the user supplies -DENABLE_SSL and -DENABLE_LIBVENT, the resulting set preprocessor defines would be USE_SSL_SOCKET and HAVE_SSL.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              tillt Till Toenshoff
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: