diff options
author | Volker Lendecke <vlendec@samba.org> | 2003-07-01 12:40:52 +0000 |
---|---|---|
committer | Volker Lendecke <vlendec@samba.org> | 2003-07-01 12:40:52 +0000 |
commit | 0f8933ae778064ff58cdc832ce52c843631435bb (patch) | |
tree | 6038912dd56f01089b4bab41d6bbdc8bdb573eb7 /source/passdb/secrets.c | |
parent | f036368efdcbe576552ea85a78e5e6199a2b2c6d (diff) | |
download | samba-0f8933ae778064ff58cdc832ce52c843631435bb.tar.gz samba-0f8933ae778064ff58cdc832ce52c843631435bb.tar.xz samba-0f8933ae778064ff58cdc832ce52c843631435bb.zip |
Fix two memory leaks. tdb_search_keys allocates space for the key
strings.
Running 'net cache list' or secrets_get_trusted_domains through
valgrind gives a *huge* amount of invalid reads of one byte beyond the
indicated string length in libc's strncpy. Annoying...
Volker
Diffstat (limited to 'source/passdb/secrets.c')
-rw-r--r-- | source/passdb/secrets.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/passdb/secrets.c b/source/passdb/secrets.c index f91d59989f2..57a539b0929 100644 --- a/source/passdb/secrets.c +++ b/source/passdb/secrets.c @@ -615,6 +615,8 @@ NTSTATUS secrets_get_trusted_domains(TALLOC_CTX* ctx, int* enum_ctx, unsigned in DEBUG(0, ("strndup failed!\n")); return NT_STATUS_NO_MEMORY; } + + SAFE_FREE(k->node_key.dptr); packed_pass = secrets_fetch(secrets_key, &size); packed_size = tdb_trusted_dom_pass_unpack(packed_pass, size, pass); |