Content-type: text/html Man page of ln

ln

Section: Environments, Tables, and Troff Macros (7)
Index Return to Main Contents
 

NAME

ln - Lance Ethernet interface  

SYNOPSIS

controller ln0 at ibus? vector lnintr  

DESCRIPTION

The ln interface provides access to a 10 Mb/s Ethernet network through the Lance controller.

The host's Internet address is specified at boot time with an SIOCSIFADDR ioctl. The ln interface employs the address resolution protocol 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 Lance. The SIOCRPHYSADDR ioctl can be used to read the physical address of the Lance.

The SIOCADDMULTI and SIOCDELMULTI ioctls can be used to add or delete multicast addresses. The Lance recognizes a maximum of 12 multicast addresses.

The SIOCRDCTRS and SIOCRDZCTRS ioctls can be used to read or ``read and clear'' the Ethernet driver counters. The argument to these two ioctls is a pointer to a counter structure, ctrreq, found in <net/if.h>.

The SIOCENABLBACK and SIOCDISABLBACK ioctls can be used to enable and disable the interface loopback mode respectively.  

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,"ln0");
  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("\n");
  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,"ln0");
  if (ioctl(s,SIOCENABLEBACK,&data) < 0) {
     perror("SIOCENABLEBACK:");
     exit(1);
  }
  close(s); }  

ERRORS

The diagnostic error messages contain relevant information provided by the Lance. The interface was handed a message with addresses formatted in an unsuitable address family, and the packet was dropped. A memory parity error has occurred. The ln driver was unable to allocate memory for internal data structures. The ln driver was unable to initialize the network interface. Too many multicast requests have been made.  

RELATED INFORMATION

arp(7), inet(7), netintro(7) delim off


 

Index

NAME
SYNOPSIS
DESCRIPTION
EXAMPLES
ERRORS
RELATED INFORMATION

This document was created by man2html, using the manual pages.
Time: 02:40:19 GMT, October 02, 2010