linux/arch/sparc/include/uapi/asm/socket.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
   2#ifndef _ASM_SOCKET_H
   3#define _ASM_SOCKET_H
   4
   5#include <linux/posix_types.h>
   6#include <asm/sockios.h>
   7
   8/* For setsockopt(2) */
   9#define SOL_SOCKET      0xffff
  10
  11#define SO_DEBUG        0x0001
  12#define SO_PASSCRED     0x0002
  13#define SO_REUSEADDR    0x0004
  14#define SO_KEEPALIVE    0x0008
  15#define SO_DONTROUTE    0x0010
  16#define SO_BROADCAST    0x0020
  17#define SO_PEERCRED     0x0040
  18#define SO_LINGER       0x0080
  19#define SO_OOBINLINE    0x0100
  20#define SO_REUSEPORT    0x0200
  21#define SO_BSDCOMPAT    0x0400
  22#define SO_RCVLOWAT     0x0800
  23#define SO_SNDLOWAT     0x1000
  24#define SO_RCVTIMEO_OLD     0x2000
  25#define SO_SNDTIMEO_OLD     0x4000
  26#define SO_ACCEPTCONN   0x8000
  27
  28#define SO_SNDBUF       0x1001
  29#define SO_RCVBUF       0x1002
  30#define SO_SNDBUFFORCE  0x100a
  31#define SO_RCVBUFFORCE  0x100b
  32#define SO_ERROR        0x1007
  33#define SO_TYPE         0x1008
  34#define SO_PROTOCOL     0x1028
  35#define SO_DOMAIN       0x1029
  36
  37/* Linux specific, keep the same. */
  38#define SO_NO_CHECK     0x000b
  39#define SO_PRIORITY     0x000c
  40
  41#define SO_BINDTODEVICE 0x000d
  42
  43#define SO_ATTACH_FILTER        0x001a
  44#define SO_DETACH_FILTER        0x001b
  45#define SO_GET_FILTER           SO_ATTACH_FILTER
  46
  47#define SO_PEERNAME             0x001c
  48
  49#define SO_PEERSEC              0x001e
  50#define SO_PASSSEC              0x001f
  51
  52#define SO_MARK                 0x0022
  53
  54#define SO_RXQ_OVFL             0x0024
  55
  56#define SO_WIFI_STATUS          0x0025
  57#define SCM_WIFI_STATUS         SO_WIFI_STATUS
  58#define SO_PEEK_OFF             0x0026
  59
  60/* Instruct lower device to use last 4-bytes of skb data as FCS */
  61#define SO_NOFCS                0x0027
  62
  63#define SO_LOCK_FILTER          0x0028
  64
  65#define SO_SELECT_ERR_QUEUE     0x0029
  66
  67#define SO_BUSY_POLL            0x0030
  68
  69#define SO_MAX_PACING_RATE      0x0031
  70
  71#define SO_BPF_EXTENSIONS       0x0032
  72
  73#define SO_INCOMING_CPU         0x0033
  74
  75#define SO_ATTACH_BPF           0x0034
  76#define SO_DETACH_BPF           SO_DETACH_FILTER
  77
  78#define SO_ATTACH_REUSEPORT_CBPF        0x0035
  79#define SO_ATTACH_REUSEPORT_EBPF        0x0036
  80
  81#define SO_CNX_ADVICE           0x0037
  82
  83#define SCM_TIMESTAMPING_OPT_STATS      0x0038
  84
  85#define SO_MEMINFO              0x0039
  86
  87#define SO_INCOMING_NAPI_ID     0x003a
  88
  89#define SO_COOKIE               0x003b
  90
  91#define SCM_TIMESTAMPING_PKTINFO        0x003c
  92
  93#define SO_PEERGROUPS           0x003d
  94
  95#define SO_ZEROCOPY             0x003e
  96
  97#define SO_TXTIME               0x003f
  98#define SCM_TXTIME              SO_TXTIME
  99
 100#define SO_BINDTOIFINDEX        0x0041
 101
 102/* Security levels - as per NRL IPv6 - don't actually do anything */
 103#define SO_SECURITY_AUTHENTICATION              0x5001
 104#define SO_SECURITY_ENCRYPTION_TRANSPORT        0x5002
 105#define SO_SECURITY_ENCRYPTION_NETWORK          0x5004
 106
 107#define SO_TIMESTAMP_OLD         0x001d
 108#define SO_TIMESTAMPNS_OLD       0x0021
 109#define SO_TIMESTAMPING_OLD      0x0023
 110
 111#define SO_TIMESTAMP_NEW         0x0046
 112#define SO_TIMESTAMPNS_NEW       0x0042
 113#define SO_TIMESTAMPING_NEW      0x0043
 114
 115#define SO_RCVTIMEO_NEW          0x0044
 116#define SO_SNDTIMEO_NEW          0x0045
 117
 118#define SO_DETACH_REUSEPORT_BPF  0x0047
 119
 120#if !defined(__KERNEL__)
 121
 122
 123#if __BITS_PER_LONG == 64
 124#define SO_TIMESTAMP            SO_TIMESTAMP_OLD
 125#define SO_TIMESTAMPNS          SO_TIMESTAMPNS_OLD
 126#define SO_TIMESTAMPING         SO_TIMESTAMPING_OLD
 127
 128#define SO_RCVTIMEO             SO_RCVTIMEO_OLD
 129#define SO_SNDTIMEO             SO_SNDTIMEO_OLD
 130#else
 131#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW)
 132#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW)
 133#define SO_TIMESTAMPING (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPING_OLD : SO_TIMESTAMPING_NEW)
 134
 135#define SO_RCVTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_RCVTIMEO_OLD : SO_RCVTIMEO_NEW)
 136#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)
 137#endif
 138
 139#define SCM_TIMESTAMP          SO_TIMESTAMP
 140#define SCM_TIMESTAMPNS        SO_TIMESTAMPNS
 141#define SCM_TIMESTAMPING       SO_TIMESTAMPING
 142
 143#endif
 144
 145#endif /* _ASM_SOCKET_H */
 146