ifnet(7)ifnet(7)NAMEifnet - STREAMS ifnet module for bridging STREAMS device drivers to
sockets
SYNOPSIS
#include <sys/stropts.h> #define PIFNET_IOCTL_UNIT 1236
int ioctl(
type fildes,
type command,
type arg ); int fildes, command;
DESCRIPTIONifnet is a STREAMS-based module that provides a bridge between STREAMS-
based device drivers written to the Data Link Provider Interface (DLPI)
and sockets. By using ifnet, STREAMS-based DLPI device drivers can
work with TCP/IP, or any other networking protocols, implemented using
sockets.
An application pushes the ifnet module onto a Stream opened to the
device driver. The application must then send an I_STR ioctl with a
command of IFNET_IOCTL_UNIT to notify ifnet of the driver's unit num‐
ber. It must then send a DL_BIND_REQ downstream to bind the appropriate
protocol.
Once the Stream or Streams are set up, the application has no work to
do but must stay around to keep the Streams alive. This can be done
with the pause(3) function.
EXAMPLES
The following example illustrates how to send an I_STR ioctl with a
command of IFNET_IOCTL_UNIT to notify ifnet of the driver's unit num‐
ber.
struct strioctl str; int unit;
.
.
. str.ic_cmd = IFNET_IOCTL_UNIT; str.ic_dp = &unit; /* unit number
of device */ ioctl(fd, I_STR, &str);
SEE ALSO
Commands: pause(3)
Network Programmer's Guide
ifnet(7)