ICMP6(7P)ICMP6(7P)NAMEicmp6 - Internet Control Message Protocol
SYNOPSIS
#include <sys/socket.h>
#include <netinet/in.h>
s = socket(AF_INET6, SOCK_RAW, proto);
DESCRIPTION
ICMP6 is the error and control message protocol used by version 6 of 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 ICMP6 socket is obtained from
getprotobyname(3N). ICMP6 sockets are connectionless, and are normally
used with the sendto and recvfrom or sendmsg and recvmsg 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 IPv6 header prepended to them.
The IPv6 header and extension headers of the incoming packets are
available only as ancillary data in the msghdr argument of recvmsg(2).
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
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 ALSOsend(2), recv(2), sendmsg(2), recvmsg(2), intro(3), inet6(7F), ip6(7P)
Page 1