2.11BSD/man/cat4/imp.0
IMP(4P) UNIX Programmer's Manual IMP(4P)
NAME
imp - IMP raw socket interface
SYNOPSIS
#include <sys/socket.h>
#include <netinet/in.h>
#include <netimp/if_imp.h>
s = socket(AF_IMPLINK, SOCK_RAW, proto);
DESCRIPTION
The raw imp socket provides direct access to the _i_m_p(4) net-
work interface. Users send packets through the interface
using the _s_e_n_d(2) calls, and receive packets with the
_r_e_c_v(2), calls. All outgoing packets must have an 1822 96-
bit leader on the front. Likewise, packets received by the
user will have this leader on the front. The 1822 leader
and the legal values for the various fields are defined in
the include file <_n_e_t_i_m_p/_i_f__i_m_p._h>. The raw imp interface
automatically installs the length and destination address in
the 1822 leader of all outgoing packets; these need not be
filled in by the user.
If the protocol selected, _p_r_o_t_o, is zero, the socket will
receive all IMP messages except RFNM and incompletes which
are not input data for a kernel protocol. If _p_r_o_t_o is non-
zero, only messages for the specified link type will be
received.
DIAGNOSTICS
An operation on a socket may fail with one of the following
errors:
[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 desti-
nation address is specified, and the socket
hasn't been connected;
[ENOBUFS] when the system runs out of memory for an
internal data structure;
[ENOBUFS] eight messages to the destination host are
outstanding, and another eight are already
queued for output;
[EADDRNOTAVAIL]
when an attempt is made to create a socket
Printed 11/26/99 May 16, 1986 1
IMP(4P) UNIX Programmer's Manual IMP(4P)
with a network address for which no network
interface exists.
SEE ALSO
intro(4N), inet(4F), imp(4)
Printed 11/26/99 May 16, 1986 2