xna(4) Kernel Interfaces Manual xna(4)Name
xna - DEBNI and DEMNA Ethernet interfaces
Syntax
device xna0 at vaxbi? node? vector xnaintr (DEBNI)
device xna0 at xmi? node? vector xnaintr (DEMNA)
Description
The driver provides access to a 10 Mbytes Ethernet network through the DEBNI and DEMNA adapters. The DEBNI is an Ethernet to BI bus. The
DEMNA is an Ethernet to XMI adapter.
The host's Internet address is specified at boot time with an SIOCSIFADDR ioctl. The driver employs the Address Resolution Protocol, as
described in to map dynamically between Internet and Ethernet addresses on the local network.
The driver normally tries to use a trailer encapsulation to minimize copying data on input and output. This can be disabled for an inter-
face by setting the IFF_NOTRAILERS flag with an SIOCSIFFLAGS ioctl. Trailers are used only for packets destined for Internet hosts.
The SIOCSPHYSADDR ioctl can be used to change the physical address of the adapter and SIOCRPHYSADDR can be used to read its physical
address. SIOCADDMULTI and SIOCDELMULTI can be used to add or delete multicast addresses. The driver supports a maximum of 12 multicast
addresses. The argument to the latter ioctls is a pointer to an ``ifreq'' structure found in
SIOCRDCTRS and SIOCRDZCTRS ioctls can be used to read or read and clear network counters. The argument to the latter two ioctls is a
pointer to a counter structure ``ctrreq'' found in
The ioctls SIOCENABLBACK and SIOCDISABLBACK can be used to enable and disable the interface loopback mode.
Restrictions
The PUP protocol family is not supported.
Diagnostics
xna%d: port self-test failed:<register list>
Adapter did not pass the power-up self-test during autoconfiguration time. The port attachment fails.
xna%d: couldn't allocate...
The driver was unable to allocate memory for adapter data structures. The port attachment fails.
xna%d: port probe failed:<register list>
The driver was unable to bring the adapter into the initialized state. The port attachment fails.
xna%d: port init failed:<register list>
The driver failed to prepare the adapter for runtime use.
xna%d: port state changed, resetting:<register list>
The adapter issued a port state change interrupt. The port state is reset.
xna%d: port reset failed
The driver was unable to bring the adapter into the initialized state during a port reset.
xna%d: command failed, error code:<error code>
The adapter port command failed. The error code gives reason for failure.
xna%d: couldn't handle af%d
A packet with an undefined protocol type has been sent to the adapter.
xna%d: addmulti failed, multicast list full
Too many multicast requests have been made.
See Alsoarp(4p), inet(4f), intro(4n)xna(4)
Check Out this Related Man Page
xna(7) Miscellaneous Information Manual xna(7)NAME
xna - The DEMNA Ethernet interfaces
SYNOPSIS
config_driver xna
DESCRIPTION
The xna driver provides access to a 10-MB Ethernet network through the DEMNA adapter. The DEMNA is an Ethernet-to-XMI adapter.
The host's Internet address is specified at boot time with an SIOCSIFADDR ioctl. The xna driver employs the Address Resolution Protocol,
as described in arp(7), to map dynamically between Internet and Ethernet addresses on the local network.
The SIOCSPHYSADDR ioctl can be used to change the physical address of the adapter and SIOCRPHYSADDR can be used to read its physical
address. SIOCADDMULTI and SIOCDELMULTI can be used to add or delete multicast addresses. The xna driver supports a maximum of 12 multi-
cast addresses. The argument to the latter ioctls is a pointer to an ``ifreq'' structure found in <net/if.h>.
SIOCRDCTRS and SIOCRDZCTRS ioctls can be used to read or read and clear network counters. The argument to the latter two ioctls is a
pointer to a counter structure ``ctrreq'' found in <net/if.h>.
The ioctls SIOCENABLBACK and SIOCDISABLBACK can be used to enable and disable the interface loopback mode.
RESTRICTIONS
The PUP protocol family is not supported.
EXAMPLES
To obtain the physical address of the adapter, use the SIOCRPHYSADDR ioctl as in the following program example: #include <stdio.h>
/* standard I/O */ #include <errno.h> /* error numbers */ #include <sys/socket.h> /* socket definitions */ #include
<sys/ioctl.h> /* ioctls */ #include <net/if.h> /* generic interface structures */
main() {
int s,i;
static struct ifdevea devea;
/* Get a socket */
s = socket(AF_INET,SOCK_DGRAM,0);
if (s < 0) {
perror("socket");
exit(1);
}
strcpy(devea.ifr_name,"xna0");
if (ioctl(s,SIOCRPHYSADDR,&devea) < 0) {
perror(&devea.ifr_name[0]);
exit(1);
}
printf("Address is ");
for (i = 0; i < 6; i++)
printf("%X ", devea.default_pa[i] & 0xff);
printf("
");
close(s); }
To enable external loopback, use the SIOCENABLEBACK ioctl as in the following program example: #include <stdio.h> /* standard
I/O */ #include <errno.h> /* error numbers */ #include <sys/socket.h> /* socket definitions */ #include <sys/ioctl.h>
/* ioctls */ #include <net/if.h> /* generic interface structures */
main() {
int s;
struct ifreq data;
/* Get a socket */
s = socket(AF_INET,SOCK_DGRAM,0);
if (s < 0) {
perror("socket");
exit(1);
}
strcpy(data.ifr_name,"xna0");
if (ioctl(s,SIOCENABLEBACK,&data) < 0) {
perror("SIOCENABLEBACK:");
exit(1);
}
close(s); }
ERRORS
The DEMNA errors are coded as follows: Adapter did not pass the power-up self-test during autoconfiguration time. The port attachment
fails. The xna driver was unable to allocate memory for adapter data structures. The port attachment fails. The xna driver was unable to
map memory for adapter data structures. The port attachment fails. The xna driver was unable to bring the adapter into the initialized
state. The port attachment fails. The xna driver failed to prepare the adapter for run-time use. The xna driver was unable to bring the
adapter into the initialized state during a port reset. The adapter port command failed. The error code gives reason for failure. Too
many multicast requests have been made.
RELATED INFORMATION
Files: arp(7), inet(7), intro(4), netstat(1) delim off
xna(7)