You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2017/05/03 18:38:20 UTC
[2/2] qpid-proton git commit: PROTON-1472: add libuv to .travis.yml
PROTON-1472: add libuv to .travis.yml
- update .travis.yml to build libuv 2.1 from souce
- added valgrind suppression file for older libcrypto to C tests.
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/4be3a079
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/4be3a079
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/4be3a079
Branch: refs/heads/master
Commit: 4be3a07938822175ad37651b5d36886d3b8fb521
Parents: c5555dd
Author: Alan Conway <ac...@redhat.com>
Authored: Tue May 2 23:29:31 2017 -0400
Committer: Alan Conway <ac...@redhat.com>
Committed: Wed May 3 14:28:36 2017 -0400
----------------------------------------------------------------------
.travis.yml | 48 +++++++++++--
proton-c/src/tests/CMakeLists.txt | 3 +-
proton-c/src/tests/valgrind.supp | 123 +++++++++++++++++++++++++++++++++
3 files changed, 166 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/4be3a079/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index 49e44da..9c88fe9 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,10 +1,27 @@
-os:
-- linux
+#
+# 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
+#
+
+os: linux
sudo: false
-language:
-- python
-python:
-- 2.7
+language: python
+python: 2.7
+
addons:
apt:
packages:
@@ -19,16 +36,33 @@ addons:
- ruby-dev
- python3-dev
- php5
+ - golang
+ # Libuv build requirements
+ - automake
+ - libtool
+
install:
- pip install --upgrade pip
- pip install tox
- gem install rspec
- gem install simplecov || true
- gem install minitest
+
+# Build and install libuv 1.0 from source, trusty only has 0.10
+- PREFIX=$PWD/install
+- git clone -b v1.x https://github.com/libuv/libuv
+- pushd libuv
+- sh autogen.sh
+- ./configure --prefix $PREFIX
+- make && make install
+- popd
+
before_script:
+- PREFIX=$PWD/install
- export PATH=${HOME}/.local/bin:${PATH}
- mkdir Build
- cd Build
-- cmake .. -DCMAKE_INSTALL_PREFIX=$PWD/install
+- cmake .. -DCMAKE_INSTALL_PREFIX=$PREFIX
script:
+- export VALGRIND_OPTS="--num-callers=32"
- cmake --build . --target install && ctest -V
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/4be3a079/proton-c/src/tests/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/proton-c/src/tests/CMakeLists.txt b/proton-c/src/tests/CMakeLists.txt
index 52983bc..14f353f 100644
--- a/proton-c/src/tests/CMakeLists.txt
+++ b/proton-c/src/tests/CMakeLists.txt
@@ -24,7 +24,8 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})
if (ENABLE_VALGRIND AND VALGRIND_EXE)
set(memcheck-cmd ${VALGRIND_EXE} --error-exitcode=42 --quiet
- --leak-check=full --trace-children=yes)
+ --leak-check=full --trace-children=yes
+ --suppressions=${CMAKE_CURRENT_SOURCE_DIR}/valgrind.supp)
endif ()
macro (pn_add_c_test test)
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/4be3a079/proton-c/src/tests/valgrind.supp
----------------------------------------------------------------------
diff --git a/proton-c/src/tests/valgrind.supp b/proton-c/src/tests/valgrind.supp
new file mode 100644
index 0000000..505fc57
--- /dev/null
+++ b/proton-c/src/tests/valgrind.supp
@@ -0,0 +1,123 @@
+{
+ SSL does a number of uninitialized accesses (expected) 1
+ Memcheck:Cond
+ fun:BN_bin2bn
+ obj:*
+ obj:*
+}
+
+{
+ SSL does a number of uninitialized accesses (expected) 2
+ Memcheck:Cond
+ fun:BN_num_bits_word
+ fun:BN_num_bits
+}
+
+{
+ SSL does a number of uninitialized accesses (expected) 3
+ Memcheck:Value8
+ fun:BN_num_bits_word
+ fun:BN_num_bits
+ fun:BN_mod_exp_mont_consttime
+ obj:*
+ fun:ssl3_ctx_ctrl
+}
+
+{
+ SSL does a number of uninitialized accesses (expected) 4
+ Memcheck:Value8
+ fun:BN_mod_exp_mont_consttime
+ obj:*
+ fun:ssl3_ctx_ctrl
+}
+
+{
+ SSL does a number of uninitialized accesses (FreeBSD version)
+ Memcheck:Value8
+ fun:BN_num_bits_word
+ fun:BN_num_bits
+ fun:BN_mod_exp_mont_consttime
+ fun:BN_mod_exp_mont
+ obj:*libcrypto.so*
+ fun:ssl3_ctx_ctrl
+}
+
+{
+ SSL does a number of uninitialized accesses (FreeBSD version)
+ Memcheck:Value8
+ fun:BN_mod_exp_mont_consttime
+ fun:BN_mod_exp_mont
+ obj:*libcrypto.so*
+ fun:ssl3_ctx_ctrl
+}
+
+{
+ SSL does a number of uninitialized accesses (expected) 5
+ Memcheck:Value4
+ fun:BN_mod_exp_mont_consttime
+ fun:BN_mod_exp_mont
+ obj:*
+ obj:*
+}
+
+{
+ SSL does a number of uninitialized accesses (expected) 6
+ Memcheck:Value4
+ fun:BN_num_bits_word
+ fun:BN_mod_exp_mont_consttime
+ fun:BN_mod_exp_mont
+ obj:*
+ obj:*
+}
+
+{
+ SSL does a number of uninitialized accesses (expected) 7
+ Memcheck:Cond
+ fun:ASN1_STRING_set
+ ...
+ fun:PEM_ASN1_read_bio
+ fun:SSL_CTX_use_certificate_chain_file
+ fun:pn_ssl_domain_set_credentials
+}
+
+{
+ Since we can never safely uninitialize SSL, allow this
+ Memcheck:Leak
+ fun:_vgrZU_libcZdsoZa_realloc
+ fun:CRYPTO_realloc
+ fun:lh_insert
+ obj:/lib64/libcrypto.so.0.9.8e
+ fun:ERR_load_strings
+ fun:ERR_load_X509V3_strings
+ fun:ERR_load_crypto_strings
+ fun:SSL_load_error_strings
+}
+
+{
+ Since we can never safely uninitialize SSL, allow this
+ Memcheck:Leak
+ fun:_vgrZU_libcZdsoZa_malloc
+ fun:CRYPTO_malloc
+ fun:lh_new
+ fun:OBJ_NAME_init
+ fun:OBJ_NAME_add
+ fun:EVP_add_cipher
+ fun:SSL_library_init
+}
+
+{
+ Since we can never safely uninitialize SSL, allow this
+ Memcheck:Leak
+ fun:malloc
+ obj:*
+ fun:CRYPTO_malloc
+}
+
+{
+ Known memory leak in cyrus-sasl (fixed in 2.1.26)
+ Memcheck:Leak
+ fun:malloc
+ fun:*
+ fun:sasl_config_init
+ fun:sasl_server_init
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org