pull up r24634 from trunk
authorTom Yu <tlyu@mit.edu>
Sat, 19 Feb 2011 04:33:48 +0000 (04:33 +0000)
committerTom Yu <tlyu@mit.edu>
Sat, 19 Feb 2011 04:33:48 +0000 (04:33 +0000)
 ------------------------------------------------------------------------
 r24634 | ghudson | 2011-02-13 11:12:36 -0800 (Sun, 13 Feb 2011) | 10 lines

 ticket: 6867
 subject: Trace logging file descriptor leak
 target_version: 1.9.1
 tags: pullup

 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
version_fixed: 1.9.1
status: resolved

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-9@24642 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/os/trace.c

index 3f31ea920dcd1a0d449563d9cda50ef9a8c29193..707df73ce5d30c5755d7ae45de2453fa873b8a7b 100644 (file)
@@ -322,6 +322,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;
     }