Re: close(2) not being audited?

Timothy R. Chavez
2007-01-29T20:19:31Z

On Sun, 28 Jan 2007 16:40:56 -0500
James Antill <jantill@redhat.com> wrote:

> On Fri, 2007-01-26 at 17:46 -0600, Timothy R. Chavez wrote:
>
> > Yep, I was referring to last reference to opened file.
> >
> > I'd hate to suggest adding a field to the file like "opened_as" which would
> > store the original fd it was assigned, but that would be enough to associate
> > the open() record and the final "close" record.
>
>
> fd1 = open(...);
> ptr1 = mmap(fd1, ...);
> close(fd1);
>
> fd2 = open(...);
> assert(fd1 == fd2);
> ptr2 = mmap(fd2, ...);
> close(fd2);
>
> munmap(ptr1, ...);
> munmap(ptr2, ...);
>
> ...what should appear in the logs here? How are you going to tell which
> fd each munmap() belongs to?
> Maybe you mean "log inode/device for the file" and not "original fd",
> and then if/when you get confused it doesn't matter?
>

Well yes, I was assuming you would have the additional context provided by other
fields in the record such as inode and device, but on second thought, I think you
are right that such information should be sufficient to tie the "close" record with
the open() record without needing to correlate an fd between the two (which, like
you suggest, would be ambiguous without the additional context, anyway).

-tim