Add memory sanitizer config, and run on travis.

Reviewed-by: Rich Salz <rsalz@openssl.org>
This commit is contained in:
Emilia Kasper 2016-07-28 20:24:28 +02:00
parent 976ef6adcc
commit 29df3061b3
2 changed files with 12 additions and 1 deletions

View File

@ -34,6 +34,9 @@ matrix:
- os: linux - os: linux
compiler: clang-3.6 compiler: clang-3.6
env: CONFIG_OPTS="no-shared enable-asan" env: CONFIG_OPTS="no-shared enable-asan"
- os: linux
compiler: clang-3.6
env: CONFIG_OPTS="no-shared enable-msan"
- os: linux - os: linux
compiler: clang-3.6 compiler: clang-3.6
env: CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method -fno-sanitize=alignment" env: CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method -fno-sanitize=alignment"

View File

@ -311,6 +311,7 @@ my @disablables = (
"md2", "md2",
"md4", "md4",
"mdc2", "mdc2",
"msan",
"multiblock", "multiblock",
"nextprotoneg", "nextprotoneg",
"ocb", "ocb",
@ -369,6 +370,7 @@ our %disabled = ( # "what" => "comment"
"fuzz-libfuzzer" => "default", "fuzz-libfuzzer" => "default",
"fuzz-afl" => "default", "fuzz-afl" => "default",
"md2" => "default", "md2" => "default",
"msan" => "default",
"rc5" => "default", "rc5" => "default",
"sctp" => "default", "sctp" => "default",
"ssl-trace" => "default", "ssl-trace" => "default",
@ -439,6 +441,8 @@ my @disable_cascades = (
"apps" => [ "tests" ], "apps" => [ "tests" ],
"comp" => [ "zlib" ], "comp" => [ "zlib" ],
sub { !$disabled{"unit-test"} } => [ "heartbeats" ], sub { !$disabled{"unit-test"} } => [ "heartbeats" ],
sub { !$disabled{"msan"} } => [ "asm" ],
); );
# Avoid protocol support holes. Also disable all versions below N, if version # Avoid protocol support holes. Also disable all versions below N, if version
@ -1063,8 +1067,12 @@ unless ($disabled{ubsan}) {
$config{cflags} .= "-fsanitize=undefined -fno-sanitize-recover=all "; $config{cflags} .= "-fsanitize=undefined -fno-sanitize-recover=all ";
} }
unless ($disabled{msan}) {
$config{cflags} .= "-fsanitize=memory ";
}
unless ($disabled{"fuzz-libfuzzer"} && $disabled{"fuzz-afl"} unless ($disabled{"fuzz-libfuzzer"} && $disabled{"fuzz-afl"}
&& $disabled{asan} && $disabled{ubsan}) { && $disabled{asan} && $disabled{ubsan} && $disabled{msan}) {
$config{cflags} .= "-fno-omit-frame-pointer -g "; $config{cflags} .= "-fno-omit-frame-pointer -g ";
} }
# #