Subject: Re: implementing closeall via a syscall
To: Greywolf <greywolf@starwolf.com>
From: Andrew Brown <atatat@atatdot.net>
List: tech-kern
Date: 01/05/2004 15:18:34
>AB> >solaris has closefrom(), which does the same thing (using /proc if I'm
>AB> >not mistaken). So that would be a better name.
>AB>
>AB> uh...where?
>
>Solaris 2.8 and above have (paraphrased):
>
>closefrom(int n): close all fds equal to and above n
>fdwalk(int (*fn)(void *, int), void *callback): generate a list of open
> file descriptors, passing the pointer to the callback data
> as the first arg of fn, and passing the value of the open fd
> from the list as the second arg of fn.
mine don't. at least, i can't find them mentioned in any library or
header file.
>I would prefer to see a closem() or closefrom() or whatever apply to
>a range of fds as user-defined, i.e. closem(from,to), which closes all
>descriptors from "from" to "to", inclusive, as a program might wish to
>relocate fds 0, 1, 2 to some other place. closem(from, -1) or
>closem(-1,to) is what I envisioned. Unadjustably single-ended ranges
>are a major pain, from a programming point of view.
true, true, but this is not our war to fight. if, on the other hand,
we were to decide to implement something similar, i presume we'd do
the right thing and give it a better name. :)
--
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org * "ah! i see you have the internet
twofsonet@graffiti.com (Andrew Brown) that goes *ping*!"
werdna@squooshy.com * "information is power -- share the wealth."