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