diff options
author | Michael Goulish <mgoulish@apache.org> | 2010-10-28 04:39:43 +0000 |
---|---|---|
committer | Michael Goulish <mgoulish@apache.org> | 2010-10-28 04:39:43 +0000 |
commit | 0ee07d00231258d5bbf8a2102b84de5c91354c68 (patch) | |
tree | c8f98ad37d671185bcc81f3a6e8c8e0b086147d5 | |
parent | b533d8a6143e91ddded8c80816b1f908e0d171ab (diff) | |
download | qpid-python-0ee07d00231258d5bbf8a2102b84de5c91354c68.tar.gz |
Add a small executable that prints out the sasl version number in integer form.
Use it in the sasl_fed test to determine whether that test can run.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1028180 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | cpp/src/tests/sasl.mk | 5 | ||||
-rwxr-xr-x | cpp/src/tests/sasl_fed | 15 | ||||
-rw-r--r-- | cpp/src/tests/sasl_version.cpp | 48 |
3 files changed, 65 insertions, 3 deletions
diff --git a/cpp/src/tests/sasl.mk b/cpp/src/tests/sasl.mk index 24f8dfef35..334a4b9c81 100644 --- a/cpp/src/tests/sasl.mk +++ b/cpp/src/tests/sasl.mk @@ -25,6 +25,11 @@ cluster_authentication_soak_INCLUDES=$(PUBLIC_INCLUDES) cluster_authentication_soak_SOURCES=cluster_authentication_soak.cpp ForkedBroker.h ForkedBroker.cpp cluster_authentication_soak_LDADD=$(lib_client) $(lib_broker) +# Note: sasl_version is not a test -- it is a tool used by tests. +check_PROGRAMS+=sasl_version +sasl_version_SOURCES=sasl_version.cpp +sasl_version_LDADD=$(lib_client) + TESTS += run_cluster_authentication_test sasl_fed LONG_TESTS += run_cluster_authentication_soak EXTRA_DIST += run_cluster_authentication_test sasl_fed run_cluster_authentication_soak diff --git a/cpp/src/tests/sasl_fed b/cpp/src/tests/sasl_fed index b57c57f89a..e65adae171 100755 --- a/cpp/src/tests/sasl_fed +++ b/cpp/src/tests/sasl_fed @@ -19,11 +19,20 @@ # under the License. # -# disable this test for all sasl verisons temporarily until TODO, below, is completed. -exit 0 - source test_env.sh +# This minimum value corresponds to sasl version 2.1.22 +minimum_sasl_version=131350 + +sasl_version=`$QPID_TEST_EXEC_DIR/sasl_version` + +# This test is necessary becasue this sasl version is the first one that permits +# redirection of the sasl config file path. +if [ "$sasl_version" -lt "$minimum_sasl_version" ]; then + echo "sasl_fed: must have sasl version 2.1.22 or greater. Version is: $sasl_version" + exit 0 +fi + sasl_config_file=$builddir/sasl_config my_random_number=$RANDOM diff --git a/cpp/src/tests/sasl_version.cpp b/cpp/src/tests/sasl_version.cpp new file mode 100644 index 0000000000..db3efe4181 --- /dev/null +++ b/cpp/src/tests/sasl_version.cpp @@ -0,0 +1,48 @@ +/* + * + * 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. + * + */ + +#include <iostream> + +#include "sasl/sasl.h" + + +/* + Some tests need to distinguish between different versions of + SASL. This encodes and outputs the version number as an integer + for easy use in testing scripts. +*/ + +int +main ( ) +{ + // I assume that these are 8-bit quantities.... + int sasl_version = (SASL_VERSION_MAJOR << 16) + + (SASL_VERSION_MINOR << 8) + + SASL_VERSION_STEP; + + std::cout << sasl_version << std::endl; + + return 0; +} + + + + |