socket.h 1.5 KB

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