1#ifndef _ASM_SOCKET_H 2#define _ASM_SOCKET_H 3 4#include <asm/sockios.h> 5 6/* For setsockopt(2) */ 7#define SOL_SOCKET 0xffff 8 9#define SO_DEBUG 0x0001 10#define SO_REUSEADDR 0x0004 11#define SO_KEEPALIVE 0x0008 12#define SO_DONTROUTE 0x0010 13#define SO_BROADCAST 0x0020 14#define SO_LINGER 0x0080 15#define SO_OOBINLINE 0x0100 16/* To add :#define SO_REUSEPORT 0x0200 */ 17#define SO_SNDBUF 0x1001 18#define SO_RCVBUF 0x1002 19#define SO_SNDBUFFORCE 0x100a 20#define SO_RCVBUFFORCE 0x100b 21#define SO_SNDLOWAT 0x1003 22#define SO_RCVLOWAT 0x1004 23#define SO_SNDTIMEO 0x1005 24#define SO_RCVTIMEO 0x1006 25#define SO_ERROR 0x1007 26#define SO_TYPE 0x1008 27#define SO_PROTOCOL 0x1028 28#define SO_DOMAIN 0x1029 29#define SO_PEERNAME 0x2000 30 31#define SO_NO_CHECK 0x400b 32#define SO_PRIORITY 0x400c 33#define SO_BSDCOMPAT 0x400e 34#define SO_PASSCRED 0x4010 35#define SO_PEERCRED 0x4011 36#define SO_TIMESTAMP 0x4012 37#define SCM_TIMESTAMP SO_TIMESTAMP 38#define SO_TIMESTAMPNS 0x4013 39#define SCM_TIMESTAMPNS SO_TIMESTAMPNS 40 41/* Security levels - as per NRL IPv6 - don't actually do anything */ 42#define SO_SECURITY_AUTHENTICATION 0x4016 43#define SO_SECURITY_ENCRYPTION_TRANSPORT 0x4017 44#define SO_SECURITY_ENCRYPTION_NETWORK 0x4018 45 46#define SO_BINDTODEVICE 0x4019 47 48/* Socket filtering */ 49#define SO_ATTACH_FILTER 0x401a 50#define SO_DETACH_FILTER 0x401b 51 52#define SO_ACCEPTCONN 0x401c 53 54#define SO_PEERSEC 0x401d 55#define SO_PASSSEC 0x401e 56 57#define SO_MARK 0x401f 58 59#define SO_TIMESTAMPING 0x4020 60#define SCM_TIMESTAMPING SO_TIMESTAMPING 61 62/* O_NONBLOCK clashes with the bits used for socket types. Therefore we 63 * have to define SOCK_NONBLOCK to a different value here. 64 */ 65#define SOCK_NONBLOCK 0x40000000 66 67#endif /* _ASM_SOCKET_H */ 68