1 #ifndef _ASM_SOCKET_H
2 #define _ASM_SOCKET_H
3 
4 #include <asm/sockios.h>
5 
6 /* For setsockoptions(2) */
7 #define SOL_SOCKET	1
8 
9 #define SO_DEBUG	1
10 #define SO_REUSEADDR	2
11 #define SO_TYPE		3
12 #define SO_ERROR	4
13 #define SO_DONTROUTE	5
14 #define SO_BROADCAST	6
15 #define SO_SNDBUF	7
16 #define SO_RCVBUF	8
17 #define SO_KEEPALIVE	9
18 #define SO_OOBINLINE	10
19 #define SO_NO_CHECK	11
20 #define SO_PRIORITY	12
21 #define SO_LINGER	13
22 #define SO_BSDCOMPAT	14
23 /* To add :#define SO_REUSEPORT 15 */
24 #define SO_PASSCRED	16
25 #define SO_PEERCRED	17
26 #define SO_RCVLOWAT	18
27 #define SO_SNDLOWAT	19
28 #define SO_RCVTIMEO	20
29 #define SO_SNDTIMEO	21
30 
31 /* Security levels - as per NRL IPv6 - don't actually do anything */
32 #define SO_SECURITY_AUTHENTICATION		22
33 #define SO_SECURITY_ENCRYPTION_TRANSPORT	23
34 #define SO_SECURITY_ENCRYPTION_NETWORK		24
35 
36 #define SO_BINDTODEVICE	25
37 
38 /* Socket filtering */
39 #define SO_ATTACH_FILTER        26
40 #define SO_DETACH_FILTER        27
41 
42 #define SO_PEERNAME		28
43 #define SO_TIMESTAMP		29
44 #define SCM_TIMESTAMP		SO_TIMESTAMP
45 
46 #define SO_ACCEPTCONN		30
47 
48 /* Nasty libc5 fixup - bletch */
49 #if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
50 /* Socket types. */
51 #define SOCK_STREAM	1		/* stream (connection) socket	*/
52 #define SOCK_DGRAM	2		/* datagram (conn.less) socket	*/
53 #define SOCK_RAW	3		/* raw socket			*/
54 #define SOCK_RDM	4		/* reliably-delivered message	*/
55 #define SOCK_SEQPACKET	5		/* sequential packet socket	*/
56 #define SOCK_PACKET	10		/* linux specific way of	*/
57 					/* getting packets at the dev	*/
58 					/* level.  For writing rarp and	*/
59 					/* other similar things on the	*/
60 					/* user level.			*/
61 #define	SOCK_MAX	(SOCK_PACKET+1)
62 #endif
63 
64 #endif /* _ASM_SOCKET_H */
65