1da84fdaaSLaurent Vivier /* 2da84fdaaSLaurent Vivier * This program is free software; you can redistribute it and/or modify 3da84fdaaSLaurent Vivier * it under the terms of the GNU General Public License version 2 as 4da84fdaaSLaurent Vivier * published by the Free Software Foundation, or (at your option) any 5da84fdaaSLaurent Vivier * later version. See the COPYING file in the top-level directory. 6da84fdaaSLaurent Vivier */ 7da84fdaaSLaurent Vivier 8da84fdaaSLaurent Vivier #ifndef SPARC_SOCKBITS_H 9da84fdaaSLaurent Vivier #define SPARC_SOCKBITS_H 10da84fdaaSLaurent Vivier 11da84fdaaSLaurent Vivier /* For setsockopt(2) */ 12*30a1b125SLaurent Vivier #define TARGET_SOL_SOCKET 0xffff 13da84fdaaSLaurent Vivier 14*30a1b125SLaurent Vivier #define TARGET_SO_DEBUG 0x0001 15*30a1b125SLaurent Vivier #define TARGET_SO_PASSCRED 0x0002 16*30a1b125SLaurent Vivier #define TARGET_SO_REUSEADDR 0x0004 17*30a1b125SLaurent Vivier #define TARGET_SO_KEEPALIVE 0x0008 18*30a1b125SLaurent Vivier #define TARGET_SO_DONTROUTE 0x0010 19*30a1b125SLaurent Vivier #define TARGET_SO_BROADCAST 0x0020 20*30a1b125SLaurent Vivier #define TARGET_SO_PEERCRED 0x0040 21*30a1b125SLaurent Vivier #define TARGET_SO_LINGER 0x0080 22*30a1b125SLaurent Vivier #define TARGET_SO_OOBINLINE 0x0100 23*30a1b125SLaurent Vivier #define TARGET_SO_REUSEPORT 0x0200 24*30a1b125SLaurent Vivier #define TARGET_SO_BSDCOMPAT 0x0400 25*30a1b125SLaurent Vivier #define TARGET_SO_RCVLOWAT 0x0800 26*30a1b125SLaurent Vivier #define TARGET_SO_SNDLOWAT 0x1000 27*30a1b125SLaurent Vivier #define TARGET_SO_RCVTIMEO 0x2000 28*30a1b125SLaurent Vivier #define TARGET_SO_SNDTIMEO 0x4000 29*30a1b125SLaurent Vivier #define TARGET_SO_ACCEPTCONN 0x8000 30da84fdaaSLaurent Vivier 31*30a1b125SLaurent Vivier #define TARGET_SO_SNDBUF 0x1001 32*30a1b125SLaurent Vivier #define TARGET_SO_RCVBUF 0x1002 33*30a1b125SLaurent Vivier #define TARGET_SO_SNDBUFFORCE 0x100a 34*30a1b125SLaurent Vivier #define TARGET_SO_RCVBUFFORCE 0x100b 35*30a1b125SLaurent Vivier #define TARGET_SO_ERROR 0x1007 36*30a1b125SLaurent Vivier #define TARGET_SO_TYPE 0x1008 37*30a1b125SLaurent Vivier #define TARGET_SO_PROTOCOL 0x1028 38*30a1b125SLaurent Vivier #define TARGET_SO_DOMAIN 0x1029 39da84fdaaSLaurent Vivier 40*30a1b125SLaurent Vivier /* Linux specific, keep the same. */ 41*30a1b125SLaurent Vivier #define TARGET_SO_NO_CHECK 0x000b 42*30a1b125SLaurent Vivier #define TARGET_SO_PRIORITY 0x000c 43da84fdaaSLaurent Vivier 44*30a1b125SLaurent Vivier #define TARGET_SO_BINDTODEVICE 0x000d 45da84fdaaSLaurent Vivier 46*30a1b125SLaurent Vivier #define TARGET_SO_ATTACH_FILTER 0x001a 47*30a1b125SLaurent Vivier #define TARGET_SO_DETACH_FILTER 0x001b 48*30a1b125SLaurent Vivier #define TARGET_SO_GET_FILTER TARGET_SO_ATTACH_FILTER 49*30a1b125SLaurent Vivier 50*30a1b125SLaurent Vivier #define TARGET_SO_PEERNAME 0x001c 51*30a1b125SLaurent Vivier #define TARGET_SO_TIMESTAMP 0x001d 52da84fdaaSLaurent Vivier #define TARGET_SCM_TIMESTAMP TARGET_SO_TIMESTAMP 53da84fdaaSLaurent Vivier 54*30a1b125SLaurent Vivier #define TARGET_SO_PEERSEC 0x001e 55*30a1b125SLaurent Vivier #define TARGET_SO_PASSSEC 0x001f 56*30a1b125SLaurent Vivier #define TARGET_SO_TIMESTAMPNS 0x0021 57*30a1b125SLaurent Vivier #define TARGET_SCM_TIMESTAMPNS TARGET_SO_TIMESTAMPNS 58da84fdaaSLaurent Vivier 59*30a1b125SLaurent Vivier #define TARGET_SO_MARK 0x0022 60*30a1b125SLaurent Vivier 61*30a1b125SLaurent Vivier #define TARGET_SO_TIMESTAMPING 0x0023 62*30a1b125SLaurent Vivier #define TARGET_SCM_TIMESTAMPING TARGET_SO_TIMESTAMPING 63*30a1b125SLaurent Vivier 64*30a1b125SLaurent Vivier #define TARGET_SO_RXQ_OVFL 0x0024 65*30a1b125SLaurent Vivier 66*30a1b125SLaurent Vivier #define TARGET_SO_WIFI_STATUS 0x0025 67*30a1b125SLaurent Vivier #define TARGET_SCM_WIFI_STATUS TARGET_SO_WIFI_STATUS 68*30a1b125SLaurent Vivier #define TARGET_SO_PEEK_OFF 0x0026 69*30a1b125SLaurent Vivier 70*30a1b125SLaurent Vivier /* Instruct lower device to use last 4-bytes of skb data as FCS */ 71*30a1b125SLaurent Vivier #define TARGET_SO_NOFCS 0x0027 72*30a1b125SLaurent Vivier 73*30a1b125SLaurent Vivier #define TARGET_SO_LOCK_FILTER 0x0028 74*30a1b125SLaurent Vivier 75*30a1b125SLaurent Vivier #define TARGET_SO_SELECT_ERR_QUEUE 0x0029 76*30a1b125SLaurent Vivier 77*30a1b125SLaurent Vivier #define TARGET_SO_BUSY_POLL 0x0030 78*30a1b125SLaurent Vivier 79*30a1b125SLaurent Vivier #define TARGET_SO_MAX_PACING_RATE 0x0031 80*30a1b125SLaurent Vivier 81*30a1b125SLaurent Vivier #define TARGET_SO_BPF_EXTENSIONS 0x0032 82*30a1b125SLaurent Vivier 83*30a1b125SLaurent Vivier #define TARGET_SO_INCOMING_CPU 0x0033 84*30a1b125SLaurent Vivier 85*30a1b125SLaurent Vivier #define TARGET_SO_ATTACH_BPF 0x0034 86*30a1b125SLaurent Vivier #define TARGET_SO_DETACH_BPF TARGET_SO_DETACH_FILTER 87*30a1b125SLaurent Vivier 88*30a1b125SLaurent Vivier #define TARGET_SO_ATTACH_REUSEPORT_CBPF 0x0035 89*30a1b125SLaurent Vivier #define TARGET_SO_ATTACH_REUSEPORT_EBPF 0x0036 90*30a1b125SLaurent Vivier 91*30a1b125SLaurent Vivier #define TARGET_SO_CNX_ADVICE 0x0037 92*30a1b125SLaurent Vivier 93*30a1b125SLaurent Vivier #define TARGET_SCM_TIMESTAMPING_OPT_STATS 0x0038 94*30a1b125SLaurent Vivier 95*30a1b125SLaurent Vivier #define TARGET_SO_MEMINFO 0x0039 96*30a1b125SLaurent Vivier 97*30a1b125SLaurent Vivier #define TARGET_SO_INCOMING_NAPI_ID 0x003a 98*30a1b125SLaurent Vivier 99*30a1b125SLaurent Vivier #define TARGET_SO_COOKIE 0x003b 100*30a1b125SLaurent Vivier 101*30a1b125SLaurent Vivier #define TARGET_SCM_TIMESTAMPING_PKTINFO 0x003c 102*30a1b125SLaurent Vivier 103*30a1b125SLaurent Vivier #define TARGET_SO_PEERGROUPS 0x003d 104*30a1b125SLaurent Vivier 105*30a1b125SLaurent Vivier #define TARGET_SO_ZEROCOPY 0x003e 106*30a1b125SLaurent Vivier 107*30a1b125SLaurent Vivier /* Security levels - as per NRL IPv6 - don't actually do anything */ 108*30a1b125SLaurent Vivier #define TARGET_SO_SECURITY_AUTHENTICATION 0x5001 109*30a1b125SLaurent Vivier #define TARGET_SO_SECURITY_ENCRYPTION_TRANSPORT 0x5002 110*30a1b125SLaurent Vivier #define TARGET_SO_SECURITY_ENCRYPTION_NETWORK 0x5004 111da84fdaaSLaurent Vivier #endif 112