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_PEERNAME 0x2000 28 29#define SO_NO_CHECK 0x400b 30#define SO_PRIORITY 0x400c 31#define SO_BSDCOMPAT 0x400e 32#define SO_PASSCRED 0x4010 33#define SO_PEERCRED 0x4011 34#define SO_TIMESTAMP 0x4012 35#define SCM_TIMESTAMP SO_TIMESTAMP 36#define SO_TIMESTAMPNS 0x4013 37#define SCM_TIMESTAMPNS SO_TIMESTAMPNS 38 39/* Security levels - as per NRL IPv6 - don't actually do anything */ 40#define SO_SECURITY_AUTHENTICATION 0x4016 41#define SO_SECURITY_ENCRYPTION_TRANSPORT 0x4017 42#define SO_SECURITY_ENCRYPTION_NETWORK 0x4018 43 44#define SO_BINDTODEVICE 0x4019 45 46/* Socket filtering */ 47#define SO_ATTACH_FILTER 0x401a 48#define SO_DETACH_FILTER 0x401b 49 50#define SO_ACCEPTCONN 0x401c 51 52#define SO_PEERSEC 0x401d 53#define SO_PASSSEC 0x401e 54 55#define SO_MARK 0x401f 56 57#define SO_TIMESTAMPING 0x4020 58#define SCM_TIMESTAMPING SO_TIMESTAMPING 59 60/* O_NONBLOCK clashes with the bits used for socket types. Therefore we 61 * have to define SOCK_NONBLOCK to a different value here. 62 */ 63#define SOCK_NONBLOCK 0x40000000 64 65#endif /* _ASM_SOCKET_H */ 66