Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ icmp(7) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

send(2)

getprotoent(3N)

recvfrom(3N)

routing(4)

inet(7)

ip(7)

ICMP(7)



ICMP(7)                DEVICES AND MODULES                ICMP(7)



NAME
     ICMP - Internet Control Message Protocol

SYNOPSIS
     #include <sys/socket.h>
     #include <netinet/in.h>
     #include <netinet/ipicmp.h>

     s = socket(AFINET, SOCKRAW, proto);

     t = topen("/dev/icmp", ORDWR);

DESCRIPTION
     ICMP is the error and control message protocol used  by  the
     Internet  protocol family.  It is used by the kernel to han-
     dle and report errors in protocol processing.  It  may  also
     be  accessed  by  programs using the socket interface or the
     Transport Level Interface (TLI) for network  monitoring  and
     diagnostic  functions.  When used with the socket interface,
     a raw socket type is used.  The protocol  number  for  ICMP,
     used  in  the  proto  parameter  to  the socket call, can be
     obtained from getprotobyname() [see getprotoent(3N)].   ICMP
     file  descriptors  and  sockets  are connectionless, and are
     normally used with  the  tsndudata  /  trcvudata  and  the
     sendto() / recvfrom() calls.

     Outgoing packets automatically  have  an  Internet  Protocol
     (IP)  header  prepended  to them.  Incoming packets are pro-
     vided to the user with the IP header and options intact.

     ICMP is an datagram protocol layered above IP.  It  is  used
     internally  by the protcol code for various purposes includ-
     ing  routing,  fault  isolation,  and  congestion   control.
     Receipt  of an ICMP redirect message will add a new entry in
     the routing table, or modify an existing one.  ICMP messages
     are routinely sent by the protocol code.  Received ICMP mes-
     sages may be reflected back to users of higher-level  proto-
     cols  such as TCP or UDP as error returns from system calls.
     A copy of all ICMP message received by the  system  is  pro-
     vided to every holder of an open ICMP socket or TLI descrip-
     tor.

SEE ALSO
     send(2),  getprotoent(3N),   recvfrom(3N),   trcvudata(3N),
     tsndudata(3N), routing(4), inet(7), ip(7).

     Postel, Jon,  Internet  Control  Message  Protocol  -  DARPA
     Internet  Program  Protocol  Specification, RFC 792, Network
     Information Center, SRI International, Menlo  Park,  Calif.,
     September 1981.





                                                                1





ICMP(7)                DEVICES AND MODULES                ICMP(7)



DIAGNOSTICS
     A socket operation may fail with one of the following errors
     returned:

     EISCONN             An attempt was made to establish a  con-
                         nection  on  a  socket which already has
                         one, or when trying to send  a  datagram
                         with  the  destination address specified
                         and the socket is already connected.

     ENOTCONN            An attempt was made to send a  datagram,
                         but no destination address is specified,
                         and the socket has not been connected.

     ENOBUFS             The system ran  out  of  memory  for  an
                         internal data structure.

     EADDRNOTAVAIL       An attempt was made to create  a  socket
                         with a network address for which no net-
                         work interface exists.

NOTES
     Replies to ICMP echo messages which are  source  routed  are
     not  sent  back  using inverted source routes, but rather go
     back through the normal routing mechanisms.






























                                                                2



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