Visit Our UNIX and Linux User Community

Linux and UNIX Man Pages

Test Your Knowledge in Computers #367
Difficulty: Medium
The Single UNIX Specification specifies vi, so every conforming UNIX system must have it.
True or False?
Linux & Unix Commands - Search Man Pages

icmp(4p) [bsd man page]

ICMP(4P)																  ICMP(4P)

NAME
icmp - Internet Control Message Protocol SYNOPSIS
#include <sys/socket.h> #include <netinet/in.h> s = socket(AF_INET, SOCK_RAW, proto); DESCRIPTION
ICMP is the error and control message protocol used by IP and the Internet protocol family. It may be accessed through a "raw socket" for network monitoring and diagnostic functions. The proto parameter to the socket call to create an ICMP socket is obtained from getprotoby- name(3N). ICMP sockets are connectionless, and are normally used with the sendto and recvfrom 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 destina- tion address specified and the socket is already connected; [ENOTCONN] when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; [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 network address for which no network interface exists. SEE ALSO
send(2), recv(2), intro(4N), inet(4F), ip(4P) 4.3 Berkeley Distribution May 16, 1986 ICMP(4P)

Check Out this Related Man Page

icmp(7) 						 Miscellaneous Information Manual						   icmp(7)

NAME
icmp - Internet Control Message Protocol SYNOPSIS
#include <sys/socket.h> #include <netinet/in.h> The following is the socket call for sockets using the IPv4 address format: s = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP); The following is the socket call for sockets using the IPv6 address format: s = socket(AF_INET6, SOCK_RAW, IPPROTO_ICMPV6); DESCRIPTION
The Internet Control Message Protocol (ICMP) is the error and control message protocol used by the Internet Protocol (IP) and the Internet Protocol family. It may be accessed through a raw socket for network monitoring and diagnostic functions. ICMP sockets are connection- less, and are normally used with the sendto() and recvfrom() functions. The connect() function may also be used to fix the destination for future packets, in which case the read() or recv() and write() or send() functions 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. ERRORS
If a socket operation fails, errno may be set to one of the following values: The socket is already connected. This error occurs when try- ing to establish connection on a socket or when trying to send a datagram with the destination address specified. The destination address of a datagram was not specified, and the socket has not been connected. The system ran out of memory for an internal data structure. An attempt was made to create a socket with a network address for which no network interface exists. RELATED INFORMATION
Functions: send(2), recv(2) Files: netintro(7), inet(7), ip(7) RFC 792, "Internet Control Message Protocol" RFC 2463, "Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6)" delim off icmp(7)

15 More Discussions You Might Find Interesting

1. Programming

Addressing UDP datagrams in UNIX

I am having troble to send a UNIX datagram to a NT machine. I didn`t realize yet how to define the destination address on the sendto() function call.Simply writing "xxx.zz.yy.pp" for the IP and xxxx for the socket doesn´t work!!! Can anyone help me with that? Thanks (4 Replies)
Discussion started by: psilva
4 Replies

2. IP Networking

set the source IP address to zero

Hi, does anybody know how to set the IP source address of an IP packet to be zero? The problem is that when you create a raw socket and set the IP_HDRINCL socket option, if you put the ip_src address to zero (INADDR_ANY) the kernel will automatically set the source address to the primary IP address... (2 Replies)
Discussion started by: developer
2 Replies

3. IP Networking

socket address

Could anyone tell me please: -what the socket number of a network computer is? -How it is related to the IP address? -And how can I obtain this information from my work station? :D (2 Replies)
Discussion started by: fishman2001
2 Replies

4. Linux

Linux and ICMP timestamp requests.

Hi There, I am looking to disable ICMP timestamp requests and ICMP timestamp replies on my Linux server version 8. Can someone please tell me the simplest way to do this? I know a command to disable all ICMP traffic but this I have been told will cause many network problems which I... (2 Replies)
Discussion started by: gerwhelan
2 Replies

5. UNIX for Advanced & Expert Users

ICMP Echo-Request

Hello! I'm in extra urgent need to have a program that sends a series of ICMP echo requests over the network to a specified host and waits until the last echo reply is received. I know little about socket-programming (in particular I've never dealt with icmp sockets) that's why i'm desperate!! :)... (5 Replies)
Discussion started by: ilmora
5 Replies

6. IP Networking

Is is possible!!!

Dear All, Iam new to this forum.I got a new work in Automatic call testing,where we will be passing some inputs to the system(PC-with PBX),which should automatically connect to the destination PC-with PBX and pass the input to it.I have tried the protocols and found that SIP will be the feasible... (2 Replies)
Discussion started by: cskumar
2 Replies

7. Programming

UDP socket - can both client and server recv and send

Hi, Am very new to socket programming. When we use UDP sockets to communicate between two processess, will both the client/server socket be able to send/recv ? meaning can sendto()/ recvfrom() be used on both server and client? It could be useful even if anybody provide some link on socket... (1 Reply)
Discussion started by: rvan
1 Replies

8. UNIX for Advanced & Expert Users

how to analyse the contents of a give IP packet?

hi you all! I can write a network program to send and receive some messages. I use read() and write() functions for extracting of sending messages via a given socket. By doing so, i know only the actions performed at the application layer of the TCP/IP suite. But i want to control the actual... (2 Replies)
Discussion started by: solomonml
2 Replies

9. IP Networking

Problem Receiving the first OSPF packet

I trying to send and receive OSPF packets. I am using RAW Sockets(socket(AF_INET, SOCK_RAW, IPPROTO_OSPF)) to do this. I am successfully able to send an OSPF Hello packet however I am not able to receive a OSPF packet if I have not sent an OSPF packet earlier on the RAW SOCKET. Scenario: ... (3 Replies)
Discussion started by: cosmic_egg
3 Replies

10. UNIX for Advanced & Expert Users

socket programming

can we send udp message to a destination ip address .. without having an ip address configured in our machine using recvfrom ? (2 Replies)
Discussion started by: Gopi Krishna P
2 Replies

11. IP Networking

write() / read() syntax

hi am newbie to unix and socket programing I am trying to figuring out syntax for read and write to send data from server to client and client can read it I have to send two integers write(newsockfd,buffer,"%d %d",x,y,0) writing from client where x and y are two integers.. ... (7 Replies)
Discussion started by: karthik1238
7 Replies

12. Programming

Socket and select

I have created two sockets and binded both. My requirement is that 2nd socket must send/ recv data only on expiration of timeval(tv). but the 1st socket must keep on send/recv the data without waiting for the 2nd socket completion...... I have posted my code below...... In this code the 2nd... (3 Replies)
Discussion started by: naresh046
3 Replies

13. Programming

Machine dependent problems when using Sockets.

I am trying to write code for a client-server scenario using AF_INET sockets.. As is usually the case, everything works fine and dandy on my machine, but gives me the following error at runtime: send: Socket operation on non-socket The error is thrown by the server when trying to send the... (5 Replies)
Discussion started by: ab_tall
5 Replies

14. Programming

read from socket

hello I have a C program and I want to read data from a socket ,and especially I want a client to send a .jpg to the server.The problem I face is that no matter what the size of the photo is,my read command seems to read an amount of data and then does nothing. while(1){ ... (4 Replies)
Discussion started by: vlm
4 Replies

15. UNIX for Advanced & Expert Users

Ways to quickly check if you are connected to the internet while on an internal network

I need some help thinking of ways to quickly check if I am connected to the internet while on an internal network. I never lose connection to the internal network but for some annoying reason I lose the internet quite often. I don't get any errors or warnings. I usually find out that I have lost my... (2 Replies)
Discussion started by: cokedude
2 Replies

Featured Tech Videos