diff options
author | Andrew Stitcher <astitcher@apache.org> | 2013-06-19 17:11:52 +0000 |
---|---|---|
committer | Andrew Stitcher <astitcher@apache.org> | 2013-06-19 17:11:52 +0000 |
commit | 7e5ceaf484253d00e17cb8579e802f12c1d06236 (patch) | |
tree | 37e47003fb0d223f65f21fc3b2a698c255aec34e /qpid/cpp/src | |
parent | 706675d432369def04b47ab935a17adec390e202 (diff) | |
download | qpid-python-7e5ceaf484253d00e17cb8579e802f12c1d06236.tar.gz |
QPID-4938: No longer build acl or ssl support as plugins
(also remove final references to dead watchdog plugin)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1494697 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src')
-rw-r--r-- | qpid/cpp/src/CMakeLists.txt | 182 | ||||
-rw-r--r-- | qpid/cpp/src/Makefile.am | 26 | ||||
-rw-r--r-- | qpid/cpp/src/acl.mk | 47 | ||||
-rw-r--r-- | qpid/cpp/src/ssl.cmake | 123 | ||||
-rw-r--r-- | qpid/cpp/src/ssl.mk | 38 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/ha_test.py | 2 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/ha_tests.py | 2 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/run_acl_tests | 10 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/run_queue_redirect | 1 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/sasl_fed | 2 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/sasl_fed_ex | 4 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/ssl_test | 5 | ||||
-rw-r--r-- | qpid/cpp/src/tests/test_env.sh.in | 5 | ||||
-rwxr-xr-x | qpid/cpp/src/tests/test_watchdog | 36 |
14 files changed, 161 insertions, 322 deletions
diff --git a/qpid/cpp/src/CMakeLists.txt b/qpid/cpp/src/CMakeLists.txt index 495d56321c..7690404f24 100644 --- a/qpid/cpp/src/CMakeLists.txt +++ b/qpid/cpp/src/CMakeLists.txt @@ -34,6 +34,7 @@ include(CheckLibraryExists) include(CheckSymbolExists) include(FindBoost) include(FindDoxygen) +include(FindPkgConfig) #set (CMAKE_VERBOSE_MAKEFILE ON) # for debugging @@ -296,6 +297,44 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL SunPro) set (HIDE_SYMBOL_FLAGS "") endif (CMAKE_CXX_COMPILER_ID STREQUAL SunPro) +if (CMAKE_SYSTEM_NAME STREQUAL Windows) + # Allow MSVC user to select 'WinXP-SP3/Windows Server 2003' as build target version + set (win32_winnt_default OFF) + if (MSVC) + set (win32_winnt_default ON) + endif (MSVC) + option(SET_WIN32_WINNT "In Windows-MSVC build: define _WIN32_WINNT=0x0502 to select target version: Windows XP with SP3" ${win32_winnt_default}) +endif (CMAKE_SYSTEM_NAME STREQUAL Windows) + +if (MSVC) + add_definitions( + /D "_CRT_NONSTDC_NO_WARNINGS" + /D "NOMINMAX" + /D "WIN32_LEAN_AND_MEAN" + /wd4244 + /wd4800 + /wd4355 + /wd4267 + ) + + if (SET_WIN32_WINNT) + add_definitions(/D "_WIN32_WINNT=0x0502") + endif (SET_WIN32_WINNT) + + # set the RelWithDebInfo compile/link switches to equal Release + set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MD /O2 /Ob2 /D NDEBUG") + set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "/debug /INCREMENTAL:NO") + + if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src) + # Set the windows version for the .NET Binding cpp project + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src/org.apache.qpid.messaging.template.rc + ${CMAKE_CURRENT_BINARY_DIR}/windows/resources/org.apache.qpid.messaging.rc) + # Set the windows version for the .NET Binding sessionreceiver project + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src/sessionreceiver/properties/sessionreceiver-AssemblyInfo-template.cs + ${CMAKE_CURRENT_BINARY_DIR}/windows/generated_src/sessionreceiver-AssemblyInfo.cs) + endif (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src) +endif (MSVC) + option(ENABLE_WARNINGS "Enable lots of compiler warnings (recommended)" ON) if (NOT ENABLE_WARNINGS) set (WARNING_FLAGS "") @@ -523,6 +562,7 @@ if (HAVE_SASL AND HAVE_SASL_H) endif (HAVE_SASL AND HAVE_SASL_H) option(BUILD_SASL "Build with Cyrus SASL support" ${sasl_default}) + if (BUILD_SASL) if (NOT HAVE_SASL) message(FATAL_ERROR "Cyrus SASL support requested but libsasl2 not found") @@ -540,6 +580,78 @@ if (BUILD_SASL) set(qpidcommon_sasl_lib sasl2) endif (BUILD_SASL) +# Optional SSL/TLS support. Requires Netscape Portable Runtime on Linux. + +# According to some cmake docs this is not a reliable way to detect +# pkg-configed libraries, but it's no worse than what we did under +# autotools +pkg_check_modules(NSS nss) + +set (ssl_default ${ssl_force}) +if (CMAKE_SYSTEM_NAME STREQUAL Windows) + set (ssl_default ON) +else (CMAKE_SYSTEM_NAME STREQUAL Windows) + if (NSS_FOUND) + set (ssl_default ON) + endif (NSS_FOUND) +endif (CMAKE_SYSTEM_NAME STREQUAL Windows) + +option(BUILD_SSL "Build with support for SSL" ${ssl_default}) + +if (BUILD_SSL) + if (CMAKE_SYSTEM_NAME STREQUAL Windows) + set (sslcommon_SOURCES + qpid/sys/windows/SslAsynchIO.cpp + ) + set (ssl_SOURCES + qpid/broker/windows/SslProtocolFactory.cpp + ) + set (sslconnector_SOURCES + qpid/client/windows/SslConnector.cpp + ) + set (windows_ssl_libs Secur32.lib) + set (windows_ssl_server_libs Crypt32.lib) + else (CMAKE_SYSTEM_NAME STREQUAL Windows) + if (NOT NSS_FOUND) + message(FATAL_ERROR "nss/nspr not found, required for ssl support") + endif (NOT NSS_FOUND) + + foreach(f ${NSS_CFLAGS}) + set (NSS_COMPILE_FLAGS "${NSS_COMPILE_FLAGS} ${f}") + endforeach(f) + + foreach(f ${NSS_LDFLAGS}) + set (NSS_LINK_FLAGS "${NSS_LINK_FLAGS} ${f}") + endforeach(f) + + set (sslcommon_SOURCES + qpid/sys/ssl/check.h + qpid/sys/ssl/check.cpp + qpid/sys/ssl/util.h + qpid/sys/ssl/util.cpp + qpid/sys/ssl/SslSocket.h + qpid/sys/ssl/SslSocket.cpp + ) + + set (ssl_SOURCES + qpid/sys/SslPlugin.cpp + ) + + set (sslconnector_SOURCES + qpid/client/SslConnector.cpp + qpid/messaging/amqp/SslTransport.cpp + ) + + set_source_files_properties ( + ${sslcommon_SOURCES} + ${ssl_SOURCES} + ${sslconnector_SOURCES} + PROPERTIES + COMPILE_FLAGS "${NSS_COMPILE_FLAGS}" + ) + endif (CMAKE_SYSTEM_NAME STREQUAL Windows) +endif (BUILD_SSL) + # See if XML Exchange is desired and prerequisites are available CHECK_LIBRARY_EXISTS (xerces-c _init "" HAVE_XERCES) CHECK_INCLUDE_FILE_CXX (xercesc/framework/MemBufInputSource.hpp HAVE_XERCES_H) @@ -557,6 +669,7 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows) endif (CMAKE_SYSTEM_NAME STREQUAL Windows) option(BUILD_XML "Build with XML Exchange" ${xml_default}) + if (BUILD_XML) if (NOT HAVE_XERCES) message(FATAL_ERROR "XML Exchange support requested but xerces-c library not found") @@ -591,7 +704,9 @@ endif (BUILD_XML) # Build the ACL plugin set (acl_default ON) + option(BUILD_ACL "Build ACL enforcement broker plugin" ${acl_default}) + if (BUILD_ACL) set (acl_SOURCES qpid/acl/Acl.cpp @@ -608,24 +723,12 @@ if (BUILD_ACL) qpid/acl/AclValidator.cpp qpid/acl/AclValidator.h ) - # Windows builds the ACL code into the qpidbroker library; see QPID-1842 - # for history and rationale. If this is changed, remove the acl_SOURCES from - # the qpidbroker platform-specific source list. - if (NOT CMAKE_SYSTEM_NAME STREQUAL Windows) - add_library (acl MODULE ${acl_SOURCES}) - target_link_libraries (acl qpidbroker ${Boost_PROGRAM_OPTIONS_LIBRARY}) - set_target_properties (acl PROPERTIES - PREFIX "" - COMPILE_DEFINITIONS _IN_QPID_BROKER - LINK_FLAGS "${CATCH_UNDEFINED}") - install (TARGETS acl - DESTINATION ${QPIDD_MODULE_DIR} - COMPONENT ${QPID_COMPONENT_BROKER}) - endif (NOT CMAKE_SYSTEM_NAME STREQUAL Windows) endif (BUILD_ACL) set (ha_default ON) + option(BUILD_HA "Build Active-Passive HA plugin" ${ha_default}) + if (BUILD_HA) set (ha_SOURCES qpid/ha/QueueSnapshot.h @@ -689,9 +792,6 @@ endif (BUILD_HA) # Check for optional RDMA support requirements include (rdma.cmake) -# Check for optional SSL support requirements -include (ssl.cmake) - # Check for optional AMQP 1.0 support requirements include (amqp.cmake) @@ -704,44 +804,7 @@ set (qpid_memstat_module qpid/sys/MemStat.cpp ) -# Allow MSVC user to select 'WinXP-SP3/Windows Server 2003' as build target version -set (win32_winnt_default OFF) if (CMAKE_SYSTEM_NAME STREQUAL Windows) - if (MSVC) - set (win32_winnt_default ON) - endif (MSVC) -endif (CMAKE_SYSTEM_NAME STREQUAL Windows) -option(SET_WIN32_WINNT "In Windows-MSVC build: define _WIN32_WINNT=0x0502 to select target version: Windows XP with SP3" ${win32_winnt_default}) - -if (CMAKE_SYSTEM_NAME STREQUAL Windows) - if (MSVC) - add_definitions( - /D "_CRT_NONSTDC_NO_WARNINGS" - /D "NOMINMAX" - /D "WIN32_LEAN_AND_MEAN" - /wd4244 - /wd4800 - /wd4355 - /wd4267 - ) - if (SET_WIN32_WINNT) - add_definitions(/D "_WIN32_WINNT=0x0502") - endif (SET_WIN32_WINNT) - - # set the RelWithDebInfo compile/link switches to equal Release - set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MD /O2 /Ob2 /D NDEBUG") - set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "/debug /INCREMENTAL:NO") - - if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src) - # Set the windows version for the .NET Binding cpp project - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src/org.apache.qpid.messaging.template.rc - ${CMAKE_CURRENT_BINARY_DIR}/windows/resources/org.apache.qpid.messaging.rc) - # Set the windows version for the .NET Binding sessionreceiver project - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src/sessionreceiver/properties/sessionreceiver-AssemblyInfo-template.cs - ${CMAKE_CURRENT_BINARY_DIR}/windows/generated_src/sessionreceiver-AssemblyInfo.cs) - endif (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../bindings/qpid/dotnet/src) - endif (MSVC) - set (qpidtypes_platform_SOURCES qpid/sys/windows/uuid.cpp ) @@ -767,7 +830,6 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows) qpid/sys/windows/Thread.cpp qpid/sys/windows/Time.cpp qpid/client/windows/SaslFactory.cpp - ${sslcommon_windows_SOURCES} ) set (qpidcommon_platform_LIBS @@ -775,14 +837,11 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows) set (qpidbroker_platform_SOURCES qpid/broker/windows/BrokerDefaults.cpp qpid/broker/windows/SaslAuthenticator.cpp - ${acl_SOURCES} - ${sslbroker_windows_SOURCES} ) set (qpidbroker_platform_LIBS ${windows_ssl_libs} ${windows_ssl_server_libs} ) set (qpidclient_platform_SOURCES - ${sslclient_windows_SOURCES} qpid/client/windows/ClientDllMain.cpp ) set (qpidclient_platform_LIBS @@ -903,6 +962,7 @@ set (qpidcommon_SOURCES ${rgen_framing_srcs} ${qpidcommon_platform_SOURCES} ${qpidcommon_sasl_source} + ${sslcommon_SOURCES} qpid/assert.cpp qpid/Address.cpp qpid/DataDir.cpp @@ -1005,7 +1065,8 @@ target_link_libraries (qpidcommon qpidtypes ${qpidcommon_sasl_lib}) set_target_properties (qpidcommon PROPERTIES VERSION ${qpidcommon_version} - SOVERSION ${qpidcommon_version_major}) + SOVERSION ${qpidcommon_version_major} + LINK_FLAGS ${NSS_LINK_FLAGS}) install (TARGETS qpidcommon DESTINATION ${QPID_INSTALL_LIBDIR} COMPONENT ${QPID_COMPONENT_COMMON}) @@ -1031,6 +1092,7 @@ install_pdb (qpidtypes ${QPID_COMPONENT_COMMON}) set (qpidclient_SOURCES ${rgen_client_srcs} ${qpidclient_platform_SOURCES} + ${sslconnector_SOURCES} qpid/client/Bounds.cpp qpid/client/Completion.cpp qpid/client/Connection.cpp @@ -1173,6 +1235,8 @@ endif (MSVC) set (qpidbroker_SOURCES ${mgen_broker_cpp} ${qpidbroker_platform_SOURCES} + ${acl_SOURCES} + ${ssl_SOURCES} qpid/amqp_0_10/Connection.h qpid/amqp_0_10/Connection.cpp qpid/broker/Broker.cpp diff --git a/qpid/cpp/src/Makefile.am b/qpid/cpp/src/Makefile.am index 257be80611..a3825f7508 100644 --- a/qpid/cpp/src/Makefile.am +++ b/qpid/cpp/src/Makefile.am @@ -144,6 +144,8 @@ BROKER_CXXFLAGS = -D_IN_QPID_BROKER ## Automake macros to build libraries and executables. qpidd_CXXFLAGS = $(AM_CXXFLAGS) $(BROKER_CXXFLAGS) -DQPIDD_MODULE_DIR=\"$(dmoduleexecdir)\" -DQPIDD_CONF_FILE=\"$(sysconfdir)/qpidd.conf\" -DQPIDC_CONF_FILE=\"$(confdir)/qpidc.conf\" +libqpidcommon_la_CXXFLAGS = $(AM_CXXFLAGS) +libqpidbroker_la_CXXFLAGS = $(AM_CXXFLAGS) $(BROKER_CXXFLAGS) libqpidclient_la_CXXFLAGS = $(AM_CXXFLAGS) -DQPIDC_MODULE_DIR=\"$(cmoduleexecdir)\" -DQPIDC_CONF_FILE=\"$(confdir)/qpidc.conf\" qpidd_LDADD = \ @@ -227,7 +229,6 @@ dmoduleexec_LTLIBRARIES = cmoduleexec_LTLIBRARIES = include ha.mk -include acl.mk include qmf.mk include qmfc.mk if HAVE_XML @@ -294,10 +295,6 @@ RdmaClient_LDADD = \ endif -if SSL -include ssl.mk -endif - EXTRA_DIST +=\ CMakeLists.txt \ config.h.cmake \ @@ -579,6 +576,20 @@ libqpidbroker_la_LIBADD = libqpidcommon.la libqpidbroker_la_SOURCES = \ $(mgen_broker_cpp) \ $(posix_broker_src) \ + qpid/acl/Acl.cpp \ + qpid/acl/Acl.h \ + qpid/acl/AclConnectionCounter.cpp \ + qpid/acl/AclConnectionCounter.h \ + qpid/acl/AclData.cpp \ + qpid/acl/AclData.h \ + qpid/acl/AclPlugin.cpp \ + qpid/acl/AclReader.cpp \ + qpid/acl/AclReader.h \ + qpid/acl/AclResourceCounter.cpp \ + qpid/acl/AclResourceCounter.h \ + qpid/acl/AclTopicMatch.h \ + qpid/acl/AclValidator.cpp \ + qpid/acl/AclValidator.h \ qpid/amqp_0_10/Connection.cpp \ qpid/amqp_0_10/Connection.h \ qpid/broker/AclModule.h \ @@ -784,7 +795,6 @@ libqpidbroker_la_SOURCES = \ QPIDBROKER_VERSION_INFO = 2:0:0 libqpidbroker_la_LDFLAGS = -version-info $(QPIDBROKER_VERSION_INFO) -libqpidbroker_la_CXXFLAGS=$(AM_CXXFLAGS) $(BROKER_CXXFLAGS) if HAVE_PROTON @@ -929,6 +939,10 @@ libqpidclient_la_SOURCES = \ QPIDCLIENT_VERSION_INFO = 2:0:0 libqpidclient_la_LDFLAGS = -version-info $(QPIDCLIENT_VERSION_INFO) +if SSL +include ssl.mk +endif + libqpidtypes_la_LIBADD= -luuid libqpidtypes_la_SOURCES= \ qpid/types/Exception.cpp \ diff --git a/qpid/cpp/src/acl.mk b/qpid/cpp/src/acl.mk deleted file mode 100644 index 87821a3741..0000000000 --- a/qpid/cpp/src/acl.mk +++ /dev/null @@ -1,47 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -# -# acl library makefile fragment, to be included in Makefile.am -# -dmoduleexec_LTLIBRARIES += acl.la - -acl_la_SOURCES = \ - qpid/acl/Acl.cpp \ - qpid/acl/Acl.h \ - qpid/acl/AclConnectionCounter.cpp \ - qpid/acl/AclConnectionCounter.h \ - qpid/acl/AclData.cpp \ - qpid/acl/AclData.h \ - qpid/acl/AclPlugin.cpp \ - qpid/acl/AclReader.cpp \ - qpid/acl/AclReader.h \ - qpid/acl/AclResourceCounter.cpp \ - qpid/acl/AclResourceCounter.h \ - qpid/acl/AclTopicMatch.h \ - qpid/acl/AclValidator.cpp \ - qpid/acl/AclValidator.h - -acl_la_LIBADD = libqpidbroker.la -if SUNOS - acl_la_LIBADD += libqmfagent.la libqmfconsole.la libqpidcommon.la -lboost_program_options $(SUNCC_RUNTIME_LIBS) -endif - -acl_la_LDFLAGS = $(PLUGINLDFLAGS) -acl_la_CXXFLAGS = $(AM_CXXFLAGS) -D_IN_QPID_BROKER - diff --git a/qpid/cpp/src/ssl.cmake b/qpid/cpp/src/ssl.cmake deleted file mode 100644 index 609cd151b4..0000000000 --- a/qpid/cpp/src/ssl.cmake +++ /dev/null @@ -1,123 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -# -# SSL/TLS CMake fragment, to be included in CMakeLists.txt -# - -# Optional SSL/TLS support. Requires Netscape Portable Runtime on Linux. - -include(FindPkgConfig) - -# According to some cmake docs this is not a reliable way to detect -# pkg-configed libraries, but it's no worse than what we did under -# autotools -pkg_check_modules(NSS nss) - -set (ssl_default ${ssl_force}) -if (CMAKE_SYSTEM_NAME STREQUAL Windows) - set (ssl_default ON) -else (CMAKE_SYSTEM_NAME STREQUAL Windows) - if (NSS_FOUND) - set (ssl_default ON) - endif (NSS_FOUND) -endif (CMAKE_SYSTEM_NAME STREQUAL Windows) - -option(BUILD_SSL "Build with support for SSL" ${ssl_default}) -if (BUILD_SSL) - if (CMAKE_SYSTEM_NAME STREQUAL Windows) - set (sslclient_windows_SOURCES qpid/client/windows/SslConnector.cpp) - set (sslbroker_windows_SOURCES qpid/broker/windows/SslProtocolFactory.cpp) - set (sslcommon_windows_SOURCES - qpid/sys/windows/SslAsynchIO.cpp - ) - set (windows_ssl_libs Secur32.lib) - set (windows_ssl_server_libs Crypt32.lib) - else (CMAKE_SYSTEM_NAME STREQUAL Windows) - - if (NOT NSS_FOUND) - message(FATAL_ERROR "nss/nspr not found, required for ssl support") - endif (NOT NSS_FOUND) - - foreach(f ${NSS_CFLAGS}) - set (NSS_COMPILE_FLAGS "${NSS_COMPILE_FLAGS} ${f}") - endforeach(f) - - foreach(f ${NSS_LDFLAGS}) - set (NSS_LINK_FLAGS "${NSS_LINK_FLAGS} ${f}") - endforeach(f) - - set (sslcommon_SOURCES - qpid/sys/ssl/check.h - qpid/sys/ssl/check.cpp - qpid/sys/ssl/util.h - qpid/sys/ssl/util.cpp - qpid/sys/ssl/SslSocket.h - qpid/sys/ssl/SslSocket.cpp - ) - - add_library (sslcommon SHARED ${sslcommon_SOURCES}) - foreach(f ${NSS_LIBRARIES}) - target_link_libraries (sslcommon ${f}) - endforeach(f) - target_link_libraries (sslcommon qpidcommon) - set_target_properties (sslcommon PROPERTIES - VERSION ${sslcommon_version} - SOVERSION ${sslcommon_version_major} - COMPILE_FLAGS ${NSS_COMPILE_FLAGS} - LINK_FLAGS -L${NSS_LIBDIR}) - - install (TARGETS sslcommon - DESTINATION ${QPID_INSTALL_LIBDIR} - COMPONENT ${QPID_COMPONENT_COMMON}) - install_pdb (sslcommon ${QPID_COMPONENT_COMMON}) - - set (ssl_SOURCES - qpid/sys/SslPlugin.cpp - ) - add_library (ssl MODULE ${ssl_SOURCES}) - target_link_libraries (ssl qpidbroker sslcommon ${Boost_PROGRAM_OPTIONS_LIBRARY}) - set_target_properties (ssl PROPERTIES - PREFIX "" - COMPILE_FLAGS "${NSS_COMPILE_FLAGS}" - COMPILE_DEFINITIONS _IN_QPID_BROKER) - if (CMAKE_COMPILER_IS_GNUCXX) - set_target_properties(ssl PROPERTIES - LINK_FLAGS "${GCC_CATCH_UNDEFINED}") - endif (CMAKE_COMPILER_IS_GNUCXX) - - install (TARGETS ssl - DESTINATION ${QPIDD_MODULE_DIR} - COMPONENT ${QPID_COMPONENT_BROKER}) - - add_library (sslconnector MODULE qpid/client/SslConnector.cpp qpid/messaging/amqp/SslTransport.cpp) - target_link_libraries (sslconnector qpidclient sslcommon) - set_target_properties (sslconnector PROPERTIES - PREFIX "" - COMPILE_FLAGS ${NSS_COMPILE_FLAGS}) - if (CMAKE_COMPILER_IS_GNUCXX) - set_target_properties(sslconnector PROPERTIES - LINK_FLAGS "${GCC_CATCH_UNDEFINED}") - endif (CMAKE_COMPILER_IS_GNUCXX) - - install (TARGETS sslconnector - DESTINATION ${QPIDC_MODULE_DIR} - COMPONENT ${QPID_COMPONENT_CLIENT}) - endif (CMAKE_SYSTEM_NAME STREQUAL Windows) - -endif (BUILD_SSL) diff --git a/qpid/cpp/src/ssl.mk b/qpid/cpp/src/ssl.mk index aaaf14ed54..9a92c7abc7 100644 --- a/qpid/cpp/src/ssl.mk +++ b/qpid/cpp/src/ssl.mk @@ -19,7 +19,7 @@ # # Makefile fragment, conditionally included in Makefile.am # -libsslcommon_la_SOURCES = \ +libqpidcommon_la_SOURCES += \ qpid/sys/ssl/check.h \ qpid/sys/ssl/check.cpp \ qpid/sys/ssl/util.h \ @@ -27,41 +27,21 @@ libsslcommon_la_SOURCES = \ qpid/sys/ssl/SslSocket.h \ qpid/sys/ssl/SslSocket.cpp -SSLCOMMON_VERSION_INFO = 2:0:0 -libsslcommon_la_LDFLAGS = -version-info $(SSLCOMMON_VERSION_INFO) -libsslcommon_la_LIBADD= -lnss3 -lssl3 -lnspr4 libqpidcommon.la -libsslcommon_la_CXXFLAGS=$(AM_CXXFLAGS) $(SSL_CFLAGS) +libqpidcommon_la_LIBADD += -lnss3 -lssl3 -lnspr4 +libqpidcommon_la_CXXFLAGS += $(SSL_CFLAGS) -lib_LTLIBRARIES += libsslcommon.la - -ssl_la_SOURCES = \ +libqpidbroker_la_SOURCES += \ qpid/sys/SslPlugin.cpp -ssl_la_LIBADD= libqpidbroker.la libsslcommon.la - -ssl_la_CXXFLAGS=$(AM_CXXFLAGS) $(SSL_CFLAGS) -D_IN_QPID_BROKER - -ssl_la_LDFLAGS = $(PLUGINLDFLAGS) +libqpidbroker_la_CXXFLAGS += $(SSL_CFLAGS) -dmoduleexec_LTLIBRARIES += ssl.la - -sslconnector_la_SOURCES = \ +libqpidclient_la_SOURCES += \ qpid/client/SslConnector.cpp +libqpidclient_la_CXXFLAGS += $(SSL_CFLAGS) + if HAVE_PROTON -sslconnector_la_SOURCES += \ +libqpidclient_la_SOURCES += \ qpid/messaging/amqp/SslTransport.cpp \ qpid/messaging/amqp/SslTransport.h endif #HAVE_PROTON - - -sslconnector_la_LIBADD = \ - libqpidclient.la \ - libsslcommon.la - -sslconnector_la_CXXFLAGS = $(AM_CXXFLAGS) -DQPIDC_CONF_FILE=\"$(confdir)/qpidc.conf\" $(SSL_CFLAGS) - -sslconnector_la_LDFLAGS = $(PLUGINLDFLAGS) - -cmoduleexec_LTLIBRARIES += \ - sslconnector.la diff --git a/qpid/cpp/src/tests/ha_test.py b/qpid/cpp/src/tests/ha_test.py index 9cf721fd01..f3c1d3a957 100755 --- a/qpid/cpp/src/tests/ha_test.py +++ b/qpid/cpp/src/tests/ha_test.py @@ -127,7 +127,7 @@ acl allow all all """) aclf.close() if not "--acl-file" in args: - args += [ "--acl-file", acl, "--load-module", os.getenv("ACL_LIB") ] + args += [ "--acl-file", acl, ] args += ["--socket-fd=%s"%ha_port.fileno, "--listen-disable=tcp"] Broker.__init__(self, test, args, port=ha_port.port, **kwargs) self.qpid_ha_path=os.path.join(os.getenv("PYTHON_COMMANDS"), "qpid-ha") diff --git a/qpid/cpp/src/tests/ha_tests.py b/qpid/cpp/src/tests/ha_tests.py index 212e92b0c6..60e3444c45 100755 --- a/qpid/cpp/src/tests/ha_tests.py +++ b/qpid/cpp/src/tests/ha_tests.py @@ -581,7 +581,7 @@ acl deny all all cluster = HaCluster( self, 2, args=["--auth", "yes", "--sasl-config", sasl_config, - "--acl-file", acl, "--load-module", os.getenv("ACL_LIB"), + "--acl-file", acl, "--ha-username=zag", "--ha-password=zag", "--ha-mechanism=PLAIN" ], client_credentials=Credentials("zag", "zag", "PLAIN")) diff --git a/qpid/cpp/src/tests/run_acl_tests b/qpid/cpp/src/tests/run_acl_tests index 5985401fa4..64aaf7c516 100755 --- a/qpid/cpp/src/tests/run_acl_tests +++ b/qpid/cpp/src/tests/run_acl_tests @@ -29,13 +29,13 @@ DATA_DIRQ=`pwd`/data_dirq trap stop_brokers INT TERM QUIT start_brokers() { - ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIR --load-module $ACL_LIB --acl-file policy.acl --auth no --log-enable trace+:acl --log-to-file local.log > qpidd.port + ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIR --acl-file policy.acl --auth no --log-enable trace+:acl --log-to-file local.log > qpidd.port LOCAL_PORT=`cat qpidd.port` - ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIRI --load-module $ACL_LIB --acl-file policy.acl --auth no --connection-limit-per-ip 2 --log-to-file locali.log > qpiddi.port + ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIRI --acl-file policy.acl --auth no --connection-limit-per-ip 2 --log-to-file locali.log > qpiddi.port LOCAL_PORTI=`cat qpiddi.port` - ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIRU --load-module $ACL_LIB --acl-file policy.acl --auth no --connection-limit-per-user 2 --log-to-file localu.log > qpiddu.port + ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIRU --acl-file policy.acl --auth no --connection-limit-per-user 2 --log-to-file localu.log > qpiddu.port LOCAL_PORTU=`cat qpiddu.port` - ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIRQ --load-module $ACL_LIB --acl-file policy.acl --auth no --max-queues-per-user 2 --log-to-file localq.log > qpiddq.port + ../qpidd --daemon --port 0 --interface 127.0.0.1 --no-module-dir --data-dir $DATA_DIRQ --acl-file policy.acl --auth no --max-queues-per-user 2 --log-to-file localq.log > qpiddq.port LOCAL_PORTQ=`cat qpiddq.port` } @@ -104,7 +104,7 @@ populate_directories() { test_loading_acl_from_absolute_path(){ POLICY_FILE=$srcdir/policy.acl rm -f temp.log - PORT=`../qpidd --daemon --port 0 --no-module-dir --no-data-dir --auth no --load-module $ACL_LIB --acl-file $POLICY_FILE -t --log-to-file temp.log 2>/dev/null` + PORT=`../qpidd --daemon --port 0 --no-module-dir --no-data-dir --auth no --acl-file $POLICY_FILE -t --log-to-file temp.log 2>/dev/null` ACL_FILE=`grep "notice ACL: Read file" temp.log | sed 's/^.*Read file //'` $QPIDD_EXEC --no-module-dir -q --port $PORT if test "$ACL_FILE" != "\"$POLICY_FILE\""; then diff --git a/qpid/cpp/src/tests/run_queue_redirect b/qpid/cpp/src/tests/run_queue_redirect index 412b5689ab..c006fea6d7 100755 --- a/qpid/cpp/src/tests/run_queue_redirect +++ b/qpid/cpp/src/tests/run_queue_redirect @@ -30,7 +30,6 @@ start_brokers() { --port 0 --interface 127.0.0.1 \ --no-module-dir \ --data-dir $DATA_DIR \ - --load-module $ACL_LIB \ --acl-file policy.acl \ --auth no \ --log-to-file queue_redirect.log \ diff --git a/qpid/cpp/src/tests/sasl_fed b/qpid/cpp/src/tests/sasl_fed index 1403056e6e..a92ccd7b7a 100755 --- a/qpid/cpp/src/tests/sasl_fed +++ b/qpid/cpp/src/tests/sasl_fed @@ -62,7 +62,6 @@ $QPIDD_EXEC \ --log-source yes \ --log-to-file $tmp_root/qpidd_1.log \ --sasl-config=$sasl_config_file \ - --load-module acl.so \ --acl-file $tmp_root/sasl_fed.acl \ -d > $tmp_root/broker_1_port @@ -81,7 +80,6 @@ $QPIDD_EXEC \ --log-source yes \ --log-to-file $tmp_root/qpidd_2.log \ --sasl-config=$sasl_config_file \ - --load-module acl.so \ --acl-file $tmp_root/sasl_fed.acl \ -d > $tmp_root/broker_2_port diff --git a/qpid/cpp/src/tests/sasl_fed_ex b/qpid/cpp/src/tests/sasl_fed_ex index 4ea61c5a2a..d4d5258aa8 100755 --- a/qpid/cpp/src/tests/sasl_fed_ex +++ b/qpid/cpp/src/tests/sasl_fed_ex @@ -122,12 +122,9 @@ DST_TCP_PORT=5807 SRC_TCP_PORT_2=5802 DST_TCP_PORT_2=5803 -SSL_LIB=${moduledir}/ssl.so - export QPID_SSL_CERT_NAME=${TEST_HOSTNAME} export QPID_NO_MODULE_DIR=1 -export QPID_LOAD_MODULE=$SSLCONNECTOR_LIB export QPID_SSL_CERT_DB=${CERT_DIR} export QPID_SSL_CERT_PASSWORD_FILE=${CERT_PW_FILE} export QPID_SSL_CERT_NAME=${TEST_HOSTNAME} @@ -161,7 +158,6 @@ COMMON_BROKER_OPTIONS=" \ --ssl-cert-name $TEST_HOSTNAME \ --no-data-dir \ --no-module-dir \ - --load-module ${SSL_LIB} \ --mgmt-enable=yes \ --log-enable info+ \ --log-source yes \ diff --git a/qpid/cpp/src/tests/ssl_test b/qpid/cpp/src/tests/ssl_test index 166892eeb0..7f722361b3 100755 --- a/qpid/cpp/src/tests/ssl_test +++ b/qpid/cpp/src/tests/ssl_test @@ -91,7 +91,7 @@ delete_certs() { } # Don't need --no-module-dir or --no-data-dir as they are set as env vars in test_env.sh -COMMON_OPTS="--daemon --config $CONFIG --load-module $SSL_LIB --ssl-cert-db $CERT_DB --ssl-cert-password-file $CERT_PW_FILE --ssl-cert-name $TEST_HOSTNAME" +COMMON_OPTS="--daemon --config $CONFIG --ssl-cert-db $CERT_DB --ssl-cert-password-file $CERT_PW_FILE --ssl-cert-name $TEST_HOSTNAME" # Start new brokers: # $1 must be integer @@ -124,7 +124,7 @@ stop_brokers() { pick_port() { # We need a fixed port to set --cluster-url. Use qpidd to pick a free port. - PICK=`../qpidd --no-module-dir -dp0` + PICK=`../qpidd --no-module-dir --listen-disable ssl -dp0` ../qpidd --no-module-dir -qp $PICK echo $PICK } @@ -173,7 +173,6 @@ start_ssl_broker PORT=${PORTS[0]} echo "Running SSL test on port $PORT" export QPID_NO_MODULE_DIR=1 -export QPID_LOAD_MODULE=$SSLCONNECTOR_LIB export QPID_SSL_CERT_DB=${CERT_DB} export QPID_SSL_CERT_PASSWORD_FILE=${CERT_PW_FILE} diff --git a/qpid/cpp/src/tests/test_env.sh.in b/qpid/cpp/src/tests/test_env.sh.in index 6940943b54..bafdacf944 100644 --- a/qpid/cpp/src/tests/test_env.sh.in +++ b/qpid/cpp/src/tests/test_env.sh.in @@ -47,7 +47,6 @@ export QPID_HA_EXEC=$PYTHON_COMMANDS/qpid-ha # Executables export QPIDD_EXEC=$top_builddir/src/qpidd -export QPID_WATCHDOG_EXEC=$top_builddir/src/qpidd_watchdog # Test executables export QPID_TEST_EXEC_DIR=$builddir @@ -61,11 +60,7 @@ export PATH=$top_builddir/src:$builddir:$srcdir:$PYTHON_COMMANDS:$QPID_TEST_EXEC export TEST_STORE_LIB=$testmoduledir/test_store.so exportmodule() { test -f $moduledir/$2 && eval "export $1=$moduledir/$2"; } -exportmodule ACL_LIB acl.so exportmodule HA_LIB ha.so -exportmodule SSLCONNECTOR_LIB sslconnector.so -exportmodule SSL_LIB ssl.so -exportmodule WATCHDOG_LIB watchdog.so exportmodule XML_LIB xml.so exportmodule STORE_LIB legacystore.so exportmodule AMQP_LIB amqp.so diff --git a/qpid/cpp/src/tests/test_watchdog b/qpid/cpp/src/tests/test_watchdog deleted file mode 100755 index 7b638da8a1..0000000000 --- a/qpid/cpp/src/tests/test_watchdog +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -# Tests for the watchdog plug-in - -source ./test_env.sh -# Start a broker with watchdog, freeze it with kill -STOP, verify that it is killed. -PORT=`$QPIDD_EXEC -dp0 --no-data-dir --auth=no --no-module-dir --load-module $WATCHDOG_LIB --log-to-file=qpidd_watchdog.log --watchdog-interval 2` || exit 1 -PID=`$QPIDD_EXEC --no-module-dir -cp $PORT` || exit 1 -kill -STOP $PID -sleep 3 - -if kill -0 $PID 2>/dev/null; then - echo "Hung process did not die." - kill $PID -else - true -fi |