Re: add closefrom() call

看板FB_hackers作者時間18年前 (2007/07/24 10:54), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串5/26 (看更多)
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@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
文章代碼(AID): #16fMdZ00 (FB_hackers)
討論串 (同標題文章)
文章代碼(AID): #16fMdZ00 (FB_hackers)