458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen#
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen# Valgrind suppression patterns
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen#
79f416d4000aa4192683207aea58a7b12ce66411Timo Sirainen# See an introduction to suppressions in Valgrind manual:
79f416d4000aa4192683207aea58a7b12ce66411Timo Sirainen# http://valgrind.org/docs/manual/manual-core.html#manual-core.suppress
79f416d4000aa4192683207aea58a7b12ce66411Timo Sirainen#
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen# Each suppression name here must start with "sssd-" to differentiate it from
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen# suppressions maintained elsewhere.
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen#
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen# talloc-involved leaks
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen{
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen sssd-leak-talloc
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen Memcheck:Leak
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen ...
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen fun:talloc_*
70af4db1c95a5ea3749213da539359b76abcfcd1Timo Sirainen ...
02e8b5f55210f413853998a0ba5832eb3f9a6dc6Timo Sirainen}
42abccd9b2a5a4190bd3c14ec2dcc10d51c0f491Timo Sirainen{
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen sssd-leak-_talloc
05c32766dbb5f79372a732acf87f1f02d6c45a7fTimo Sirainen Memcheck:Leak
b015d3d3af5b1c0fd526f31d78229bf9f633db56Timo Sirainen ...
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen fun:_talloc_*
1ac7b6969120bfdb15497663229f0dd168ae4ab8Timo Sirainen ...
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen}
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen
7744586e3e0fd60158abfbb03a233d3bd8d6c48bTimo Sirainen# nss3-involved leaks
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen{
5d03d9f439e41c90215a3c938ffebe4c2a8ae257Timo Sirainen sssd-leak-nss3
55a14bce15b9f44441b5f56616d73651a294d770Timo Sirainen Memcheck:Leak
1f09437dac19eba1b95842e4850895b9ad2cb57eTimo Sirainen ...
1f09437dac19eba1b95842e4850895b9ad2cb57eTimo Sirainen obj:*/libnss3.so
79f416d4000aa4192683207aea58a7b12ce66411Timo Sirainen ...
458acd7b39c84bae0d18c36ff9ddff9a49b4ae4aTimo Sirainen}
# nspr4-involved leaks
{
sssd-leak-nspr4
Memcheck:Leak
...
obj:*/libnspr4.so
...
}
{
sssd-leak-nspr4-arena-allocate
Memcheck:Leak
fun:malloc
fun:PL_ArenaAllocate
...
}
# dbus-involved leaks
{
sssd-leak-dbus
Memcheck:Leak
...
obj:*/libdbus-1.so.*
...
}
# False positive - pcre_free is called in sss_names_ctx_destructor
{
sssd-leak-sss_names
Memcheck:Leak
fun:malloc
fun:pcre_compile2
fun:sss_names_init_from_args
...
}
# Ignore tests exiting and abandoning cmocka state, concerns dyndns test
{
sssd-leak-cmocka-exit
Memcheck:Leak
fun:malloc
fun:_test_malloc
fun:_run_tests
fun:main
}
# Stpncpy false positive on RHEL6:
# https://lists.fedorahosted.org/pipermail/sssd-devel/2014-September/021417.html
# possibly related to:
# https://www.mail-archive.com/valgrind-users@lists.sourceforge.net/msg03832.html
{
sssd-value8-stpncpy
Memcheck:Value8
obj:/lib*/libc-2.12.so
fun:sha512_crypt_r
...
}
{
sssd-cond-stpncpy
Memcheck:Cond
obj:/lib*/libc-2.12.so
fun:sha512_crypt_r
...
}
# False positive leak involving RHEL6 glib memory slices
{
sssd-leak-glib-slices
Memcheck:Leak
fun:memalign
fun:posix_memalign
obj:/lib*/libglib-2.0.so*
fun:g_slice_alloc
fun:g_string_sized_new
...
fun:g_utf8_casefold
fun:sss_utf8_case_eq
...
}
# uninitialised value in libselinux (fixed in fedora >= 21)
{
libselinux-jump-or-move-depends-on-uninitialised-value-in-selabel_close
Memcheck:Cond
obj:/usr/lib64/libselinux.so.1
fun:selabel_close
obj:/usr/lib64/libkrb5support.so.0.1
fun:_dl_fini
fun:__run_exit_handlers
fun:exit
fun:(below main)
}
# long-standing memory leak in popt
{
popt-memleak-from-poptGetNextOpt-malloc
Memcheck:Leak
fun:malloc
...
fun:poptGetNextOpt
fun:main
}
# long-standing memory leak in popt
{
popt-memleak-from-poptGetNextOpt-realloc
Memcheck:Leak
fun:realloc
...
fun:poptGetNextOpt
fun:main
}
# popt was not good with read access either. Applies for popt <= 1.13
{
popt-suppress-invalid-read
Memcheck:Addr4
...
fun:poptGetNextOpt
fun:main
}
# Some tests initialize c-ares context, then fork a child that just exits
# without a proper teardown, which means the ares destructor is not called.
# Suppress those errors.
{
c-ares-suppress-leak-from-init
Memcheck:Leak
...
fun:ares_init_options
fun:recreate_ares_channel
fun:resolv_init
fun:be_res_init
fun:be_init_failover
fun:test_ipa_server_create_trusts_setup
...
fun:_cmocka_run_group_tests
fun:main
}