1 /* $Id: socket.h,v 1.10 2001/06/13 16:25:03 davem Exp $ */
2 #ifndef _ASM_SOCKET_H
3 #define _ASM_SOCKET_H
4 
5 #include <asm/sockios.h>
6 
7 /* For setsockopt(2) */
8 #define SOL_SOCKET	0xffff
9 
10 #define SO_DEBUG	0x0001
11 #define SO_PASSCRED	0x0002
12 #define SO_REUSEADDR	0x0004
13 #define SO_KEEPALIVE	0x0008
14 #define SO_DONTROUTE	0x0010
15 #define SO_BROADCAST	0x0020
16 #define SO_PEERCRED	0x0040
17 #define SO_LINGER	0x0080
18 #define SO_OOBINLINE	0x0100
19 /* To add :#define SO_REUSEPORT 0x0200 */
20 #define SO_BSDCOMPAT    0x0400
21 #define SO_RCVLOWAT     0x0800
22 #define SO_SNDLOWAT     0x1000
23 #define SO_RCVTIMEO     0x2000
24 #define SO_SNDTIMEO     0x4000
25 #define SO_ACCEPTCONN	0x8000
26 
27 /* wha!??? */
28 #define SO_DONTLINGER   (~SO_LINGER)  /* Older SunOS compat. hack */
29 
30 #define SO_SNDBUF	0x1001
31 #define SO_RCVBUF	0x1002
32 #define SO_ERROR	0x1007
33 #define SO_TYPE		0x1008
34 
35 /* Linux specific, keep the same. */
36 #define SO_NO_CHECK	0x000b
37 #define SO_PRIORITY	0x000c
38 
39 #define SO_BINDTODEVICE 0x000d
40 
41 #define SO_ATTACH_FILTER	0x001a
42 #define SO_DETACH_FILTER        0x001b
43 
44 #define SO_PEERNAME		0x001c
45 #define SO_TIMESTAMP		0x001d
46 #define SCM_TIMESTAMP		SO_TIMESTAMP
47 
48 /* Security levels - as per NRL IPv6 - don't actually do anything */
49 #define SO_SECURITY_AUTHENTICATION		0x5001
50 #define SO_SECURITY_ENCRYPTION_TRANSPORT	0x5002
51 #define SO_SECURITY_ENCRYPTION_NETWORK		0x5004
52 
53 /* Nast libc5 fixup - bletch */
54 #if defined(__KERNEL__)
55 /* Socket types. */
56 #define SOCK_STREAM	1		/* stream (connection) socket	*/
57 #define SOCK_DGRAM	2		/* datagram (conn.less) socket	*/
58 #define SOCK_RAW	3		/* raw socket			*/
59 #define SOCK_RDM	4		/* reliably-delivered message	*/
60 #define SOCK_SEQPACKET	5		/* sequential packet socket	*/
61 #define SOCK_PACKET	10		/* linux specific way of	*/
62 					/* getting packets at the dev	*/
63 					/* level.  For writing rarp and	*/
64 					/* other similar things on the	*/
65 					/* user level.			*/
66 #define	SOCK_MAX	(SOCK_PACKET+1)
67 #endif
68 
69 #endif /* _ASM_SOCKET_H */
70