strcf(4) strcf(4)
NAME
strcf - STREAMS Configuration File for STREAMS TCP/IP
DESCRIPTION
/etc/strcf contains scripts that are executed by slink(1M) in order to
link the STREAMS modules and drivers required for STREAMS TCP/IP.
One of these scripts is boot. The boot function contains the standard
configuration and is executed by slink immediately after the latter
has been started. Normally, this is the only script that has to be
executed to customize the configuration for a given system. In some
cases, however, it may be necessary to modify the other scripts
defined in /etc/inet/strfc or even to add new scripts.
The following functions perform basic linking operations:
The tp function is used to set up the link between a transport facil-
ity, such as TCP, and IP.
#
# tp - configure transport provider
# (i.e. tcp, udp, icmp)
# usage: tp devname
#
tp {
p = open $1
ip = open /dev/ip
link p ip
}
The linkint function links the specified STREAMS and performs a sif-
name operation with the given name.
#
# linkint - link interface to ip or arp
# usage: linkint top bottom ifname
#
linkint {
x = link $1 $2
sifname $1 x $3
}
Page 1 Reliant UNIX 5.44 Printed 11/98
strcf(4) strcf(4)
The aplinkint function performs the same function as linkint for an
interface that uses the app module.
#
# aplinkint - like linkint, but app is pushed on dev
# usage: aplinkint top bottom ifname
#
aplinkint {
push $2 app
linkint $1 $2 $3
}
The following functions are used to configure different types of Eth-
ernet interfaces:
The uenet function is used to configure an Ethernet interface for a
cloning device driver that uses the unit select ioctl to select the
desired interface. The interface name is constructed by concatenating
the supplied prefix and the unit number.
#
# uenet - configure ethernet-type interface for cloning driver
# using unit select
# usage: uenet ip-fd devname ifprefix unit
#
uenet {
ifname = strcat $3 $4
dev = open $2
unitsel dev $4
aplinkint $1 dev ifname
dev = open $2
unitsel dev $4
arp = open /dev/arp
linkint arp dev ifname
}
Page 2 Reliant UNIX 5.44 Printed 11/98
strcf(4) strcf(4)
The denet function performs the same function as uenet, except that
DLATTACH is used instead of unit select.
#
# denet - configure ethernet-type interface for cloning driver
# using DLATTACH
# usage: denet ip-fd devname ifprefix unit
#
denet {
ifname = strcat $3 $4
dev = open $2
dlattach dev $4
aplinkint $1 dev ifname
dev = open $2
dlattach dev $4
arp = open /dev/arp
linkint arp dev ifname
}
The cenet function is used to configure an Ethernet interface for a
cloning device driver that uses a different major number for each
interface. The device name is formed by concatenating the supplied
device name prefix and the unit number. The interface name is formed
in a similar manner using the interface name prefix.
#
# cenet - configure ethernet-type interface for cloning driver
# with one major per interface
# usage: cenet ip-fd devprefix ifprefix unit
#
cenet {
devname = strcat $2 $4
ifname = strcat $3 $4
dev = open devname
aplinkint $1 dev ifname
dev = open devname
arp = open /dev/arp
linkint arp dev ifname
}
Page 3 Reliant UNIX 5.44 Printed 11/98
strcf(4) strcf(4)
The senet function is used to configure an Ethernet interface for a
non-cloning device driver. Two different device nodes must be speci-
fied for IP and ARP.
#
# senet - configure ethernet-type interface for
# non-cloning driver
# usage: senet ip-fd ipdevname arpdevname ifname
#
senet {
dev = open $2
aplinkint $1 dev $4
dev = open $3
arp = open /dev/arp
linkint arp dev $4
}
The senetc function is like senet, except that it allows the specifi-
cation of a convergence module to be used with the ethernet driver
(such as, for the 3B2 emd driver).
#
# senetc - configure ethernet-type interface for non-cloning
# driver using convergence module
# usage: senetc ip-fd convergence ipdevname arpdevname ifname
#
senetc {
dev = open $3
push dev $2
aplinkint $1 dev $5
dev = open $4
push dev $2
arp = open /dev/arp
linkint arp dev $5
}
The loopback function is used to configure the loopback interface.
#
# loopback - configure loopback device
# usage: loopback ip-fd
#
loopback {
dev = open /dev/loop
linkint $1 dev lo0
}
Page 4 Reliant UNIX 5.44 Printed 11/98
strcf(4) strcf(4)
The slip function is used to configure a SLIP interface. This function
is not normally executed at boot time. Rather, the slattach(1M) com-
mand runs slink specifying slip on the command line.
#
# slip - configure slip interface
# usage: slip unit
#
slip {
ip = open /dev/ip
s = open /dev/slip
ifname = strcat sl $1
unitsel s $1
linkint ip s ifname
}
The boot function is called by default when slink is executed. Nor-
mally, only the interfaces section and possibly the queue params sec-
tion will have to be customized for a given system. Examples are pro-
vided for the various Ethernet driver types.
#
# boot - configuration at system start
#
boot {
#
# queue params
#
initqp /dev/udp rq 8192 40960
initqp /dev/ip muxrq 8192 40960 rq 8192 40960
#
# transport
#
tp /dev/tcp
tp /dev/udp
tp /dev/icmp
tp /dev/rawip
}
FILES
/etc/strcf
SEE ALSO
slattach(1M), slink(1M).
Page 5 Reliant UNIX 5.44 Printed 11/98