socket.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. struct msghdr
  2. {
  3. void *msg_name;
  4. socklen_t msg_namelen;
  5. struct iovec *msg_iov;
  6. int msg_iovlen;
  7. void *msg_control;
  8. socklen_t msg_controllen;
  9. int msg_flags;
  10. };
  11. struct cmsghdr
  12. {
  13. socklen_t cmsg_len;
  14. int cmsg_level;
  15. int cmsg_type;
  16. };
  17. #define SOCK_STREAM 2
  18. #define SOCK_DGRAM 1
  19. #define SOL_SOCKET 65535
  20. #define SO_DEBUG 1
  21. #define SO_REUSEADDR 0x0004
  22. #define SO_KEEPALIVE 0x0008
  23. #define SO_DONTROUTE 0x0010
  24. #define SO_BROADCAST 0x0020
  25. #define SO_LINGER 0x0080
  26. #define SO_OOBINLINE 0x0100
  27. #define SO_REUSEPORT 0x0200
  28. #define SO_SNDBUF 0x1001
  29. #define SO_RCVBUF 0x1002
  30. #define SO_SNDLOWAT 0x1003
  31. #define SO_RCVLOWAT 0x1004
  32. #define SO_RCVTIMEO 0x1006
  33. #define SO_SNDTIMEO 0x1005
  34. #define SO_ERROR 0x1007
  35. #define SO_TYPE 0x1008
  36. #define SO_ACCEPTCONN 0x1009
  37. #define SO_PROTOCOL 0x1028
  38. #define SO_DOMAIN 0x1029
  39. #define SO_NO_CHECK 11
  40. #define SO_PRIORITY 12
  41. #define SO_BSDCOMPAT 14
  42. #define SO_PASSCRED 17
  43. #define SO_PEERCRED 18
  44. #define SO_SNDBUFFORCE 31
  45. #define SO_RCVBUFFORCE 33
  46. #define SOCK_NONBLOCK 0200
  47. #define SOCK_CLOEXEC 02000000