Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ICMP(4)			 BSD Kernel Interfaces Manual		       ICMP(4)

NAME
     icmp -- Internet Control Message Protocol

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

     int
     socket(AF_INET, SOCK_RAW, proto);

DESCRIPTION
     ICMP is the error and control message protocol used by IP and the Inter-
     net protocol family.  It may be accessed through a	"raw socket" for net-
     work monitoring and diagnostic functions.	The proto parameter to the
     socket call to create an ICMP socket is obtained from getprotobyname(3).
     ICMP sockets are connectionless, and are normally used with the sendto(2)
     and recvfrom(2) calls, though the connect(2) call may also	be used	to fix
     the destination for future	packets	(in which case the read(2) or recv(2)
     and write(2) or send(2) system calls may be used).

     Outgoing packets automatically have an IP header prepended	to them	(based
     on	the destination	address).  Incoming packets are	received with the IP
     header and	options	intact.

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

     [EISCONN]	      when trying to establish a connection on a socket	which
		      already has one, or when trying to send a	datagram with
		      the destination address specified	and the	socket is al-
		      ready connected;

     [ENOTCONN]	      when trying to send a datagram, but no destination ad-
		      dress is specified, and the socket hasn't	been con-
		      nected;

     [ENOBUFS]	      when the system runs out of memory for an	internal data
		      structure;

     [EADDRNOTAVAIL]  when an attempt is made to create	a socket with a	net-
		      work address for which no	network	interface exists.

SEE ALSO
     recv(2), send(2), inet(4),	intro(4), ip(4)

     Internet Control Message Protocol,	RFC, 792, September 1981.

     Requirements for Internet Hosts --	Communication Layers, RFC, 1122,
     October 1989.

HISTORY
     The icmp protocol appeared	in 4.3BSD.

BSD				 June 5, 1993				   BSD

NAME | SYNOPSIS | DESCRIPTION | DIAGNOSTICS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=icmp&sektion=4&manpath=NetBSD+6.0>

home | help