From e21cf2fdb1d9173b6664fc216139436cc247908d Mon Sep 17 00:00:00 2001 From: Mattias Ellert Date: Tue, 5 Oct 2021 21:36:16 +0200 Subject: [PATCH] Additional WITH_OPENSSL3=TRUE fixes --- src/XrdCrypto.cmake | 5 +- src/XrdHttp.cmake | 33 +++++++++---- src/XrdSec.cmake | 13 ++++- src/XrdUtils.cmake | 112 ++++++++++++++++++++++++++++++++++---------- 4 files changed, 125 insertions(+), 38 deletions(-) diff --git a/src/XrdCrypto.cmake b/src/XrdCrypto.cmake index 5a0ab144588..682c123c174 100644 --- a/src/XrdCrypto.cmake +++ b/src/XrdCrypto.cmake @@ -73,7 +73,7 @@ set_target_properties( if( WITH_OPENSSL3 ) set( XrdCryptoLiteSources XrdCrypto/XrdCryptoLite.cc XrdCrypto/XrdCryptoLite.hh - openssl/XrdCrypto/XrdCryptoLite_bf32.cc ) + XrdCrypto/openssl3/XrdCryptoLite_bf32.cc ) else() set( XrdCryptoLiteSources XrdCrypto/XrdCryptoLite.cc XrdCrypto/XrdCryptoLite.hh @@ -83,8 +83,7 @@ endif() add_library( XrdCryptoLite SHARED - XrdCrypto/XrdCryptoLite.cc XrdCrypto/XrdCryptoLite.hh - XrdCrypto/XrdCryptoLite_bf32.cc ) + ${XrdCryptoLiteSources} ) if( BUILD_CRYPTO ) target_link_libraries( diff --git a/src/XrdHttp.cmake b/src/XrdHttp.cmake index e49122c8848..af6e43cf00d 100644 --- a/src/XrdHttp.cmake +++ b/src/XrdHttp.cmake @@ -17,20 +17,35 @@ if( BUILD_HTTP ) # The XrdHttp library #----------------------------------------------------------------------------- include_directories( ${OPENSSL_INCLUDE_DIR} ) - + + if( WITH_OPENSSL3 ) + set( XrdHttpSources + XrdHttp/XrdHttpProtocol.cc XrdHttp/XrdHttpProtocol.hh + XrdHttp/XrdHttpSecurity.cc + XrdHttp/XrdHttpReq.cc XrdHttp/XrdHttpReq.hh + XrdHttp/XrdHttpSecXtractor.hh + XrdHttp/XrdHttpExtHandler.cc XrdHttp/XrdHttpExtHandler.hh + XrdHttp/XrdHttpStatic.hh + XrdHttp/XrdHttpTrace.hh + XrdHttp/openssl3/XrdHttpUtils.cc XrdHttp/XrdHttpUtils.hh ) + else() + set( XrdHttpSources + XrdHttp/XrdHttpProtocol.cc XrdHttp/XrdHttpProtocol.hh + XrdHttp/XrdHttpSecurity.cc + XrdHttp/XrdHttpReq.cc XrdHttp/XrdHttpReq.hh + XrdHttp/XrdHttpSecXtractor.hh + XrdHttp/XrdHttpExtHandler.cc XrdHttp/XrdHttpExtHandler.hh + XrdHttp/XrdHttpStatic.hh + XrdHttp/XrdHttpTrace.hh + XrdHttp/XrdHttpUtils.cc XrdHttp/XrdHttpUtils.hh ) + endif() + # Note this is marked as a shared library as XrdHttp plugins are expected to # link against this for the XrdHttpExt class implementations. add_library( ${LIB_XRD_HTTP_UTILS} SHARED - XrdHttp/XrdHttpProtocol.cc XrdHttp/XrdHttpProtocol.hh - XrdHttp/XrdHttpSecurity.cc - XrdHttp/XrdHttpReq.cc XrdHttp/XrdHttpReq.hh - XrdHttp/XrdHttpSecXtractor.hh - XrdHttp/XrdHttpExtHandler.cc XrdHttp/XrdHttpExtHandler.hh - XrdHttp/XrdHttpStatic.hh - XrdHttp/XrdHttpTrace.hh - XrdHttp/XrdHttpUtils.cc XrdHttp/XrdHttpUtils.hh ) + ${XrdHttpSources} ) add_library( ${MOD_XRD_HTTP} diff --git a/src/XrdSec.cmake b/src/XrdSec.cmake index b82e45e2b34..639410ca2ad 100644 --- a/src/XrdSec.cmake +++ b/src/XrdSec.cmake @@ -47,11 +47,20 @@ set_target_properties( #------------------------------------------------------------------------------- # The XrdSecpwd module #------------------------------------------------------------------------------- +if( WITH_OPENSSL3 ) + set( XrdSecProtectSources + XrdSec/openssl3/XrdSecProtect.cc XrdSec/XrdSecProtect.hh + XrdSec/XrdSecProtector.cc XrdSec/XrdSecProtector.hh ) +else() + set( XrdSecProtectSources + XrdSec/XrdSecProtect.cc XrdSec/XrdSecProtect.hh + XrdSec/XrdSecProtector.cc XrdSec/XrdSecProtector.hh ) +endif() + add_library( ${LIB_XRD_SEC_PROT} MODULE - XrdSec/XrdSecProtect.cc XrdSec/XrdSecProtect.hh - XrdSec/XrdSecProtector.cc XrdSec/XrdSecProtector.hh ) + ${XrdSecProtectSources} ) if( BUILD_CRYPTO ) target_link_libraries( diff --git a/src/XrdUtils.cmake b/src/XrdUtils.cmake index f4f1d2a692d..a9abef81c99 100644 --- a/src/XrdUtils.cmake +++ b/src/XrdUtils.cmake @@ -12,18 +12,18 @@ set( XRD_ZCRC32_SOVERSION 3 ) #------------------------------------------------------------------------------- # The XrdUtils library #------------------------------------------------------------------------------- -add_library( - XrdUtils - SHARED #----------------------------------------------------------------------------- # XProtocol #----------------------------------------------------------------------------- +set ( XProtocolSources XProtocol/XProtocol.cc XProtocol/XProtocol.hh +) #----------------------------------------------------------------------------- # XrdSys #----------------------------------------------------------------------------- +set ( XrdSysSources XrdSys/XrdSysAtomics.hh XrdSys/XrdSysDir.cc XrdSys/XrdSysDir.hh XrdSys/XrdSysE2T.cc XrdSys/XrdSysE2T.hh @@ -56,40 +56,77 @@ add_library( XrdSys/XrdSysUtils.cc XrdSys/XrdSysUtils.hh XrdSys/XrdSysXAttr.cc XrdSys/XrdSysXAttr.hh XrdSys/XrdSysXSLock.cc XrdSys/XrdSysXSLock.hh +) #----------------------------------------------------------------------------- # XrdTls #----------------------------------------------------------------------------- - XrdTls/XrdTls.cc XrdTls/XrdTls.hh - XrdTls/XrdTlsContext.cc XrdTls/XrdTlsContext.hh - XrdTls/XrdTlsHostcheck.icc XrdTls/XrdTlsHostcheck.hh - XrdTls/XrdTlsNotary.cc XrdTls/XrdTlsNotary.hh - XrdTls/XrdTlsNotaryUtils.icc XrdTls/XrdTlsNotaryUtils.hh - XrdTls/XrdTlsPeerCerts.cc XrdTls/XrdTlsPeerCerts.hh - XrdTls/XrdTlsSocket.cc XrdTls/XrdTlsSocket.hh - XrdTls/XrdTlsTempCA.cc XrdTls/XrdTlsTempCA.hh +if ( WITH_OPENSSL3 ) + set ( XrdTlsSources + XrdTls/XrdTls.cc XrdTls/XrdTls.hh + XrdTls/openssl3/XrdTlsContext.cc XrdTls/XrdTlsContext.hh + XrdTls/XrdTlsHostcheck.icc XrdTls/XrdTlsHostcheck.hh + XrdTls/XrdTlsNotary.cc XrdTls/XrdTlsNotary.hh + XrdTls/XrdTlsNotaryUtils.icc XrdTls/XrdTlsNotaryUtils.hh + XrdTls/XrdTlsPeerCerts.cc XrdTls/XrdTlsPeerCerts.hh + XrdTls/XrdTlsSocket.cc XrdTls/XrdTlsSocket.hh + XrdTls/XrdTlsTempCA.cc XrdTls/XrdTlsTempCA.hh + ) +else() + set ( XrdTlsSources + XrdTls/XrdTls.cc XrdTls/XrdTls.hh + XrdTls/XrdTlsContext.cc XrdTls/XrdTlsContext.hh + XrdTls/XrdTlsHostcheck.icc XrdTls/XrdTlsHostcheck.hh + XrdTls/XrdTlsNotary.cc XrdTls/XrdTlsNotary.hh + XrdTls/XrdTlsNotaryUtils.icc XrdTls/XrdTlsNotaryUtils.hh + XrdTls/XrdTlsPeerCerts.cc XrdTls/XrdTlsPeerCerts.hh + XrdTls/XrdTlsSocket.cc XrdTls/XrdTlsSocket.hh + XrdTls/XrdTlsTempCA.cc XrdTls/XrdTlsTempCA.hh + ) +endif() #----------------------------------------------------------------------------- # XrdCrypto: linking against a few functions that are useful for XrdTls; avoids # linking against all of libXrdCryptossl in XrdUtils #----------------------------------------------------------------------------- - XrdCrypto/XrdCryptosslAux.cc XrdCrypto/XrdCryptosslAux.hh - XrdCrypto/XrdCryptosslX509.cc XrdCrypto/XrdCryptosslX509.hh - XrdCrypto/XrdCryptoX509.cc XrdCrypto/XrdCryptoX509.hh - XrdCrypto/XrdCryptoX509Chain.cc XrdCrypto/XrdCryptoX509Chain.hh - XrdCrypto/XrdCryptosslRSA.cc XrdCrypto/XrdCryptosslRSA.hh - XrdCrypto/XrdCryptoRSA.cc XrdCrypto/XrdCryptoRSA.hh - XrdCrypto/XrdCryptosslgsiAux.hh XrdCrypto/XrdCryptosslgsiAux.cc - XrdCrypto/XrdCryptosslX509Req.cc XrdCrypto/XrdCryptosslX509Req.hh - XrdCrypto/XrdCryptoX509Req.cc XrdCrypto/XrdCryptoX509Req.hh - XrdCrypto/XrdCryptoAux.cc XrdCrypto/XrdCryptoAux.hh - XrdCrypto/XrdCryptosslX509Crl.cc XrdCrypto/XrdCryptosslX509Crl.hh - XrdCrypto/XrdCryptoX509Crl.cc XrdCrypto/XrdCryptoX509Crl.hh - XrdCrypto/XrdCryptoTrace.hh +if ( WITH_OPENSSL3 ) + set ( XrdCryptoSources + XrdCrypto/openssl3/XrdCryptosslAux.cc XrdCrypto/XrdCryptosslAux.hh + XrdCrypto/openssl3/XrdCryptosslX509.cc XrdCrypto/XrdCryptosslX509.hh + XrdCrypto/XrdCryptoX509.cc XrdCrypto/XrdCryptoX509.hh + XrdCrypto/XrdCryptoX509Chain.cc XrdCrypto/XrdCryptoX509Chain.hh + XrdCrypto/openssl3/XrdCryptosslRSA.cc XrdCrypto/XrdCryptosslRSA.hh + XrdCrypto/XrdCryptoRSA.cc XrdCrypto/XrdCryptoRSA.hh + XrdCrypto/openssl3/XrdCryptosslgsiAux.cc XrdCrypto/XrdCryptosslgsiAux.hh + XrdCrypto/XrdCryptosslX509Req.cc XrdCrypto/XrdCryptosslX509Req.hh + XrdCrypto/XrdCryptoX509Req.cc XrdCrypto/XrdCryptoX509Req.hh + XrdCrypto/XrdCryptoAux.cc XrdCrypto/XrdCryptoAux.hh + XrdCrypto/XrdCryptosslX509Crl.cc XrdCrypto/XrdCryptosslX509Crl.hh + XrdCrypto/XrdCryptoX509Crl.cc XrdCrypto/XrdCryptoX509Crl.hh + XrdCrypto/XrdCryptoTrace.hh + ) +else() + set ( XrdCryptoSources + XrdCrypto/XrdCryptosslAux.cc XrdCrypto/XrdCryptosslAux.hh + XrdCrypto/XrdCryptosslX509.cc XrdCrypto/XrdCryptosslX509.hh + XrdCrypto/XrdCryptoX509.cc XrdCrypto/XrdCryptoX509.hh + XrdCrypto/XrdCryptoX509Chain.cc XrdCrypto/XrdCryptoX509Chain.hh + XrdCrypto/XrdCryptosslRSA.cc XrdCrypto/XrdCryptosslRSA.hh + XrdCrypto/XrdCryptoRSA.cc XrdCrypto/XrdCryptoRSA.hh + XrdCrypto/XrdCryptosslgsiAux.cc XrdCrypto/XrdCryptosslgsiAux.hh + XrdCrypto/XrdCryptosslX509Req.cc XrdCrypto/XrdCryptosslX509Req.hh + XrdCrypto/XrdCryptoX509Req.cc XrdCrypto/XrdCryptoX509Req.hh + XrdCrypto/XrdCryptoAux.cc XrdCrypto/XrdCryptoAux.hh + XrdCrypto/XrdCryptosslX509Crl.cc XrdCrypto/XrdCryptosslX509Crl.hh + XrdCrypto/XrdCryptoX509Crl.cc XrdCrypto/XrdCryptoX509Crl.hh + XrdCrypto/XrdCryptoTrace.hh + ) +endif() #----------------------------------------------------------------------------- # XrdOuc #----------------------------------------------------------------------------- +set ( XrdOucSources XrdOuc/XrdOuca2x.cc XrdOuc/XrdOuca2x.hh XrdOuc/XrdOucArgs.cc XrdOuc/XrdOucArgs.hh XrdOuc/XrdOucBackTrace.cc XrdOuc/XrdOucBackTrace.hh @@ -148,10 +185,12 @@ add_library( XrdOuc/XrdOucTList.hh XrdOuc/XrdOucXAttr.hh XrdOuc/XrdOucEnum.hh +) #----------------------------------------------------------------------------- # XrdNet #----------------------------------------------------------------------------- +set ( XrdNetSources XrdNet/XrdNet.cc XrdNet/XrdNet.hh XrdNet/XrdNetOpts.hh XrdNet/XrdNetPeer.hh @@ -168,10 +207,12 @@ add_library( XrdNet/XrdNetSecurity.cc XrdNet/XrdNetSecurity.hh XrdNet/XrdNetSocket.cc XrdNet/XrdNetSocket.hh XrdNet/XrdNetUtils.cc XrdNet/XrdNetUtils.hh +) #----------------------------------------------------------------------------- # XrdSut #----------------------------------------------------------------------------- +set ( XrdSutSources XrdSut/XrdSutAux.cc XrdSut/XrdSutAux.hh XrdSut/XrdSutPFCache.cc XrdSut/XrdSutPFCache.hh XrdSut/XrdSutBucket.cc XrdSut/XrdSutBucket.hh @@ -182,10 +223,12 @@ add_library( XrdSut/XrdSutPFEntry.cc XrdSut/XrdSutPFEntry.hh XrdSut/XrdSutRndm.cc XrdSut/XrdSutRndm.hh XrdSut/XrdSutTrace.hh +) #----------------------------------------------------------------------------- # Xrd #----------------------------------------------------------------------------- +set ( XrdSources Xrd/XrdBuffer.cc Xrd/XrdBuffer.hh Xrd/XrdBuffXL.cc Xrd/XrdBuffXL.hh Xrd/XrdInet.cc Xrd/XrdInet.hh @@ -208,10 +251,12 @@ add_library( Xrd/XrdScheduler.cc Xrd/XrdScheduler.hh Xrd/XrdSendQ.cc Xrd/XrdSendQ.hh Xrd/XrdTrace.hh +) #----------------------------------------------------------------------------- # XrdCks #----------------------------------------------------------------------------- +set ( XrdCksSources XrdCks/XrdCksAssist.cc XrdCks/XrdCksAssist.hh XrdCks/XrdCksCalccrc32.cc XrdCks/XrdCksCalccrc32.hh XrdCks/XrdCksCalccrc32C.cc XrdCks/XrdCksCalccrc32C.hh @@ -225,18 +270,22 @@ add_library( XrdCks/XrdCksData.hh XrdCks/XrdCks.hh XrdCks/XrdCksXAttr.hh +) #----------------------------------------------------------------------------- # XrdRmc #----------------------------------------------------------------------------- +set ( XrdRmcSources XrdRmc/XrdRmc.cc XrdRmc/XrdRmc.hh XrdRmc/XrdRmcData.cc XrdRmc/XrdRmcData.hh XrdRmc/XrdRmcReal.cc XrdRmc/XrdRmcReal.hh XrdRmc/XrdRmcSlot.hh +) #----------------------------------------------------------------------------- # XrdSec #----------------------------------------------------------------------------- +set ( XrdSecSources XrdSec/XrdSecEntity.cc XrdSec/XrdSecEntity.hh XrdSec/XrdSecEntityAttr.cc XrdSec/XrdSecEntityAttr.hh XrdSec/XrdSecEntityXtra.cc XrdSec/XrdSecEntityXtra.hh @@ -246,7 +295,22 @@ add_library( XrdSecsss/XrdSecsssID.cc XrdSecsss/XrdSecsssID.hh XrdSecsss/XrdSecsssKT.cc XrdSecsss/XrdSecsssKT.hh XrdSecsss/XrdSecsssMap.hh +) +add_library( + XrdUtils + SHARED + ${XProtocolSources} + ${XrdSysSources} + ${XrdTlsSources} + ${XrdCryptoSources} + ${XrdOucSources} + ${XrdNetSources} + ${XrdSutSources} + ${XrdSources} + ${XrdCksSources} + ${XrdRmcSources} + ${XrdSecSources} ) target_link_libraries(