sparc64: add basic support
[uclibc-ng.git] / libc / sysdeps / linux / sparc64 / bits / socket_type.h
blobaff7fa1327a02103d38350e5a9a109ab885658c8
1 /* System-specific socket constants and types. Linux version.
2 Copyright (C) 1991,1992,1994-2001,2004,2006 Free Software Foundation, Inc.
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library; if not, see
16 <http://www.gnu.org/licenses/>. */
18 #ifndef _SYS_SOCKET_H
19 # error "Never include <bits/socket_type.h> directly; use <sys/socket.h> instead."
20 #endif
22 /* Types of sockets. */
23 enum __socket_type
25 SOCK_STREAM = 1, /* Sequenced, reliable, connection-based
26 byte streams. */
27 #define SOCK_STREAM SOCK_STREAM
28 SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams
29 of fixed maximum length. */
30 #define SOCK_DGRAM SOCK_DGRAM
31 SOCK_RAW = 3, /* Raw protocol interface. */
32 #define SOCK_RAW SOCK_RAW
33 SOCK_RDM = 4, /* Reliably-delivered messages. */
34 #define SOCK_RDM SOCK_RDM
35 SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based,
36 datagrams of fixed maximum length. */
37 #define SOCK_SEQPACKET SOCK_SEQPACKET
38 SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */
39 #define SOCK_DCCP SOCK_DCCP
40 SOCK_PACKET = 10, /* Linux specific way of getting packets
41 at the dev level. For writing rarp and
42 other similar things on the user level. */
43 #define SOCK_PACKET SOCK_PACKET
45 /* Flags to be ORed into the type parameter of socket and socketpair. */
47 SOCK_CLOEXEC = 0x400000, /* Atomically set close-on-exec flag for the
48 new descriptor(s). */
49 #define SOCK_CLOEXEC SOCK_CLOEXEC
50 SOCK_NONBLOCK = 0x004000 /* Atomically mark descriptor(s) as
51 non-blocking. */
52 #define SOCK_NONBLOCK SOCK_NONBLOCK