Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 09 Jun 1999 23:34:36 +0200
From:      Sheldon Hearn <sheldonh@uunet.co.za>
To:        hackers@freebsd.org
Subject:   Supprting twist for inetd with libwrap
Message-ID:  <22705.928964076@axl.noc.iafrica.com>

next in thread | raw e-mail | index | archive | help

Hi folks,

I'm currently working on our libwrap support in inetd. Working with the
originators of a few PR's, I've come up with a diff that gets most of
what we need right, including the severity option of hosts_options.

I'm taking on hosts_options' twist now. The problem with twist is that
it execl()'s, which isn't at all cool for the listening inetd (it's not
a problem for forked inetd processes).

I've put something together that teaches tcp_wrappers' hosts_access()
to allow the caller to frob a flag called fork_on_twist. If the flag is
set, twist_option() (the function that does the execl) will fo a fork
before the execl, with the child doing the execl and the parent failing
hosts_access.

It suddenly occured to me while I was testing this that I might be
going to a lot of trouble under the misguided assumption that a fork is
expensive. Am I wrong?

Inetd already forks for some internal services and for all external
services, so the only extra forks would be for a few of the internal
services.

Would there be a noticeable impact on inetd's if it _always_ forked
before calling hosts_access()? 

Ciao,
Sheldon.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?22705.928964076>