mirror of
https://git.libssh.org/projects/libssh.git
synced 2026-03-24 20:40:09 +09:00
Add more krb5-related Valgrind suppressions
All newly reported leaks are categorized as reachable and they mostly relate to global variables in krb5 which are free'd before each re-initialization. Fixes #352. Signed-off-by: Pavol Žáčik <pzacik@redhat.com> Reviewed-by: Jakub Jelen <jjelen@redhat.com>
This commit is contained in:
@@ -421,3 +421,95 @@
|
||||
fun:gss_acquire_cred_from
|
||||
fun:gss_acquire_cred
|
||||
}
|
||||
|
||||
# Function mecherror_copy called in various
|
||||
# functions of the krb5 library copies entries
|
||||
# to the global error mapping table (mecherrmap m).
|
||||
{
|
||||
Global error mapping table in krb5
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
fun:mecherror_copy
|
||||
}
|
||||
|
||||
# Function add_error_table called in various
|
||||
# functions of the krb5 library adds entries
|
||||
# to a global list of error tables et_list.
|
||||
{
|
||||
Global list of error tables in krb5
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
fun:add_error_table
|
||||
}
|
||||
|
||||
# Function build_mechSet builds the global
|
||||
# gss_OID_set_desc g_mechSet which is only
|
||||
# free'd when initialized again.
|
||||
{
|
||||
Global OID set in krb5
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
...
|
||||
fun:build_mechSet
|
||||
}
|
||||
|
||||
# Function gssint_register_mechinfo()
|
||||
# called from gssint_mechglue_init() adds
|
||||
# entries to a global linked list g_mechList.
|
||||
{
|
||||
Global list of gss_mech_info in krb5
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
...
|
||||
fun:gssint_register_mechinfo*
|
||||
...
|
||||
fun:gssint_mechglue_init
|
||||
}
|
||||
|
||||
# Function addConfigEntry() called during
|
||||
# updateMechList() adds entries to
|
||||
# a global linked list g_mechList.
|
||||
{
|
||||
Global list of gss_mech_info in krb5
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
...
|
||||
fun:addConfigEntry
|
||||
...
|
||||
fun:updateMechList
|
||||
}
|
||||
|
||||
# Function loadInterMech() called during
|
||||
# updateMechList() loops through the global
|
||||
# linked list g_mechList and updates its entries
|
||||
# with heap-alloced "interposer fields".
|
||||
{
|
||||
Global list of gss_mech_info in krb5
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
...
|
||||
fun:loadInterMech
|
||||
...
|
||||
fun:updateMechList
|
||||
}
|
||||
|
||||
# Multiple krb5 functions call krb5int_open_plugin
|
||||
# which opens shared libraries using dlopen.
|
||||
# The plugin handle then seems to be stored in the
|
||||
# main krb5 context.
|
||||
{
|
||||
Plugin handles stored in the krb5 context
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: reachable
|
||||
fun:malloc
|
||||
...
|
||||
fun:dlopen*
|
||||
...
|
||||
fun:krb5int_open_plugin
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user