[openssl-commits] [openssl] master update
Emilia Kasper
emilia at openssl.org
Sat Apr 9 23:51:28 UTC 2016
The branch master has been updated
via cdbf577973a76a0627debb5105f46d6f4509c39e (commit)
via 50eadf2a242468a9552fc770cb7e5ebfd89c6bb1 (commit)
via b59147070021ef2838e47c5c29331f6816b73f65 (commit)
from 578a00048d78121f1ff30da49007b7b847aca21a (commit)
- Log -----------------------------------------------------------------
commit cdbf577973a76a0627debb5105f46d6f4509c39e
Author: Emilia Kasper <emilia at openssl.org>
Date: Fri Apr 8 18:55:28 2016 +0200
Disable some sanitizer checks without PEDANTIC
Code without PEDANTIC has intentional "undefined" behaviour. To get best
coverage for both PEDANTIC and non-PEDANTIC codepaths, run the sanitizer
builds in two different configurations:
1) Without PEDANTIC but with alignment checks disabled.
2) With PEDANTIC.
To not overload Travis too much, run one build with clang and the other
with gcc (chosen at random).
Also remove a micro-optimization in CAST code to be able to
-fsanitize=shift. Whether shift sanitization is meaningful for crypto or
an obstacle is debatable but since this appears to be the only offender,
we might as well keep the check for now.
Reviewed-by: Richard Levitte <levitte at openssl.org>
commit 50eadf2a242468a9552fc770cb7e5ebfd89c6bb1
Author: Emilia Kasper <emilia at openssl.org>
Date: Fri Apr 8 16:19:00 2016 +0200
Fix warnings exposed by clang-3.8
Reviewed-by: Richard Levitte <levitte at openssl.org>
commit b59147070021ef2838e47c5c29331f6816b73f65
Author: Emilia Kasper <emilia at openssl.org>
Date: Tue Apr 5 15:11:02 2016 +0200
Adjust --strict-warnings builds in Travis
In Travis, do --strict-warnings on BUILDONLY configurations. This
ensures that the tests run even if --strict-warnings fail, and avoids
hiding unrelated test failures.
Reviewed-by: Richard Levitte <levitte at openssl.org>
-----------------------------------------------------------------------
Summary of changes:
.travis.yml | 12 ++++++------
CHANGES | 5 +++++
apps/s_cb.c | 4 ++--
crypto/cast/cast_lcl.h | 4 +---
test/ct_test.c | 7 +++++--
5 files changed, 19 insertions(+), 13 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 359a980..62675da 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -24,12 +24,12 @@ compiler:
env:
- CONFIG_OPTS="shared"
- - CONFIG_OPTS="--debug --strict-warnings enable-crypto-mdebug enable-rc5 enable-md2"
- - CONFIG_OPTS="" BUILDONLY="yes"
+ - CONFIG_OPTS="--debug enable-crypto-mdebug enable-rc5 enable-md2"
+ - CONFIG_OPTS="--strict-warnings" BUILDONLY="yes"
- CONFIG_OPTS="--classic" BUILDONLY="yes"
- CONFIG_OPTS="--classic shared" BUILDONLY="yes"
- - CONFIG_OPTS="no-pic" BUILDONLY="yes"
- - CONFIG_OPTS="no-engine" BUILDONLY="yes"
+ - CONFIG_OPTS="no-pic --strict-warnings" BUILDONLY="yes"
+ - CONFIG_OPTS="no-engine --strict-warnings" BUILDONLY="yes"
matrix:
include:
@@ -38,13 +38,13 @@ matrix:
env: CONFIG_OPTS="-fsanitize=address"
- os: linux
compiler: clang-3.6
- env: CONFIG_OPTS="no-asm --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
+ env: CONFIG_OPTS="no-asm -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2 -fno-sanitize=alignment"
- os: linux
compiler: gcc-5
env: CONFIG_OPTS="-fsanitize=address"
- os: linux
compiler: gcc-5
- env: CONFIG_OPTS="no-asm --strict-warnings -fno-sanitize-recover -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
+ env: CONFIG_OPTS="no-asm -fno-sanitize-recover -DPEDANTIC -fsanitize=address -fsanitize=undefined enable-rc5 enable-md2"
- os: linux
compiler: i686-w64-mingw32-gcc
env: CONFIG_OPTS="no-pic"
diff --git a/CHANGES b/CHANGES
index f404994..b71b850 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,11 @@
Changes between 1.0.2g and 1.1.0 [xx XXX xxxx]
+ *) --strict-warnings no longer enables runtime debugging options
+ such as REF_DEBUG. Instead, debug options are automatically
+ enabled with '--debug' builds.
+ [Andy Polyakov, Emilia Käsper]
+
*) Made DH and DH_METHOD opaque. The structures for managing DH objects
have been moved out of the public header files. New functions for managing
these have been added.
diff --git a/apps/s_cb.c b/apps/s_cb.c
index 49f3acd..abcbad4 100644
--- a/apps/s_cb.c
+++ b/apps/s_cb.c
@@ -507,12 +507,12 @@ long bio_dump_callback(BIO *bio, int cmd, const char *argp,
if (cmd == (BIO_CB_READ | BIO_CB_RETURN)) {
BIO_printf(out, "read from %p [%p] (%lu bytes => %ld (0x%lX))\n",
- (void *)bio, argp, (unsigned long)argi, ret, ret);
+ (void *)bio, (void *)argp, (unsigned long)argi, ret, ret);
BIO_dump(out, argp, (int)ret);
return (ret);
} else if (cmd == (BIO_CB_WRITE | BIO_CB_RETURN)) {
BIO_printf(out, "write to %p [%p] (%lu bytes => %ld (0x%lX))\n",
- (void *)bio, argp, (unsigned long)argi, ret, ret);
+ (void *)bio, (void *)argp, (unsigned long)argi, ret, ret);
BIO_dump(out, argp, (int)ret);
}
return (ret);
diff --git a/crypto/cast/cast_lcl.h b/crypto/cast/cast_lcl.h
index 10a1de3..4a3c603 100644
--- a/crypto/cast/cast_lcl.h
+++ b/crypto/cast/cast_lcl.h
@@ -151,10 +151,8 @@
#if defined(OPENSSL_SYS_WIN32) && defined(_MSC_VER)
# define ROTL(a,n) (_lrotl(a,n))
-#elif defined(PEDANTIC)
-# define ROTL(a,n) ((((a)<<(n))&0xffffffffL)|((a)>>((32-(n))&31)))
#else
-# define ROTL(a,n) ((((a)<<(n))&0xffffffffL)|((a)>>(32-(n))))
+# define ROTL(a,n) ((((a)<<(n))&0xffffffffL)|((a)>>((32-(n))&31)))
#endif
#define C_M 0x3fc
diff --git a/test/ct_test.c b/test/ct_test.c
index bdd5b84..8175d16 100644
--- a/test/ct_test.c
+++ b/test/ct_test.c
@@ -101,7 +101,11 @@ static CT_TEST_FIXTURE set_up(const char *const test_case_name)
{
CT_TEST_FIXTURE fixture;
int setup_ok = 1;
- CTLOG_STORE *ctlog_store = CTLOG_STORE_new();
+ CTLOG_STORE *ctlog_store;
+
+ memset(&fixture, 0, sizeof(fixture));
+
+ ctlog_store = CTLOG_STORE_new();
if (ctlog_store == NULL) {
setup_ok = 0;
@@ -115,7 +119,6 @@ static CT_TEST_FIXTURE set_up(const char *const test_case_name)
goto end;
}
- memset(&fixture, 0, sizeof(fixture));
fixture.test_case_name = test_case_name;
fixture.ctlog_store = ctlog_store;
More information about the openssl-commits
mailing list