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