Import NetBSD inetd(8)
Do not start it by default just yet. Change-Id: Id8d2dd33eb67ae74b3ef3060638e20c781e8e37d
This commit is contained in:
parent
e044bafaad
commit
c3b6f8f269
@ -102,6 +102,7 @@
|
||||
./etc/hostname.file minix-base
|
||||
./etc/hosts minix-base
|
||||
./etc/inet.conf minix-base obsolete
|
||||
./etc/inetd.conf minix-base
|
||||
./etc/kyua minix-tests kyua
|
||||
./etc/man.conf minix-base
|
||||
./etc/master.passwd minix-base
|
||||
@ -135,6 +136,7 @@
|
||||
./etc/rc.d/bootconf.sh minix-base
|
||||
./etc/rc.d/fsck minix-base
|
||||
./etc/rc.d/ftpd minix-base
|
||||
./etc/rc.d/inetd minix-base
|
||||
./etc/rc.d/ipfilter minix-base
|
||||
./etc/rc.d/ipsec minix-base
|
||||
./etc/rc.d/local minix-base
|
||||
@ -1029,6 +1031,7 @@
|
||||
./usr/sbin/groupinfo minix-base
|
||||
./usr/sbin/groupmod minix-base
|
||||
./usr/sbin/i2cscan minix-base
|
||||
./usr/sbin/inetd minix-base
|
||||
./usr/sbin/installboot_nbsd minix-base
|
||||
./usr/sbin/kernel minix-base
|
||||
./usr/sbin/link minix-base
|
||||
|
@ -601,6 +601,7 @@
|
||||
./usr/libdata/debug/usr/sbin/diskctl.debug minix-debug debug
|
||||
./usr/libdata/debug/usr/sbin/fbdctl.debug minix-debug debug
|
||||
./usr/libdata/debug/usr/sbin/i2cscan.debug minix-debug debug
|
||||
./usr/libdata/debug/usr/sbin/inetd.debug minix-debug debug
|
||||
./usr/libdata/debug/usr/sbin/installboot_nbsd.debug minix-debug debug
|
||||
./usr/libdata/debug/usr/sbin/kernel.debug minix-debug debug
|
||||
./usr/libdata/debug/usr/sbin/link.debug minix-debug debug
|
||||
|
@ -3297,6 +3297,7 @@
|
||||
./usr/man/man5/hosts_options.5 minix-man
|
||||
./usr/man/man5/http_status.5 minix-man obsolete
|
||||
./usr/man/man5/httpd.conf.5 minix-man obsolete
|
||||
./usr/man/man5/inetd.conf.5 minix-man
|
||||
./usr/man/man5/info.5 minix-man
|
||||
./usr/man/man5/keymap.5 minix-man
|
||||
./usr/man/man5/kyua-tester-list.5 minix-man kyua
|
||||
@ -3415,6 +3416,7 @@
|
||||
./usr/man/man8/ifconfig.8 minix-man
|
||||
./usr/man/man8/in.httpd.8 minix-man obsolete
|
||||
./usr/man/man8/inet.8 minix-man obsolete
|
||||
./usr/man/man8/inetd.8 minix-man
|
||||
./usr/man/man8/init.8 minix-man
|
||||
./usr/man/man8/installboot_nbsd.8 minix-man
|
||||
./usr/man/man8/intr.8 minix-man
|
||||
|
@ -321,6 +321,7 @@ install-etc-files: .PHONY .MAKE check_DESTDIR MAKEDEV
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ group \
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ hostname.file \
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ hosts \
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ inetd.conf \
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ mk.conf \
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ motd \
|
||||
${BINOWN} ${BINGRP} ${BINMODE} ${NETBSDSRCDIR}/etc/ ${DESTDIR}/etc/ nsswitch.conf \
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
# Override settings in NetBSD's default rc.conf with different default settings
|
||||
# for MINIX here, typically to disable scripts that NetBSD enables by default.
|
||||
#(nothing yet)
|
||||
inetd=NO
|
||||
|
||||
# Where to find servers/drivers binaries
|
||||
PKG_SERVICE_DIR=/usr/pkg/service
|
||||
|
86
etc/inetd.conf
Normal file
86
etc/inetd.conf
Normal file
@ -0,0 +1,86 @@
|
||||
# $NetBSD: inetd.conf,v 1.58 2007/10/16 02:47:14 tls Exp $
|
||||
#
|
||||
# Internet server configuration database
|
||||
#
|
||||
# @(#)inetd.conf 8.2 (Berkeley) 3/18/94
|
||||
#
|
||||
#http stream tcp nowait:600 _httpd /usr/libexec/httpd httpd /var/www
|
||||
#http stream tcp6 nowait:600 _httpd /usr/libexec/httpd httpd /var/www
|
||||
#ftp stream tcp nowait root /usr/libexec/ftpd ftpd -ll
|
||||
#ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -ll
|
||||
#telnet stream tcp nowait root /usr/libexec/telnetd telnetd -a valid
|
||||
#telnet stream tcp6 nowait root /usr/libexec/telnetd telnetd -a valid
|
||||
#shell stream tcp nowait root /usr/libexec/rshd rshd -L
|
||||
#shell stream tcp6 nowait root /usr/libexec/rshd rshd -L
|
||||
#login stream tcp nowait root /usr/libexec/rlogind rlogind -L
|
||||
#login stream tcp6 nowait root /usr/libexec/rlogind rlogind -L
|
||||
#exec stream tcp nowait root /usr/libexec/rexecd rexecd
|
||||
#exec stream tcp6 nowait root /usr/libexec/rexecd rexecd
|
||||
#finger stream tcp nowait nobody /usr/libexec/fingerd fingerd -lsmu
|
||||
#finger stream tcp6 nowait nobody /usr/libexec/fingerd fingerd -lsmu
|
||||
#ident stream tcp nowait nobody /usr/libexec/identd identd -l -o OTHER -e -N
|
||||
#ident stream tcp6 nowait nobody /usr/libexec/identd identd -l -o OTHER -e -N
|
||||
#tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot
|
||||
#tftp dgram udp6 wait root /usr/libexec/tftpd tftpd -l -s /tftpboot
|
||||
#comsat dgram udp wait root /usr/libexec/comsat comsat
|
||||
#comsat dgram udp6 wait root /usr/libexec/comsat comsat
|
||||
#ntalk dgram udp wait nobody:tty /usr/libexec/ntalkd ntalkd
|
||||
#bootps dgram udp wait root /usr/sbin/bootpd bootpd
|
||||
#
|
||||
# Games
|
||||
#
|
||||
#hunt dgram udp wait nobody /usr/games/huntd huntd
|
||||
#
|
||||
# Internal services
|
||||
#
|
||||
#tcpmux stream tcp nowait root internal
|
||||
#echo stream tcp nowait nobody internal
|
||||
#echo stream tcp6 nowait nobody internal
|
||||
#discard stream tcp nowait nobody internal
|
||||
#discard stream tcp6 nowait nobody internal
|
||||
#chargen stream tcp nowait nobody internal
|
||||
#chargen stream tcp6 nowait nobody internal
|
||||
#daytime stream tcp nowait nobody internal
|
||||
#daytime stream tcp6 nowait nobody internal
|
||||
#time stream tcp nowait nobody internal
|
||||
#time stream tcp6 nowait nobody internal
|
||||
#echo dgram udp wait nobody internal
|
||||
#echo dgram udp6 wait nobody internal
|
||||
#discard dgram udp wait nobody internal
|
||||
#discard dgram udp6 wait nobody internal
|
||||
#chargen dgram udp wait nobody internal
|
||||
#chargen dgram udp6 wait nobody internal
|
||||
#daytime dgram udp wait nobody internal
|
||||
#daytime dgram udp6 wait nobody internal
|
||||
#time dgram udp wait nobody internal
|
||||
#time dgram udp6 wait nobody internal
|
||||
#qotd stream tcp nowait nobody /usr/games/fortune fortune
|
||||
#qotd stream tcp6 nowait nobody /usr/games/fortune fortune
|
||||
#
|
||||
# Kerberos authenticated services
|
||||
#
|
||||
#klogin stream tcp nowait root /usr/libexec/rlogind rlogind -k
|
||||
#eklogin stream tcp nowait root /usr/libexec/rlogind rlogind -k -x
|
||||
#kshell stream tcp nowait root /usr/libexec/rshd rshd -k
|
||||
#
|
||||
# Services run ONLY on the Kerberos server
|
||||
#
|
||||
#kerberos-adm stream tcp nowait root /usr/libexec/kadmind kadmind
|
||||
#kerberos-adm stream tcp6 nowait root /usr/libexec/kadmind kadmind
|
||||
#kpasswd dgram udp wait root /usr/libexec/kpasswdd kpasswdd
|
||||
#kpasswd dgram udp6 wait root /usr/libexec/kpasswdd kpasswdd
|
||||
#
|
||||
# The hprop service is run on slave KDCs to receive the database from
|
||||
# the master KDC.
|
||||
#hprop stream tcp nowait root /usr/libexec/hpropd hpropd
|
||||
#hprop stream tcp6 nowait root /usr/libexec/hpropd hpropd
|
||||
#
|
||||
# RPC based services
|
||||
#
|
||||
#rstatd/1-3 dgram rpc/udp wait:100 nobody:kmem /usr/libexec/rpc.rstatd rpc.rstatd
|
||||
#rstatd/1-3 dgram rpc/udp6 wait:100 nobody:kmem /usr/libexec/rpc.rstatd rpc.rstatd
|
||||
#rusersd/2-3 dgram rpc/udp wait:100 nobody /usr/libexec/rpc.rusersd rpc.rusersd
|
||||
#rusersd/2-3 dgram rpc/udp6 wait:100 nobody /usr/libexec/rpc.rusersd rpc.rusersd
|
||||
#walld/1 dgram rpc/udp wait nobody:tty /usr/libexec/rpc.rwalld rpc.rwalld
|
||||
#sprayd/1 dgram rpc/udp wait nobody /usr/libexec/rpc.sprayd rpc.sprayd
|
||||
#rquotad/1-2 dgram rpc/udp wait root /usr/libexec/rpc.rquotad rpc.rquotad
|
@ -34,7 +34,7 @@ CONFIGFILES=\
|
||||
fsck ftpd \
|
||||
\
|
||||
\
|
||||
ipfilter ipsec \
|
||||
inetd ipfilter ipsec \
|
||||
\
|
||||
\
|
||||
local \
|
||||
|
20
etc/rc.d/inetd
Executable file
20
etc/rc.d/inetd
Executable file
@ -0,0 +1,20 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $NetBSD: inetd,v 1.7 2004/08/13 18:08:03 mycroft Exp $
|
||||
#
|
||||
|
||||
# PROVIDE: inetd
|
||||
# REQUIRE: DAEMON LOGIN
|
||||
# KEYWORD: shutdown
|
||||
|
||||
$_rc_subr_loaded . /etc/rc.subr
|
||||
|
||||
name="inetd"
|
||||
rcvar=$name
|
||||
command="/usr/sbin/${name}"
|
||||
pidfile="/var/run/${name}.pid"
|
||||
required_files="/etc/${name}.conf"
|
||||
extra_commands="reload"
|
||||
|
||||
load_rc_config $name
|
||||
run_rc_command "$1"
|
@ -11,7 +11,7 @@ SUBDIR= arp \
|
||||
\
|
||||
\
|
||||
\
|
||||
i2cscan installboot \
|
||||
i2cscan inetd installboot \
|
||||
\
|
||||
\
|
||||
link \
|
||||
|
32
usr.sbin/inetd/Makefile
Normal file
32
usr.sbin/inetd/Makefile
Normal file
@ -0,0 +1,32 @@
|
||||
# from: @(#)Makefile 8.1 (Berkeley) 6/6/93
|
||||
# $NetBSD: Makefile,v 1.23 2009/10/22 22:50:35 tsarna Exp $
|
||||
|
||||
.include <bsd.own.mk>
|
||||
|
||||
USE_FORT?= yes # network server
|
||||
|
||||
PROG= inetd
|
||||
SRCS= inetd.c
|
||||
MAN= inetd.8
|
||||
MLINKS= inetd.8 inetd.conf.5
|
||||
|
||||
CPPFLAGS+=-DLIBWRAP
|
||||
# Use LIBWRAP_INTERNAL for libwrap checking of inetd's `internal' services.
|
||||
#CPPFLAGS+=-DLIBWRAP_INTERNAL
|
||||
LDADD+= -lwrap -lutil
|
||||
DPADD+= ${LIBWRAP} ${LIBUTIL}
|
||||
|
||||
.if (${USE_INET6} != "no")
|
||||
CPPFLAGS+=-DINET6
|
||||
.endif
|
||||
|
||||
.if !defined(__MINIX)
|
||||
CPPFLAGS+=-DIPSEC
|
||||
SRCS+= ipsec.c
|
||||
LDADD+= -lipsec
|
||||
DPADD+= ${LIBIPSEC}
|
||||
.else # defined(__MINIX)
|
||||
CPPFLAGS+=-DNO_RPC
|
||||
.endif # defined(__MINIX)
|
||||
|
||||
.include <bsd.prog.mk>
|
650
usr.sbin/inetd/inetd.8
Normal file
650
usr.sbin/inetd/inetd.8
Normal file
@ -0,0 +1,650 @@
|
||||
.\" $NetBSD: inetd.8,v 1.57 2011/04/25 22:12:05 wiz Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" This code is derived from software contributed to The NetBSD Foundation
|
||||
.\" by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
|
||||
.\" NASA Ames Research Center.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
||||
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
||||
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
.\" POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" Copyright (c) 1985, 1991 The Regents of the University of California.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. Neither the name of the University nor the names of its contributors
|
||||
.\" may be used to endorse or promote products derived from this software
|
||||
.\" without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.\" from: @(#)inetd.8 8.4 (Berkeley) 6/1/94
|
||||
.\"
|
||||
.Dd August 27, 2008
|
||||
.Dt INETD 8
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm inetd ,
|
||||
.Nm inetd.conf
|
||||
.Nd internet
|
||||
.Dq super-server
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Fl d
|
||||
.Op Fl l
|
||||
.Op Ar configuration file
|
||||
.Sh DESCRIPTION
|
||||
.Nm
|
||||
should be run at boot time by
|
||||
.Pa /etc/rc
|
||||
(see
|
||||
.Xr rc 8 ) .
|
||||
It then opens sockets according to its configuration and listens
|
||||
for connections.
|
||||
When a connection is found on one of its sockets, it decides what
|
||||
service the socket corresponds to, and invokes a program to service
|
||||
the request.
|
||||
After the program is finished, it continues to listen on the socket
|
||||
(except in some cases which will be described below).
|
||||
Essentially,
|
||||
.Nm
|
||||
allows running one daemon to invoke several others,
|
||||
reducing load on the system.
|
||||
.Pp
|
||||
The options available for
|
||||
.Nm :
|
||||
.Bl -tag -width Ds
|
||||
.It Fl d
|
||||
Turns on debugging.
|
||||
.It Fl l
|
||||
Turns on libwrap connection logging.
|
||||
.El
|
||||
.Pp
|
||||
Upon execution,
|
||||
.Nm
|
||||
reads its configuration information from a configuration
|
||||
file which, by default, is
|
||||
.Pa /etc/inetd.conf .
|
||||
The path given for this configuration file must be absolute, unless
|
||||
the
|
||||
.Fl d
|
||||
option is also given on the command line.
|
||||
There must be an entry for each field of the configuration
|
||||
file, with entries for each field separated by a tab or
|
||||
a space.
|
||||
Comments are denoted by a ``#'' at the beginning of a line.
|
||||
There must be an entry for each field (except for one
|
||||
special case, described below).
|
||||
The fields of the configuration file are as follows:
|
||||
.Pp
|
||||
.Bd -unfilled -offset indent -compact
|
||||
[addr:]service-name
|
||||
socket-type[:accept_filter]
|
||||
protocol[,sndbuf=size][,rcvbuf=size]
|
||||
wait/nowait[:max]
|
||||
user[:group]
|
||||
server-program
|
||||
server program arguments
|
||||
.Ed
|
||||
.Pp
|
||||
To specify an
|
||||
.Em Sun-RPC
|
||||
based service, the entry would contain these fields:
|
||||
.Pp
|
||||
.Bd -unfilled -offset indent -compact
|
||||
service-name/version
|
||||
socket-type
|
||||
rpc/protocol[,sndbuf=size][,rcvbuf=size]
|
||||
wait/nowait[:max]
|
||||
user[:group]
|
||||
server-program
|
||||
server program arguments
|
||||
.Ed
|
||||
.Pp
|
||||
To specify a UNIX-domain (local) socket, the entry would contain
|
||||
these fields:
|
||||
.Pp
|
||||
.Bd -unfilled -offset indent -compact
|
||||
path
|
||||
socket-type
|
||||
unix[,sndbuf=size][,rcvbuf=size]
|
||||
wait/nowait[:max]
|
||||
user[:group]
|
||||
server-program
|
||||
server program arguments
|
||||
.Ed
|
||||
.Pp
|
||||
For Internet services, the first field of the line may also have a host
|
||||
address specifier prefixed to it, separated from the service name by a colon.
|
||||
If this is done, the string before the colon in the first field
|
||||
indicates what local address
|
||||
.Nm
|
||||
should use when listening for that service, or the single character
|
||||
.Dq \&*
|
||||
to indicate
|
||||
.Dv INADDR_ANY ,
|
||||
meaning
|
||||
.Sq all local addresses .
|
||||
To avoid repeating an address that occurs frequently, a line with a
|
||||
host address specifier and colon, but no further fields, causes the
|
||||
host address specifier to be remembered and used for all further lines
|
||||
with no explicit host specifier (until another such line or the end of
|
||||
the file).
|
||||
A line
|
||||
.Dl *:
|
||||
is implicitly provided at the top of the file; thus, traditional
|
||||
configuration files (which have no host address specifiers) will be
|
||||
interpreted in the traditional manner, with all services listened for
|
||||
on all local addresses.
|
||||
.Pp
|
||||
The
|
||||
.Em service-name
|
||||
entry is the name of a valid service in
|
||||
the file
|
||||
.Pa /etc/services .
|
||||
For
|
||||
.Dq internal
|
||||
services (discussed below), the service
|
||||
name
|
||||
.Em must
|
||||
be the official name of the service (that is, the first entry in
|
||||
.Pa /etc/services ) .
|
||||
When used to specify a
|
||||
.Em Sun-RPC
|
||||
based service, this field is a valid RPC service name in
|
||||
the file
|
||||
.Pa /etc/rpc .
|
||||
The part on the right of the
|
||||
.Dq /
|
||||
is the RPC version number.
|
||||
This can simply be a single numeric argument or a range of versions.
|
||||
A range is bounded by the low version to the high version \-
|
||||
.Dq rusers/1-3 .
|
||||
.Pp
|
||||
The
|
||||
.Em socket-type
|
||||
should be one of
|
||||
.Dq stream ,
|
||||
.Dq dgram ,
|
||||
.Dq raw ,
|
||||
.Dq rdm ,
|
||||
or
|
||||
.Dq seqpacket ,
|
||||
depending on whether the socket is a stream, datagram, raw,
|
||||
reliably delivered message, or sequenced packet socket.
|
||||
.Pp
|
||||
Optionally, an
|
||||
.Xr accept_filter 9
|
||||
can be specified by appending a colon to the socket-type, followed by
|
||||
the name of the desired accept filter.
|
||||
In this case
|
||||
.Nm
|
||||
will not see new connections for the specified service until the accept
|
||||
filter decides they are ready to be handled.
|
||||
.Pp
|
||||
The
|
||||
.Em protocol
|
||||
must be a valid protocol as given in
|
||||
.Pa /etc/protocols
|
||||
or the string
|
||||
.Dq unix .
|
||||
Examples might be
|
||||
.Dq tcp
|
||||
and
|
||||
.Dq udp .
|
||||
Rpc based services are specified with the
|
||||
.Dq rpc/tcp
|
||||
or
|
||||
.Dq rpc/udp
|
||||
service type.
|
||||
.Dq tcp
|
||||
and
|
||||
.Dq udp
|
||||
will be recognized as
|
||||
.Dq TCP or UDP over default IP version .
|
||||
It is currently IPv4, but in the future it will be IPv6.
|
||||
If you need to specify IPv4 or IPv6 explicitly, use something like
|
||||
.Dq tcp4
|
||||
or
|
||||
.Dq udp6 .
|
||||
If you would like to enable special support for
|
||||
.Xr faithd 8 ,
|
||||
prepend a keyword
|
||||
.Dq faith
|
||||
into
|
||||
.Em protocol ,
|
||||
like
|
||||
.Dq faith/tcp6 .
|
||||
.Pp
|
||||
In addition to the protocol, the configuration file may specify the
|
||||
send and receive socket buffer sizes for the listening socket.
|
||||
This is especially useful for
|
||||
.Tn TCP
|
||||
as the window scale factor, which is based on the receive socket
|
||||
buffer size, is advertised when the connection handshake occurs,
|
||||
thus the socket buffer size for the server must be set on the listen socket.
|
||||
By increasing the socket buffer sizes, better
|
||||
.Tn TCP
|
||||
performance may be realized in some situations.
|
||||
The socket buffer sizes are specified by appending their values to
|
||||
the protocol specification as follows:
|
||||
.Bd -literal -offset indent
|
||||
tcp,rcvbuf=16384
|
||||
tcp,sndbuf=64k
|
||||
tcp,rcvbuf=64k,sndbuf=1m
|
||||
.Ed
|
||||
.Pp
|
||||
A literal value may be specified, or modified using
|
||||
.Sq k
|
||||
to indicate kilobytes or
|
||||
.Sq m
|
||||
to indicate megabytes.
|
||||
Socket buffer sizes may be specified for all
|
||||
services and protocols except for tcpmux services.
|
||||
.Pp
|
||||
The
|
||||
.Em wait/nowait
|
||||
entry is used to tell
|
||||
.Nm
|
||||
if it should wait for the server program to return,
|
||||
or continue processing connections on the socket.
|
||||
If a datagram server connects
|
||||
to its peer, freeing the socket so
|
||||
.Nm
|
||||
can receive further messages on the socket, it is said to be
|
||||
a
|
||||
.Dq multi-threaded
|
||||
server, and should use the
|
||||
.Dq nowait
|
||||
entry.
|
||||
For datagram servers which process all incoming datagrams
|
||||
on a socket and eventually time out, the server is said to be
|
||||
.Dq single-threaded
|
||||
and should use a
|
||||
.Dq wait
|
||||
entry.
|
||||
.Xr comsat 8
|
||||
.Pq Xr biff 1
|
||||
and
|
||||
.Xr ntalkd 8
|
||||
are both examples of the latter type of
|
||||
datagram server.
|
||||
.Xr tftpd 8
|
||||
is an exception; it is a datagram server that establishes pseudo-connections.
|
||||
It must be listed as
|
||||
.Dq wait
|
||||
in order to avoid a race;
|
||||
the server reads the first packet, creates a new socket,
|
||||
and then forks and exits to allow
|
||||
.Nm
|
||||
to check for new service requests to spawn new servers.
|
||||
The optional
|
||||
.Dq max
|
||||
suffix (separated from
|
||||
.Dq wait
|
||||
or
|
||||
.Dq nowait
|
||||
by a dot or a colon) specifies the maximum number of server instances that may
|
||||
be spawned from
|
||||
.Nm
|
||||
within an interval of 60 seconds.
|
||||
When omitted,
|
||||
.Dq max
|
||||
defaults to 40.
|
||||
If it reaches this maximum spawn rate,
|
||||
.Nm
|
||||
will log the problem (via the syslogger using the
|
||||
.Dv LOG_DAEMON
|
||||
facility and
|
||||
.Dv LOG_ERR
|
||||
level)
|
||||
and stop handling the specific service for ten minutes.
|
||||
.Pp
|
||||
Stream servers are usually marked as
|
||||
.Dq nowait
|
||||
but if a single server process is to handle multiple connections, it may be
|
||||
marked as
|
||||
.Dq wait .
|
||||
The master socket will then be passed as fd 0 to the server, which will then
|
||||
need to accept the incoming connection.
|
||||
The server should eventually time
|
||||
out and exit when no more connections are active.
|
||||
.Nm
|
||||
will continue to
|
||||
listen on the master socket for connections, so the server should not close
|
||||
it when it exits.
|
||||
.Xr identd 8
|
||||
is usually the only stream server marked as wait.
|
||||
.Pp
|
||||
The
|
||||
.Em user
|
||||
entry should contain the user name of the user as whom the server should run.
|
||||
This allows for servers to be given less permission than root.
|
||||
Optionally, a group can be specified by appending a colon to the user name,
|
||||
followed by the group name (it is possible to use a dot (``.'') in lieu of a
|
||||
colon, however this feature is provided only for backward compatibility).
|
||||
This allows for servers to run with a different (primary) group id than
|
||||
specified in the password file.
|
||||
If a group is specified and
|
||||
.Em user
|
||||
is not root, the supplementary groups associated with that user will still be
|
||||
set.
|
||||
.Pp
|
||||
The
|
||||
.Em server-program
|
||||
entry should contain the pathname of the program which is to be
|
||||
executed by
|
||||
.Nm
|
||||
when a request is found on its socket.
|
||||
If
|
||||
.Nm
|
||||
provides this service internally, this entry should
|
||||
be
|
||||
.Dq internal .
|
||||
.Pp
|
||||
The
|
||||
.Em server program arguments
|
||||
should be just as arguments
|
||||
normally are, starting with argv[0], which is the name of
|
||||
the program.
|
||||
If the service is provided internally, the
|
||||
word
|
||||
.Dq internal
|
||||
should take the place of this entry.
|
||||
It is possible to quote an argument using either single or double quotes.
|
||||
This allows you to have, e.g., spaces in paths and parameters.
|
||||
.Ss Internal Services
|
||||
.Nm
|
||||
provides several
|
||||
.Qq trivial
|
||||
services internally by use of routines within itself.
|
||||
These services are
|
||||
.Qq echo ,
|
||||
.Qq discard ,
|
||||
.Qq chargen
|
||||
(character generator),
|
||||
.Qq daytime
|
||||
(human readable time), and
|
||||
.Qq time
|
||||
(machine readable time,
|
||||
in the form of the number of seconds since midnight, January 1, 1900 GMT).
|
||||
For details of these services, consult the appropriate
|
||||
.Tn RFC .
|
||||
.Pp
|
||||
TCP services without official port numbers can be handled with the
|
||||
RFC1078-based tcpmux internal service.
|
||||
TCPmux listens on port 1 for requests.
|
||||
When a connection is made from a foreign host, the service name
|
||||
requested is passed to TCPmux, which performs a lookup in the
|
||||
service name table provided by
|
||||
.Pa /etc/inetd.conf
|
||||
and returns the proper entry for the service.
|
||||
TCPmux returns a negative reply if the service doesn't exist,
|
||||
otherwise the invoked server is expected to return the positive
|
||||
reply if the service type in
|
||||
.Pa /etc/inetd.conf
|
||||
file has the prefix
|
||||
.Qq tcpmux/ .
|
||||
If the service type has the
|
||||
prefix
|
||||
.Qq tcpmux/+ ,
|
||||
TCPmux will return the positive reply for the
|
||||
process; this is for compatibility with older server code, and also
|
||||
allows you to invoke programs that use stdin/stdout without putting any
|
||||
special server code in them.
|
||||
Services that use TCPmux are
|
||||
.Qq nowait
|
||||
because they do not have a well-known port number and hence cannot listen
|
||||
for new requests.
|
||||
.Pp
|
||||
.Nm
|
||||
rereads its configuration file when it receives a hangup signal,
|
||||
.Dv SIGHUP .
|
||||
Services may be added, deleted or modified when the configuration file
|
||||
is reread.
|
||||
.Nm
|
||||
creates a file
|
||||
.Em /var/run/inetd.pid
|
||||
that contains its process identifier.
|
||||
.Ss libwrap
|
||||
Support for
|
||||
.Tn TCP
|
||||
wrappers is included with
|
||||
.Nm
|
||||
to provide internal tcpd-like access control functionality.
|
||||
An external tcpd program is not needed.
|
||||
You do not need to change the
|
||||
.Pa /etc/inetd.conf
|
||||
server-program entry to enable this capability.
|
||||
.Nm
|
||||
uses
|
||||
.Pa /etc/hosts.allow
|
||||
and
|
||||
.Pa /etc/hosts.deny
|
||||
for access control facility configurations, as described in
|
||||
.Xr hosts_access 5 .
|
||||
.Pp
|
||||
.Em Nota Bene :
|
||||
.Tn TCP
|
||||
wrappers do not affect/restrict
|
||||
.Tn UDP
|
||||
or internal services.
|
||||
.Ss IPsec
|
||||
The implementation includes a tiny hack to support IPsec policy settings for
|
||||
each socket.
|
||||
A special form of the comment line, starting with
|
||||
.Dq Li "#@" ,
|
||||
is used as a policy specifier.
|
||||
The content of the above comment line will be treated as a IPsec policy string,
|
||||
as described in
|
||||
.Xr ipsec_set_policy 3 .
|
||||
Multiple IPsec policy strings may be specified by using a semicolon
|
||||
as a separator.
|
||||
If conflicting policy strings are found in a single line,
|
||||
the last string will take effect.
|
||||
A
|
||||
.Li "#@"
|
||||
line affects all of the following lines in
|
||||
.Pa /etc/inetd.conf ,
|
||||
so you may want to reset the IPsec policy by using a comment line containing
|
||||
only
|
||||
.Li "#@"
|
||||
.Pq with no policy string .
|
||||
.Pp
|
||||
If an invalid IPsec policy string appears in
|
||||
.Pa /etc/inetd.conf ,
|
||||
.Nm
|
||||
logs an error message using
|
||||
.Xr syslog 3
|
||||
and terminates itself.
|
||||
.Ss IPv6 TCP/UDP behavior
|
||||
If you wish to run a server for both IPv4 and IPv6 traffic,
|
||||
you will need to run two separate processes for the same server program,
|
||||
specified as two separate lines in
|
||||
.Pa /etc/inetd.conf
|
||||
using
|
||||
.Dq tcp4
|
||||
and
|
||||
.Dq tcp6
|
||||
respectively.
|
||||
Plain
|
||||
.Dq tcp
|
||||
means TCP on top of the current default IP version,
|
||||
which is, at this moment, IPv4.
|
||||
.Pp
|
||||
Under various combination of IPv4/v6 daemon settings,
|
||||
.Nm
|
||||
will behave as follows:
|
||||
.Bl -bullet -compact
|
||||
.It
|
||||
If you have only one server on
|
||||
.Dq tcp4 ,
|
||||
IPv4 traffic will be routed to the server.
|
||||
IPv6 traffic will not be accepted.
|
||||
.It
|
||||
If you have two servers on
|
||||
.Dq tcp4
|
||||
and
|
||||
.Dq tcp6 ,
|
||||
IPv4 traffic will be routed to the server on
|
||||
.Dq tcp4 ,
|
||||
and IPv6 traffic will go to server on
|
||||
.Dq tcp6 .
|
||||
.It
|
||||
If you have only one server on
|
||||
.Dq tcp6 ,
|
||||
only IPv6 traffic will be routed to the server.
|
||||
The kernel may route to the server IPv4 traffic as well,
|
||||
under certain configuration.
|
||||
See
|
||||
.Xr ip6 4
|
||||
for details.
|
||||
.El
|
||||
.Sh FILES
|
||||
.Bl -tag -width /etc/hosts.allow -compact
|
||||
.It Pa /etc/inetd.conf
|
||||
configuration file for all
|
||||
.Nm
|
||||
provided services
|
||||
.It Pa /etc/services
|
||||
service name to protocol and port number mappings.
|
||||
.It Pa /etc/protocols
|
||||
protocol name to protocol number mappings
|
||||
.It Pa /etc/rpc
|
||||
.Tn Sun-RPC
|
||||
service name to service number mappings.
|
||||
.It Pa /etc/hosts.allow
|
||||
explicit remote host access list.
|
||||
.It Pa /etc/hosts.deny
|
||||
explicit remote host denial of service list.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr hosts_access 5 ,
|
||||
.Xr hosts_options 5 ,
|
||||
.Xr protocols 5 ,
|
||||
.Xr rpc 5 ,
|
||||
.Xr services 5 ,
|
||||
.Xr comsat 8 ,
|
||||
.Xr fingerd 8 ,
|
||||
.Xr ftpd 8 ,
|
||||
.Xr rexecd 8 ,
|
||||
.Xr rlogind 8 ,
|
||||
.Xr rshd 8 ,
|
||||
.Xr telnetd 8 ,
|
||||
.Xr tftpd 8
|
||||
.Rs
|
||||
.%A J. Postel
|
||||
.%R RFC
|
||||
.%N 862
|
||||
.%D May 1983
|
||||
.%T "Echo Protocol"
|
||||
.Re
|
||||
.Rs
|
||||
.%A J. Postel
|
||||
.%R RFC
|
||||
.%N 863
|
||||
.%D May 1983
|
||||
.%T "Discard Protocol"
|
||||
.Re
|
||||
.Rs
|
||||
.%A J. Postel
|
||||
.%R RFC
|
||||
.%N 864
|
||||
.%D May 1983
|
||||
.%T "Character Generator Protocol"
|
||||
.Re
|
||||
.Rs
|
||||
.%A J. Postel
|
||||
.%R RFC
|
||||
.%N 867
|
||||
.%D May 1983
|
||||
.%T "Daytime Protocol"
|
||||
.Re
|
||||
.Rs
|
||||
.%A J. Postel
|
||||
.%A K. Harrenstien
|
||||
.%R RFC
|
||||
.%N 868
|
||||
.%D May 1983
|
||||
.%T "Time Protocol"
|
||||
.Re
|
||||
.Rs
|
||||
.%A M. Lottor
|
||||
.%R RFC
|
||||
.%N 1078
|
||||
.%D November 1988
|
||||
.%T "TCP port service Multiplexer (TCPMUX)"
|
||||
.Re
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
command appeared in
|
||||
.Bx 4.3 .
|
||||
Support for
|
||||
.Em Sun-RPC
|
||||
based services is modeled after that
|
||||
provided by SunOS 4.1.
|
||||
Support for specifying the socket buffer sizes was added in
|
||||
.Nx 1.4 .
|
||||
In November 1996, libwrap support was added to provide
|
||||
internal tcpd-like access control functionality;
|
||||
libwrap is based on Wietse Venema's tcp_wrappers.
|
||||
IPv6 support and IPsec hack was made by KAME project, in 1999.
|
||||
.Sh BUGS
|
||||
Host address specifiers, while they make conceptual sense for RPC
|
||||
services, do not work entirely correctly.
|
||||
This is largely because the portmapper interface does not provide
|
||||
a way to register different ports for the same service on different
|
||||
local addresses.
|
||||
Provided you never have more than one entry for a given RPC service,
|
||||
everything should work correctly (Note that default host address
|
||||
specifiers do apply to RPC lines with no explicit specifier.)
|
||||
.Pp
|
||||
.Dq tcpmux
|
||||
on IPv6 is not tested enough.
|
||||
.Sh SECURITY CONSIDERATIONS
|
||||
Enabling the
|
||||
.Dq echo ,
|
||||
.Dq discard ,
|
||||
and
|
||||
.Dq chargen
|
||||
built-in trivial services is not recommended because remote
|
||||
users may abuse these to cause a denial of network service to
|
||||
or from the local host.
|
2383
usr.sbin/inetd/inetd.c
Normal file
2383
usr.sbin/inetd/inetd.c
Normal file
File diff suppressed because it is too large
Load Diff
159
usr.sbin/inetd/ipsec.c
Normal file
159
usr.sbin/inetd/ipsec.c
Normal file
@ -0,0 +1,159 @@
|
||||
/* $NetBSD: ipsec.c,v 1.4 2012/01/04 16:09:43 drochner Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (C) 1999 WIDE Project.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the project nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/socket.h>
|
||||
|
||||
#include <netinet/in.h>
|
||||
#include <arpa/inet.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#ifdef IPSEC
|
||||
#include <netipsec/ipsec.h>
|
||||
#ifndef IPSEC_POLICY_IPSEC /* no ipsec support on old ipsec */
|
||||
#undef IPSEC
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include "ipsec.h"
|
||||
|
||||
#ifdef IPSEC
|
||||
int
|
||||
ipsecsetup(int af, int fd, const char *policy)
|
||||
{
|
||||
char *p0, *p;
|
||||
int error;
|
||||
|
||||
if (!policy || policy == '\0')
|
||||
p0 = p = strdup("in entrust; out entrust");
|
||||
else
|
||||
p0 = p = strdup(policy);
|
||||
|
||||
error = 0;
|
||||
for (;;) {
|
||||
p = strtok(p, ";");
|
||||
if (p == NULL)
|
||||
break;
|
||||
while (*p && isspace((unsigned char)*p))
|
||||
p++;
|
||||
if (!*p) {
|
||||
p = NULL;
|
||||
continue;
|
||||
}
|
||||
error = ipsecsetup0(af, fd, p, 1);
|
||||
if (error < 0)
|
||||
break;
|
||||
p = NULL;
|
||||
}
|
||||
|
||||
free(p0);
|
||||
return error;
|
||||
}
|
||||
|
||||
int
|
||||
ipsecsetup_test(const char *policy)
|
||||
{
|
||||
char *p0, *p;
|
||||
char *buf;
|
||||
int error;
|
||||
|
||||
if (!policy)
|
||||
return -1;
|
||||
p0 = p = strdup(policy);
|
||||
if (p == NULL)
|
||||
return -1;
|
||||
|
||||
error = 0;
|
||||
for (;;) {
|
||||
p = strtok(p, ";");
|
||||
if (p == NULL)
|
||||
break;
|
||||
while (*p && isspace((unsigned char)*p))
|
||||
p++;
|
||||
if (!*p) {
|
||||
p = NULL;
|
||||
continue;
|
||||
}
|
||||
buf = ipsec_set_policy(p, (int)strlen(p));
|
||||
if (buf == NULL) {
|
||||
error = -1;
|
||||
break;
|
||||
}
|
||||
free(buf);
|
||||
p = NULL;
|
||||
}
|
||||
|
||||
free(p0);
|
||||
return error;
|
||||
}
|
||||
|
||||
int
|
||||
ipsecsetup0(int af, int fd, const char *policy, int commit)
|
||||
{
|
||||
int level;
|
||||
int opt;
|
||||
char *buf;
|
||||
int error;
|
||||
|
||||
switch (af) {
|
||||
case AF_INET:
|
||||
level = IPPROTO_IP;
|
||||
opt = IP_IPSEC_POLICY;
|
||||
break;
|
||||
#ifdef INET6
|
||||
case AF_INET6:
|
||||
level = IPPROTO_IPV6;
|
||||
opt = IPV6_IPSEC_POLICY;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
|
||||
buf = ipsec_set_policy(policy, (int)strlen(policy));
|
||||
if (buf != NULL) {
|
||||
error = 0;
|
||||
if (commit && setsockopt(fd, level, opt,
|
||||
buf, (socklen_t)ipsec_get_policylen(buf)) < 0) {
|
||||
error = -1;
|
||||
}
|
||||
free(buf);
|
||||
} else
|
||||
error = -1;
|
||||
return error;
|
||||
}
|
||||
#endif
|
34
usr.sbin/inetd/ipsec.h
Normal file
34
usr.sbin/inetd/ipsec.h
Normal file
@ -0,0 +1,34 @@
|
||||
/* $NetBSD: ipsec.h,v 1.1 2000/01/31 14:28:20 itojun Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (C) 1999 WIDE Project.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the project nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
extern int ipsecsetup __P((int, int, const char *));
|
||||
extern int ipsecsetup_test __P((const char *));
|
||||
extern int ipsecsetup0 __P((int, int, const char *, int));
|
36
usr.sbin/inetd/pathnames.h
Normal file
36
usr.sbin/inetd/pathnames.h
Normal file
@ -0,0 +1,36 @@
|
||||
/* $NetBSD: pathnames.h,v 1.7 2003/08/07 11:25:22 agc Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1989 The Regents of the University of California.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of the University nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* from: @(#)pathnames.h 8.1 (Berkeley) 6/6/93
|
||||
*/
|
||||
|
||||
#include <paths.h>
|
||||
|
||||
#define _PATH_INETDCONF "/etc/inetd.conf"
|
Loading…
x
Reference in New Issue
Block a user