|
|
1.1 root 1: .\" Copyright (c) 1983 The Regents of the University of California.
2: .\" All rights reserved.
3: .\"
4: .\" Redistribution and use in source and binary forms are permitted provided
5: .\" that: (1) source distributions retain this entire copyright notice and
6: .\" comment, and (2) distributions including binaries display the following
7: .\" acknowledgement: ``This product includes software developed by the
8: .\" University of California, Berkeley and its contributors'' in the
9: .\" documentation or other materials provided with the distribution and in
10: .\" all advertising materials mentioning features or use of this software.
11: .\" Neither the name of the University nor the names of its contributors may
12: .\" be used to endorse or promote products derived from this software without
13: .\" specific prior written permission.
14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17: .\"
18: .\" @(#)imp.4 6.4 (Berkeley) 6/23/90
19: .\"
20: .TH IMP 4 "June 23, 1990"
21: .UC 5
22: .SH NAME
23: imp \- IMP raw socket interface
24: .SH SYNOPSIS
25: .B #include <sys/socket.h>
26: .br
27: .B #include <netinet/in.h>
28: .br
29: .B #include <netimp/if_imp.h>
30: .PP
31: .B s = socket(AF_IMPLINK, SOCK_RAW, proto);
32: .SH DESCRIPTION
33: The raw imp socket provides direct access to the
34: .IR imp (4)
35: network interface. Users send packets through
36: the interface using the
37: .IR send (2)
38: calls, and receive packets with the
39: .IR recv (2),
40: calls. All outgoing packets must have an 1822 96-bit
41: leader on the front. Likewise, packets received
42: by the user will have this leader on the front. The
43: 1822 leader and the legal values for the various fields
44: are defined in the include file
45: .RI < netimp/if_imp.h >.
46: The raw imp interface automatically installs the length
47: and destination address in the 1822 leader of all
48: outgoing packets; these need not be filled in by the user.
49: .PP
50: If the protocol selected,
51: .IR proto ,
52: is zero,
53: the socket will receive
54: all IMP messages except RFNM and incompletes
55: which are not input data for a kernel protocol.
56: If
57: .I proto
58: is non-zero,
59: only messages for the specified link type will be received.
60: .SH DIAGNOSTICS
61: An operation on a socket may fail with one of the following
62: errors:
63: .TP 15
64: [EISCONN]
65: when trying to establish a connection on a socket which
66: already has one, or when trying to send a datagram with the destination
67: address specified and the socket is already connected;
68: .TP 15
69: [ENOTCONN]
70: when trying to send a datagram, but
71: no destination address is specified, and the socket hasn't been
72: connected;
73: .TP 15
74: [ENOBUFS]
75: when the system runs out of memory for
76: an internal data structure;
77: .TP 15
78: [ENOBUFS]
79: eight messages to the destination host are outstanding,
80: and another eight are already queued for output;
81: .TP 15
82: [EADDRNOTAVAIL]
83: when an attempt is made to create a
84: socket with a network address for which no network interface
85: exists.
86: .SH SEE ALSO
87: intro(4), inet(4), imp(4)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.