|
|
1.1 root 1:
2: #if defined(TARGET_MIPS)
3: // MIPS special values for constants
4:
5: /*
6: * For setsockopt(2)
7: *
8: * This defines are ABI conformant as far as Linux supports these ...
9: */
10: #define TARGET_SOL_SOCKET 0xffff
11:
12: #define TARGET_SO_DEBUG 0x0001 /* Record debugging information. */
13: #define TARGET_SO_REUSEADDR 0x0004 /* Allow reuse of local addresses. */
14: #define TARGET_SO_KEEPALIVE 0x0008 /* Keep connections alive and send
15: SIGPIPE when they die. */
16: #define TARGET_SO_DONTROUTE 0x0010 /* Don't do local routing. */
17: #define TARGET_SO_BROADCAST 0x0020 /* Allow transmission of
18: broadcast messages. */
19: #define TARGET_SO_LINGER 0x0080 /* Block on close of a reliable
20: socket to transmit pending data. */
21: #define TARGET_SO_OOBINLINE 0x0100 /* Receive out-of-band data in-band. */
22: #if 0
23: To add: #define TARGET_SO_REUSEPORT 0x0200 /* Allow local address and port reuse. */
24: #endif
25:
26: #define TARGET_SO_TYPE 0x1008 /* Compatible name for SO_STYLE. */
27: #define TARGET_SO_STYLE SO_TYPE /* Synonym */
28: #define TARGET_SO_ERROR 0x1007 /* get error status and clear */
29: #define TARGET_SO_SNDBUF 0x1001 /* Send buffer size. */
30: #define TARGET_SO_RCVBUF 0x1002 /* Receive buffer. */
31: #define TARGET_SO_SNDLOWAT 0x1003 /* send low-water mark */
32: #define TARGET_SO_RCVLOWAT 0x1004 /* receive low-water mark */
33: #define TARGET_SO_SNDTIMEO 0x1005 /* send timeout */
34: #define TARGET_SO_RCVTIMEO 0x1006 /* receive timeout */
35: #define TARGET_SO_ACCEPTCONN 0x1009
36:
37: /* linux-specific, might as well be the same as on i386 */
38: #define TARGET_SO_NO_CHECK 11
39: #define TARGET_SO_PRIORITY 12
40: #define TARGET_SO_BSDCOMPAT 14
41:
42: #define TARGET_SO_PASSCRED 17
43: #define TARGET_SO_PEERCRED 18
44:
45: /* Security levels - as per NRL IPv6 - don't actually do anything */
46: #define TARGET_SO_SECURITY_AUTHENTICATION 22
47: #define TARGET_SO_SECURITY_ENCRYPTION_TRANSPORT 23
48: #define TARGET_SO_SECURITY_ENCRYPTION_NETWORK 24
49:
50: #define TARGET_SO_BINDTODEVICE 25
51:
52: /* Socket filtering */
53: #define TARGET_SO_ATTACH_FILTER 26
54: #define TARGET_SO_DETACH_FILTER 27
55:
56: #define TARGET_SO_PEERNAME 28
57: #define TARGET_SO_TIMESTAMP 29
58: #define SCM_TIMESTAMP SO_TIMESTAMP
59:
60: #define TARGET_SO_PEERSEC 30
61: #define TARGET_SO_SNDBUFFORCE 31
62: #define TARGET_SO_RCVBUFFORCE 33
63:
64: /** sock_type - Socket types
65: *
66: * Please notice that for binary compat reasons MIPS has to
67: * override the enum sock_type in include/linux/net.h, so
68: * we define ARCH_HAS_SOCKET_TYPES here.
69: *
70: * @SOCK_DGRAM - datagram (conn.less) socket
71: * @SOCK_STREAM - stream (connection) socket
72: * @SOCK_RAW - raw socket
73: * @SOCK_RDM - reliably-delivered message
74: * @SOCK_SEQPACKET - sequential packet socket
75: * @SOCK_PACKET - linux specific way of getting packets at the dev level.
76: * For writing rarp and other similar things on the user level.
77: */
78: enum sock_type {
79: TARGET_SOCK_DGRAM = 1,
80: TARGET_SOCK_STREAM = 2,
81: TARGET_SOCK_RAW = 3,
82: TARGET_SOCK_RDM = 4,
83: TARGET_SOCK_SEQPACKET = 5,
84: TARGET_SOCK_DCCP = 6,
85: TARGET_SOCK_PACKET = 10,
86: };
87:
88: #define TARGET_SOCK_MAX (SOCK_PACKET + 1)
89:
90: #else
91:
92: /* For setsockopt(2) */
93: #define TARGET_SOL_SOCKET 1
94:
95: #define TARGET_SO_DEBUG 1
96: #define TARGET_SO_REUSEADDR 2
97: #define TARGET_SO_TYPE 3
98: #define TARGET_SO_ERROR 4
99: #define TARGET_SO_DONTROUTE 5
100: #define TARGET_SO_BROADCAST 6
101: #define TARGET_SO_SNDBUF 7
102: #define TARGET_SO_RCVBUF 8
103: #define TARGET_SO_SNDBUFFORCE 32
104: #define TARGET_SO_RCVBUFFORCE 33
105: #define TARGET_SO_KEEPALIVE 9
106: #define TARGET_SO_OOBINLINE 10
107: #define TARGET_SO_NO_CHECK 11
108: #define TARGET_SO_PRIORITY 12
109: #define TARGET_SO_LINGER 13
110: #define TARGET_SO_BSDCOMPAT 14
111: /* To add :#define TARGET_SO_REUSEPORT 15 */
1.1.1.2 ! root 112: #if defined(TARGET_PPC)
! 113: #define TARGET_SO_RCVLOWAT 16
! 114: #define TARGET_SO_SNDLOWAT 17
! 115: #define TARGET_SO_RCVTIMEO 18
! 116: #define TARGET_SO_SNDTIMEO 19
! 117: #define TARGET_SO_PASSCRED 20
! 118: #define TARGET_SO_PEERCRED 21
! 119: #else
1.1 root 120: #define TARGET_SO_PASSCRED 16
121: #define TARGET_SO_PEERCRED 17
122: #define TARGET_SO_RCVLOWAT 18
123: #define TARGET_SO_SNDLOWAT 19
124: #define TARGET_SO_RCVTIMEO 20
125: #define TARGET_SO_SNDTIMEO 21
1.1.1.2 ! root 126: #endif
1.1 root 127:
128: /* Security levels - as per NRL IPv6 - don't actually do anything */
129: #define TARGET_SO_SECURITY_AUTHENTICATION 22
130: #define TARGET_SO_SECURITY_ENCRYPTION_TRANSPORT 23
131: #define TARGET_SO_SECURITY_ENCRYPTION_NETWORK 24
132:
133: #define TARGET_SO_BINDTODEVICE 25
134:
135: /* Socket filtering */
136: #define TARGET_SO_ATTACH_FILTER 26
137: #define TARGET_SO_DETACH_FILTER 27
138:
139: #define TARGET_SO_PEERNAME 28
140: #define TARGET_SO_TIMESTAMP 29
141: #define TARGET_SCM_TIMESTAMP TARGET_SO_TIMESTAMP
142:
143: #define TARGET_SO_ACCEPTCONN 30
144:
145: #define TARGET_SO_PEERSEC 31
146:
147: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.