term% cat index.txt LANCE(3) Library Functions Manual LANCE(3)
NAME
lance - LANCE Ethernet device
SYNOPSIS
bind -a #l /net
/net/ether/clone
/net/ether/[0-7]
/net/ether/[0-7]/data
/net/ether/[0-7]/ctl
/net/ether/[0-7]/stats
/net/ether/[0-7]/type
DESCRIPTION
The LANCE Ethernet interface is a directory containing 9 stream direc‐
tories: one for each of 8 Ethernet packet types and a clone file.
Each stream directory contains files to control the stream, receive and
send data, and supply statistics. Incoming Ethernet packets are demul‐
tiplexed by packet type and passed up the corresponding open stream.
Reading from the data file reads packets at the head of the stream. A
read will terminate at packet boundaries. Each write to the data file
causes a packet to be sent. The Ethernet address of the interface is
inserted into the packet header as the source address.
A stream is assigned a packet type by opening its ctl file and writing
connect n where n is a decimal integer constant identifying the Ether‐
net packet type. A value of -1 stands for all types. If multiple
streams are assigned to a given packet type a copy of the packet is
passed up each stream.
Reading the type file returns the decimal value of the assigned Ether‐
net packet type. Reading the stats file returns status information and
the Ethernet address of the interface.
An interface normally receives only packets whose destination address
is that of the interface or is the broadcast address,
ff:ff:ff:ff:ff:ff. The interface can be made to receive all packets on
the network by writing the string promiscuous to the ctl file. The in‐
terface remains promiscuous until the control file is closed. The ex‐
tra packets are passed up only streams of type -1.
SOURCE
/sys/src/9/port/devlance.c
LANCE(3)