1 |
1275 |
phoenix |
/*
|
2 |
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
3 |
|
|
* License. See the file "COPYING" in the main directory of this archive
|
4 |
|
|
* for more details.
|
5 |
|
|
*
|
6 |
|
|
* Copyright (C) 1997, 1999, 2000, 2001 Ralf Baechle
|
7 |
|
|
* Copyright (C) 2000, 2001 Silicon Graphics, Inc.
|
8 |
|
|
*/
|
9 |
|
|
#ifndef _ASM_SOCKET_H
|
10 |
|
|
#define _ASM_SOCKET_H
|
11 |
|
|
|
12 |
|
|
#include <asm/sockios.h>
|
13 |
|
|
|
14 |
|
|
/*
|
15 |
|
|
* For setsockopt(2)
|
16 |
|
|
*
|
17 |
|
|
* This defines are ABI conformant as far as Linux supports these ...
|
18 |
|
|
*/
|
19 |
|
|
#define SOL_SOCKET 0xffff
|
20 |
|
|
|
21 |
|
|
#define SO_DEBUG 0x0001 /* Record debugging information. */
|
22 |
|
|
#define SO_REUSEADDR 0x0004 /* Allow reuse of local addresses. */
|
23 |
|
|
#define SO_KEEPALIVE 0x0008 /* Keep connections alive and send
|
24 |
|
|
SIGPIPE when they die. */
|
25 |
|
|
#define SO_DONTROUTE 0x0010 /* Don't do local routing. */
|
26 |
|
|
#define SO_BROADCAST 0x0020 /* Allow transmission of
|
27 |
|
|
broadcast messages. */
|
28 |
|
|
#define SO_LINGER 0x0080 /* Block on close of a reliable
|
29 |
|
|
socket to transmit pending data. */
|
30 |
|
|
#define SO_OOBINLINE 0x0100 /* Receive out-of-band data in-band. */
|
31 |
|
|
#if 0
|
32 |
|
|
To add: #define SO_REUSEPORT 0x0200 /* Allow local address and port reuse. */
|
33 |
|
|
#endif
|
34 |
|
|
|
35 |
|
|
#define SO_TYPE 0x1008 /* Compatible name for SO_STYLE. */
|
36 |
|
|
#define SO_STYLE SO_TYPE /* Synonym */
|
37 |
|
|
#define SO_ERROR 0x1007 /* get error status and clear */
|
38 |
|
|
#define SO_SNDBUF 0x1001 /* Send buffer size. */
|
39 |
|
|
#define SO_RCVBUF 0x1002 /* Receive buffer. */
|
40 |
|
|
#define SO_SNDLOWAT 0x1003 /* send low-water mark */
|
41 |
|
|
#define SO_RCVLOWAT 0x1004 /* receive low-water mark */
|
42 |
|
|
#define SO_SNDTIMEO 0x1005 /* send timeout */
|
43 |
|
|
#define SO_RCVTIMEO 0x1006 /* receive timeout */
|
44 |
|
|
#define SO_ACCEPTCONN 0x1009
|
45 |
|
|
|
46 |
|
|
/* linux-specific, might as well be the same as on i386 */
|
47 |
|
|
#define SO_NO_CHECK 11
|
48 |
|
|
#define SO_PRIORITY 12
|
49 |
|
|
#define SO_BSDCOMPAT 14
|
50 |
|
|
|
51 |
|
|
#define SO_PASSCRED 17
|
52 |
|
|
#define SO_PEERCRED 18
|
53 |
|
|
|
54 |
|
|
/* Security levels - as per NRL IPv6 - don't actually do anything */
|
55 |
|
|
#define SO_SECURITY_AUTHENTICATION 22
|
56 |
|
|
#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
|
57 |
|
|
#define SO_SECURITY_ENCRYPTION_NETWORK 24
|
58 |
|
|
|
59 |
|
|
#define SO_BINDTODEVICE 25
|
60 |
|
|
|
61 |
|
|
/* Socket filtering */
|
62 |
|
|
#define SO_ATTACH_FILTER 26
|
63 |
|
|
#define SO_DETACH_FILTER 27
|
64 |
|
|
|
65 |
|
|
#define SO_PEERNAME 28
|
66 |
|
|
#define SO_TIMESTAMP 29
|
67 |
|
|
#define SCM_TIMESTAMP SO_TIMESTAMP
|
68 |
|
|
|
69 |
|
|
/* Nast libc5 fixup - bletch */
|
70 |
|
|
#if defined(__KERNEL__)
|
71 |
|
|
/* Socket types. */
|
72 |
|
|
#define SOCK_DGRAM 1 /* datagram (conn.less) socket */
|
73 |
|
|
#define SOCK_STREAM 2 /* stream (connection) socket */
|
74 |
|
|
#define SOCK_RAW 3 /* raw socket */
|
75 |
|
|
#define SOCK_RDM 4 /* reliably-delivered message */
|
76 |
|
|
#define SOCK_SEQPACKET 5 /* sequential packet socket */
|
77 |
|
|
#define SOCK_PACKET 10 /* linux specific way of */
|
78 |
|
|
/* getting packets at the dev */
|
79 |
|
|
/* level. For writing rarp and */
|
80 |
|
|
/* other similar things on the */
|
81 |
|
|
/* user level. */
|
82 |
|
|
#define SOCK_MAX (SOCK_PACKET+1)
|
83 |
|
|
#endif
|
84 |
|
|
|
85 |
|
|
#endif /* _ASM_SOCKET_H */
|