Re: add closefrom() call
- From: Robert Watson <rwatson@xxxxxxxxxxx>
- Date: Fri, 6 Jul 2007 12:50:17 +0100 (BST)
On Fri, 6 Jul 2007, LI Xin wrote:
Joerg Sonnenberger wrote:
On Wed, Jul 04, 2007 at 08:27:49PM -0400, Ighighi Ighighi wrote:
The closefrom() call, available in Solaris, is present in NetBSD since version 3.0. It is implemented with the F_CLOSEM fcntl() available since version 2.0.
You could also add a system call like it was done in DragonFly. That might be even simpler to implement.
Here is my implementation for FreeBSD. Some difference between my and DragonFly's implementation:
- closefrom(-1) would be no-op on DragonFly, my version would close all
open files (From my understanding of OpenSolaris's userland
implementation, this is Solaris's behavior).
- my version closefrom(very_big_fd) would result in EBADF. I am not
very sure whether this is correct, but it does not hurt for applications
that thinks closefrom() would return void.
To RW: I have not found a suitable audit event for this, should I create a new event?
Solaris side-steps this issue by simply auditing the individual close() system calls. My preference would be that we implement this in user space also, which would likewise generate a series of audit events, one for each system call. The procfs optimization they use (I wonder -- is it really an optimization?) won't work for us, however. Do you think that there's a strong motivation to provide a closefrom(2) system call, rather than a closefrom(3) library call? This would let us neatly avoid the question you've posed :-).
Robert N M Watson
Computer Laboratory
University of Cambridge
_______________________________________________
freebsd-hackers@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@xxxxxxxxxxx"
- Follow-Ups:
- Re: add closefrom() call
- From: Joerg Sonnenberger
- Re: add closefrom() call
- References:
- add closefrom() call
- From: Ighighi Ighighi
- Re: add closefrom() call
- From: Joerg Sonnenberger
- Re: add closefrom() call
- From: LI Xin
- add closefrom() call
- Prev by Date: Re: add closefrom() call
- Next by Date: Re: add closefrom() call
- Previous by thread: Re: add closefrom() call
- Next by thread: Re: add closefrom() call
- Index(es):