Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ udp(4spp) — mips UMIPS RISC/os 5.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

bfs(4spp)

bfsd(8spp)



CMC(4spp)          Systems Programmer's Manual          CMC(4spp)



NAME
     cmc - UDP/IP, ARP protocols on top of CMC ENP-10 ethernet
          controller

SYNOPSIS
     {
          "cmc",         cmcinit, cmcopen,
          cmcstrategy,  cmcclose,     cmcioctl,
          DTTYPECHAR,
          DTFSNONE,     "UDP/IP on CMC ethernet"
     }

DESCRIPTION
     Udp provides UDP/IP datagram service via an ENP-10 ethernet
     controller.  Udp also provides ARP internet address resolu-
     tion, but does not support internet routing or ip packet
     fragments.  Udp packets can be no larger than the ethernet
     maximum transfer unit, 1500 bytes.

     Udp normally formats packets for compatability with 4.2 BSD
     UNIX implementations.  4.3 BSD systems will also accept
     these packets.  Full UDP functionality with 4.3 BSD systems
     may be obtained by setting the prom monitor environment
     variable $UDPCKSUM non-zero.

     Udp is currently only used internally by the bfs(4spp) boot
     file server protocol, it is not configured for external use.

REGISTERS
     Udp supports two ethernet controllers with control registers
     in A24 supervisor address space.  Controller 0 has its con-
     trol registers based at 0xde0000, controller 1 has its con-
     trol registers based at 0xf00000.  The user may access cmc
     ethernet controllers with control registers based dif-
     ferently than these by specifying the controller number as
     the negative of the control register base.

IOCTLS
     Udp supports the following ioctl's:

   ioctl(fd, NIOCBIND, portnum)
     Bind this UDP connection to UDP port port_num.

   ioctl(fd, FIOCSCAN, 0)
     Scan the cmc ethernet controller for received packets and
     transfer any found to the socket buffer.

DIAGNOSTICS
     The following diagnostics are printed by the cmc driver:

     bad size in iob for cmc
          The constant IOB_INODE is incorrectly defined, seek out



                         Printed 1/6/92 standalone library Page 1





CMC(4spp)          Systems Programmer's Manual          CMC(4spp)



          an SPP guru.

     cmc bad controller number
          A controller number other than 0 or 1 was specified

     $netaddr not set or incorrect
          The prom monitor environment variable $netaddr was not
          set or is not in Internet standard "." format

     already bound
          An attempt was made to bind a connection that has
          already been bound to a UDP port

     out of socket buffers
          Too many simultaneous UDP connections

     socket not bound
          An attempt was made to do i/o over a UDP connection
          before the descriptor was bound to a UDP port with the
          NIOCBIND ioctl

     socket screw-up
          Internal error in the socket allocation code

     out of mbufs
          No message buffer was available to copy a packet to for
          transmission

     cmc bad function
          Internal error detected in cmc driver

     no cmc controller at 0x%x
          No cmc controller was found at address shown; con-
          troller either not in backplane, malfunctioning, or has
          incorrect switch settings

     cmc detected error on reset
          Cmc controller detected error during power-up tests

     timed out waiting for cmc to reset
          Cmc controller never indicated it was ready

     cmc application firmware failed
          Cmc application firmware never indicated it was ready

     cmc_output -- no space in mbuf
          Internal error, no space in mbuf for ethernet header

     cmc: recvd bad packet, stat %R
          Cmc received garbled packet

     ARP couldn't resolve network address



standalone library Page 2Printed 1/6/92





CMC(4spp)          Systems Programmer's Manual          CMC(4spp)



          Address resolution protocol failed to convert Internet
          address to physical ethernet address

     duplicate IP address!! set from ethernet address: %x
          Two nodes on network have same internet address

     The following error messages are only printed if the
     environment variable $VERBOSE is non-zero.

     ip hdr len error
          Received packet shorter than length of an ip header

     ip cksum error
          IP checksum failed

     ip len error
          Contents of length field in ip header shorter than ip
          header itself

     ip pkt len error
          Received packet shorter than length in ip header

     ip options error
          Received packet with unsupported ip options

     ip fragments error
          Received fragment ip packet

     cmc pkt len error
          ip length shorter than UDP length

     cmc cksum error
          UDP checksum failed

     cmc port error
          No bound UDP port found for received packet

     cmc sktbuf error
          No space in socket buffer for received packet

SEE ALSO
     bfs(4spp), bfsd(8spp)













                         Printed 1/6/92 standalone library Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026