xref: /OK3568_Linux_fs/kernel/arch/mips/include/asm/socket.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun  * This file is subject to the terms and conditions of the GNU General Public
3*4882a593Smuzhiyun  * License.  See the file "COPYING" in the main directory of this archive
4*4882a593Smuzhiyun  * for more details.
5*4882a593Smuzhiyun  *
6*4882a593Smuzhiyun  * Copyright (C) 1997, 1999, 2000, 2001 Ralf Baechle
7*4882a593Smuzhiyun  * Copyright (C) 2000, 2001 Silicon Graphics, Inc.
8*4882a593Smuzhiyun  */
9*4882a593Smuzhiyun #ifndef _ASM_SOCKET_H
10*4882a593Smuzhiyun #define _ASM_SOCKET_H
11*4882a593Smuzhiyun 
12*4882a593Smuzhiyun #include <uapi/asm/socket.h>
13*4882a593Smuzhiyun 
14*4882a593Smuzhiyun 
15*4882a593Smuzhiyun /** sock_type - Socket types
16*4882a593Smuzhiyun  *
17*4882a593Smuzhiyun  * Please notice that for binary compat reasons MIPS has to
18*4882a593Smuzhiyun  * override the enum sock_type in include/linux/net.h, so
19*4882a593Smuzhiyun  * we define ARCH_HAS_SOCKET_TYPES here.
20*4882a593Smuzhiyun  *
21*4882a593Smuzhiyun  * @SOCK_DGRAM - datagram (conn.less) socket
22*4882a593Smuzhiyun  * @SOCK_STREAM - stream (connection) socket
23*4882a593Smuzhiyun  * @SOCK_RAW - raw socket
24*4882a593Smuzhiyun  * @SOCK_RDM - reliably-delivered message
25*4882a593Smuzhiyun  * @SOCK_SEQPACKET - sequential packet socket
26*4882a593Smuzhiyun  * @SOCK_PACKET - linux specific way of getting packets at the dev level.
27*4882a593Smuzhiyun  *		  For writing rarp and other similar things on the user level.
28*4882a593Smuzhiyun  */
29*4882a593Smuzhiyun enum sock_type {
30*4882a593Smuzhiyun 	SOCK_DGRAM	= 1,
31*4882a593Smuzhiyun 	SOCK_STREAM	= 2,
32*4882a593Smuzhiyun 	SOCK_RAW	= 3,
33*4882a593Smuzhiyun 	SOCK_RDM	= 4,
34*4882a593Smuzhiyun 	SOCK_SEQPACKET	= 5,
35*4882a593Smuzhiyun 	SOCK_DCCP	= 6,
36*4882a593Smuzhiyun 	SOCK_PACKET	= 10,
37*4882a593Smuzhiyun };
38*4882a593Smuzhiyun 
39*4882a593Smuzhiyun #define SOCK_MAX (SOCK_PACKET + 1)
40*4882a593Smuzhiyun /* Mask which covers at least up to SOCK_MASK-1.  The
41*4882a593Smuzhiyun  *  * remaining bits are used as flags. */
42*4882a593Smuzhiyun #define SOCK_TYPE_MASK 0xf
43*4882a593Smuzhiyun 
44*4882a593Smuzhiyun /* Flags for socket, socketpair, paccept */
45*4882a593Smuzhiyun #define SOCK_CLOEXEC	O_CLOEXEC
46*4882a593Smuzhiyun #define SOCK_NONBLOCK	O_NONBLOCK
47*4882a593Smuzhiyun 
48*4882a593Smuzhiyun #define ARCH_HAS_SOCKET_TYPES 1
49*4882a593Smuzhiyun 
50*4882a593Smuzhiyun #endif /* _ASM_SOCKET_H */
51