| 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 <asm/sockios.h>
|
| 13 |
|
| 14 | |
| 15 | * For setsockopt(2)
|
| 16 | *
|
| 17 | * This defines are ABI conformant as far as Linux supports these ...
|
| 18 |
|
| 19 | #define SOL_SOCKET 0xffff
|
| 20 |
|
| 21 | #define SO_DEBUG 0x0001
|
| 22 | #define SO_REUSEADDR 0x0004
|
| 23 | #define SO_KEEPALIVE 0x0008 |
| 24 | SIGPIPE when they die.
|
| 25 | #define SO_DONTROUTE 0x0010
|
| 26 | #define SO_BROADCAST 0x0020 |
| 27 | broadcast messages.
|
| 28 | #define SO_LINGER 0x0080 |
| 29 | socket to transmit pending data.
|
| 30 | #define SO_OOBINLINE 0x0100
|
| 31 | #if 0 |
| 32 | To add: #define SO_REUSEPORT 0x0200 /* Allow local address and port reuse. */
|
| 33 | #endif
|
| 34 |
|
| 35 | #define SO_TYPE 0x1008
|
| 36 | #define SO_STYLE SO_TYPE
|
| 37 | #define SO_ERROR 0x1007
|
| 38 | #define SO_SNDBUF 0x1001
|
| 39 | #define SO_RCVBUF 0x1002
|
| 40 | #define SO_SNDLOWAT 0x1003
|
| 41 | #define SO_RCVLOWAT 0x1004
|
| 42 | #define SO_SNDTIMEO 0x1005
|
| 43 | #define SO_RCVTIMEO 0x1006
|
| 44 | #define SO_ACCEPTCONN 0x1009
|
| 45 |
|
| 46 |
|
| 47 | #define SO_NO_CHECK 11
|
| 48 | #define SO_PRIORITY 12
|
| 49 | #define SO_BSDCOMPAT 14
|
| 50 |
|
| 51 | #define SO_PASSCRED 17
|
| 52 | #define SO_PEERCRED 18
|
| 53 |
|
| 54 |
|
| 55 | #define SO_SECURITY_AUTHENTICATION 22
|
| 56 | #define SO_SECURITY_ENCRYPTION_TRANSPORT 23
|
| 57 | #define SO_SECURITY_ENCRYPTION_NETWORK 24
|
| 58 |
|
| 59 | #define SO_BINDTODEVICE 25
|
| 60 |
|
| 61 |
|
| 62 | #define SO_ATTACH_FILTER 26
|
| 63 | #define SO_DETACH_FILTER 27
|
| 64 |
|
| 65 | #define SO_PEERNAME 28
|
| 66 | #define SO_TIMESTAMP 29
|
| 67 | #define SCM_TIMESTAMP SO_TIMESTAMP
|
| 68 |
|
| 69 | #define SO_PEERSEC 30
|
| 70 | #define SO_SNDBUFFORCE 31
|
| 71 | #define SO_RCVBUFFORCE 33
|
| 72 | #define SO_PASSSEC 34
|
| 73 |
|
| 74 | #ifdef __KERNEL__
|
| 75 |
|
| 76 | |
| 77 | *
|
| 78 | * Please notice that for binary compat reasons MIPS has to
|
| 79 | * override the enum sock_type in include/linux/net.h, so
|
| 80 | * we define ARCH_HAS_SOCKET_TYPES here.
|
| 81 | *
|
| 82 | * @SOCK_DGRAM - datagram (conn.less) socket
|
| 83 | * @SOCK_STREAM - stream (connection) socket
|
| 84 | * @SOCK_RAW - raw socket
|
| 85 | * @SOCK_RDM - reliably-delivered message
|
| 86 | * @SOCK_SEQPACKET - sequential packet socket
|
| 87 | * @SOCK_PACKET - linux specific way of getting packets at the dev level.
|
| 88 | * For writing rarp and other similar things on the user level.
|
| 89 |
|
| 90 | enum sock_type {
|
| 91 | SOCK_DGRAM = 1,
|
| 92 | SOCK_STREAM = 2,
|
| 93 | SOCK_RAW = 3,
|
| 94 | SOCK_RDM = 4,
|
| 95 | SOCK_SEQPACKET = 5,
|
| 96 | SOCK_DCCP = 6,
|
| 97 | SOCK_PACKET = 10,
|
| 98 | };
|
| 99 |
|
| 100 | #define SOCK_MAX (SOCK_PACKET + 1)
|
| 101 |
|
| 102 | #define ARCH_HAS_SOCKET_TYPES 1
|
| 103 |
|
| 104 | #endif
|
| 105 |
|
| 106 | #endif
|