1 #ifndef _ASM_SOCKET_H
2 #define _ASM_SOCKET_H
3 
4 #include <asm/sockios.h>
5 
6 /* For setsockopt(2) */
7 #define SOL_SOCKET	0xffff
8 
9 #define SO_DEBUG	0x0001
10 #define SO_REUSEADDR	0x0004
11 #define SO_KEEPALIVE	0x0008
12 #define SO_DONTROUTE	0x0010
13 #define SO_BROADCAST	0x0020
14 #define SO_LINGER	0x0080
15 #define SO_OOBINLINE	0x0100
16 /* To add :#define SO_REUSEPORT 0x0200 */
17 #define SO_SNDBUF	0x1001
18 #define SO_RCVBUF	0x1002
19 #define SO_SNDLOWAT	0x1003
20 #define SO_RCVLOWAT	0x1004
21 #define SO_SNDTIMEO	0x1005
22 #define SO_RCVTIMEO	0x1006
23 #define SO_ERROR	0x1007
24 #define SO_TYPE		0x1008
25 #define SO_PEERNAME	0x2000
26 
27 #define SO_NO_CHECK	0x400b
28 #define SO_PRIORITY	0x400c
29 #define SO_BSDCOMPAT	0x400e
30 #define SO_PASSCRED	0x4010
31 #define SO_PEERCRED	0x4011
32 #define SO_TIMESTAMP	0x4012
33 #define SCM_TIMESTAMP	SO_TIMESTAMP
34 
35 /* Security levels - as per NRL IPv6 - don't actually do anything */
36 #define SO_SECURITY_AUTHENTICATION		0x4016
37 #define SO_SECURITY_ENCRYPTION_TRANSPORT	0x4017
38 #define SO_SECURITY_ENCRYPTION_NETWORK		0x4018
39 
40 #define SO_BINDTODEVICE	0x4019
41 
42 /* Socket filtering */
43 #define SO_ATTACH_FILTER        0x401a
44 #define SO_DETACH_FILTER        0x401b
45 
46 #define SO_ACCEPTCONN		0x401c
47 
48 #if defined(__KERNEL__)
49 #define SOCK_STREAM	1	/* stream (connection) socket	*/
50 #define SOCK_DGRAM	2	/* datagram (conn.less) socket	*/
51 #define SOCK_RAW	3	/* raw socket			*/
52 #define SOCK_RDM	4	/* reliably-delivered message	*/
53 #define SOCK_SEQPACKET	5	/* sequential packet socket	*/
54 #define SOCK_PACKET	10	/* linux specific way of	*/
55 				/* getting packets at the dev	*/
56 				/* level.  For writing rarp and	*/
57 				/* other similar things on the	*/
58 				/* user level.			*/
59 #define	SOCK_MAX	(SOCK_PACKET+1)
60 #endif
61 
62 #endif /* _ASM_SOCKET_H */
63