1384740dcSRalf Baechle /* 2384740dcSRalf Baechle * This file is subject to the terms and conditions of the GNU General Public 3384740dcSRalf Baechle * License. See the file "COPYING" in the main directory of this archive 4384740dcSRalf Baechle * for more details. 5384740dcSRalf Baechle * 6384740dcSRalf Baechle * Copyright (C) 1997, 1999, 2000, 2001 Ralf Baechle 7384740dcSRalf Baechle * Copyright (C) 2000, 2001 Silicon Graphics, Inc. 8384740dcSRalf Baechle */ 9384740dcSRalf Baechle #ifndef _ASM_SOCKET_H 10384740dcSRalf Baechle #define _ASM_SOCKET_H 11384740dcSRalf Baechle 1261730c53SDavid Howells #include <uapi/asm/socket.h> 13384740dcSRalf Baechle 14384740dcSRalf Baechle 15384740dcSRalf Baechle /** sock_type - Socket types 16384740dcSRalf Baechle * 17384740dcSRalf Baechle * Please notice that for binary compat reasons MIPS has to 18384740dcSRalf Baechle * override the enum sock_type in include/linux/net.h, so 19384740dcSRalf Baechle * we define ARCH_HAS_SOCKET_TYPES here. 20384740dcSRalf Baechle * 21384740dcSRalf Baechle * @SOCK_DGRAM - datagram (conn.less) socket 22384740dcSRalf Baechle * @SOCK_STREAM - stream (connection) socket 23384740dcSRalf Baechle * @SOCK_RAW - raw socket 24384740dcSRalf Baechle * @SOCK_RDM - reliably-delivered message 25384740dcSRalf Baechle * @SOCK_SEQPACKET - sequential packet socket 26384740dcSRalf Baechle * @SOCK_PACKET - linux specific way of getting packets at the dev level. 27384740dcSRalf Baechle * For writing rarp and other similar things on the user level. 28384740dcSRalf Baechle */ 29384740dcSRalf Baechle enum sock_type { 30384740dcSRalf Baechle SOCK_DGRAM = 1, 31384740dcSRalf Baechle SOCK_STREAM = 2, 32384740dcSRalf Baechle SOCK_RAW = 3, 33384740dcSRalf Baechle SOCK_RDM = 4, 34384740dcSRalf Baechle SOCK_SEQPACKET = 5, 35384740dcSRalf Baechle SOCK_DCCP = 6, 36384740dcSRalf Baechle SOCK_PACKET = 10, 37384740dcSRalf Baechle }; 38384740dcSRalf Baechle 39384740dcSRalf Baechle #define SOCK_MAX (SOCK_PACKET + 1) 40384740dcSRalf Baechle /* Mask which covers at least up to SOCK_MASK-1. The 41384740dcSRalf Baechle * * remaining bits are used as flags. */ 42384740dcSRalf Baechle #define SOCK_TYPE_MASK 0xf 43384740dcSRalf Baechle 44384740dcSRalf Baechle /* Flags for socket, socketpair, paccept */ 45384740dcSRalf Baechle #define SOCK_CLOEXEC O_CLOEXEC 46384740dcSRalf Baechle #define SOCK_NONBLOCK O_NONBLOCK 47384740dcSRalf Baechle 48384740dcSRalf Baechle #define ARCH_HAS_SOCKET_TYPES 1 49384740dcSRalf Baechle 50384740dcSRalf Baechle #endif /* _ASM_SOCKET_H */ 51