On Fri, Jul 13, 2001 at 04:07:54PM +0100, Glen Gray wrote:
> I'd suggest using clone instead of fork but IIRC it globally restricts
> descriptors being passed to children, i.e. It doesn't give you fine
> control to pass all but this descriptor etc.
it also makes you code linux-only. a better solution is to...
> On 13 Jul 2001 16:05:02 +0100, Padraig Brady wrote:
> > Is there a flag you can set on a file descriptor (using fcntl or equivalent)
> > to tell the kernel not to copy that particular descriptor to forked
> > children?
...do this:
fd_only_in_parent=open(...)
...
pid=fork();
if (pid == -1) {
...
} else if (pid == 0) {
/* do parent things */
} else {
close(fd_only_in_parent);
/* do child things */
}
have a lot of fd's you only want in the parent? put them into an array,
and have the kids loop them close.
kevin
--
kevin at suberic.net "linux is a cancer" --steve ballmer
fork()'ed on 37058400 "released 25 august 1991, linux is a virgo" --me
meatspace place: home linux, not just a star-sign:
http://suberic.net/~kevinhttp://www.linux.com/
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!