diff options
author | Greg Hudson <ghudson@mit.edu> | 2011-02-13 19:12:36 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2011-02-13 19:12:36 +0000 |
commit | 6726c9f5eca0e49cabfdf878c02e5966bdcccd93 (patch) | |
tree | 8a7ee901d8418ce885333ab34ca4e6b7b007c10b /src | |
parent | d66abd299fcc4b288fdc6a904152fd96ba90e5d2 (diff) | |
download | krb5-6726c9f5eca0e49cabfdf878c02e5966bdcccd93.tar.gz krb5-6726c9f5eca0e49cabfdf878c02e5966bdcccd93.tar.xz krb5-6726c9f5eca0e49cabfdf878c02e5966bdcccd93.zip |
Trace logging file descriptor leak
File descriptors created for trace logging were never being closed.
With short-lived contexts this leak would eventually overflow the
process's file table. Correct this oversight by closing the file
descriptor in file_trace_cb before freeing its container.
ticket: 6867
target_version: 1.9.1
tags: pullup
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24634 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/krb5/os/trace.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/krb5/os/trace.c b/src/lib/krb5/os/trace.c index 30942cd97..3138aaf0f 100644 --- a/src/lib/krb5/os/trace.c +++ b/src/lib/krb5/os/trace.c @@ -321,6 +321,7 @@ file_trace_cb(krb5_context context, const struct krb5_trace_info *info, void *da if (info == NULL) { /* Null info means destroy the callback data. */ + close(*fd); free(fd); return; } |