Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ICMP(4p) — CX/UX 6.20

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sendto(2)

recvfrom(2)

getprotoent(3N)

inet(3N)

intro(4N)

ip(4P)



icmp(4P)                                                 icmp(4P)



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
     sendto(2), recvfrom(2), getprotoent(3N), trcvudata(3N),
     tsndudata(3N), inet(3N), intro(4N), ip(4P).
     CX/UX Networking Reference Manual

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

     EISCONN             An attempt was made to establish a



Page 1                                           CX/UX Networking





icmp(4P)                                                 icmp(4P)



                         connection 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.



































Page 2                                           CX/UX Networking



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