Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
socket.h
Go to the documentation of this file.
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_SNDBUFFORCE 0x100a
20 #define SO_RCVBUFFORCE 0x100b
21 #define SO_SNDLOWAT 0x1003
22 #define SO_RCVLOWAT 0x1004
23 #define SO_SNDTIMEO 0x1005
24 #define SO_RCVTIMEO 0x1006
25 #define SO_ERROR 0x1007
26 #define SO_TYPE 0x1008
27 #define SO_PROTOCOL 0x1028
28 #define SO_DOMAIN 0x1029
29 #define SO_PEERNAME 0x2000
30 
31 #define SO_NO_CHECK 0x400b
32 #define SO_PRIORITY 0x400c
33 #define SO_BSDCOMPAT 0x400e
34 #define SO_PASSCRED 0x4010
35 #define SO_PEERCRED 0x4011
36 #define SO_TIMESTAMP 0x4012
37 #define SCM_TIMESTAMP SO_TIMESTAMP
38 #define SO_TIMESTAMPNS 0x4013
39 #define SCM_TIMESTAMPNS SO_TIMESTAMPNS
40 
41 /* Security levels - as per NRL IPv6 - don't actually do anything */
42 #define SO_SECURITY_AUTHENTICATION 0x4016
43 #define SO_SECURITY_ENCRYPTION_TRANSPORT 0x4017
44 #define SO_SECURITY_ENCRYPTION_NETWORK 0x4018
45 
46 #define SO_BINDTODEVICE 0x4019
47 
48 /* Socket filtering */
49 #define SO_ATTACH_FILTER 0x401a
50 #define SO_DETACH_FILTER 0x401b
51 
52 #define SO_ACCEPTCONN 0x401c
53 
54 #define SO_PEERSEC 0x401d
55 #define SO_PASSSEC 0x401e
56 
57 #define SO_MARK 0x401f
58 
59 #define SO_TIMESTAMPING 0x4020
60 #define SCM_TIMESTAMPING SO_TIMESTAMPING
61 
62 #define SO_RXQ_OVFL 0x4021
63 
64 #define SO_WIFI_STATUS 0x4022
65 #define SCM_WIFI_STATUS SO_WIFI_STATUS
66 #define SO_PEEK_OFF 0x4023
67 
68 /* Instruct lower device to use last 4-bytes of skb data as FCS */
69 #define SO_NOFCS 0x4024
70 
71 
72 /* O_NONBLOCK clashes with the bits used for socket types. Therefore we
73  * have to define SOCK_NONBLOCK to a different value here.
74  */
75 #define SOCK_NONBLOCK 0x40000000
76 
77 #endif /* _ASM_SOCKET_H */