socket.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #ifndef _SYS_SOCKET_H
  2. #define _SYS_SOCKET_H
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. #define __NEED_socklen_t
  7. #define __NEED_sa_family_t
  8. #define __NEED_size_t
  9. #define __NEED_ssize_t
  10. #define __NEED_uid_t
  11. #define __NEED_pid_t
  12. #define __NEED_gid_t
  13. #define __NEED_struct_iovec
  14. #include <bits/alltypes.h>
  15. #include <bits/socket.h>
  16. struct sockaddr
  17. {
  18. sa_family_t sa_family;
  19. char sa_data[14];
  20. };
  21. struct sockaddr_storage
  22. {
  23. sa_family_t ss_family;
  24. long long __ss_align;
  25. char __ss_padding[128 - sizeof(sa_family_t) - sizeof(long long)];
  26. };
  27. int socket (int, int, int);
  28. int socketpair (int, int, int, int [2]);
  29. int shutdown (int, int);
  30. int bind (int, const struct sockaddr *, socklen_t);
  31. int connect (int, const struct sockaddr *, socklen_t);
  32. int listen (int, int);
  33. int accept (int, struct sockaddr *, socklen_t *);
  34. int getsockname (int, struct sockaddr *, socklen_t *);
  35. int getpeername (int, struct sockaddr *, socklen_t *);
  36. ssize_t send (int, const void *, size_t, int);
  37. ssize_t recv (int, void *, size_t, int);
  38. ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);
  39. ssize_t recvfrom (int, void *, size_t, int, struct sockaddr *, socklen_t *);
  40. ssize_t sendmsg (int, const struct msghdr *, int);
  41. ssize_t recvmsg (int, struct msghdr *, int);
  42. int getsockopt (int, int, int, void *, socklen_t *);
  43. int setsockopt (int, int, int, const void *, socklen_t);
  44. int sockatmark (int);
  45. #define SHUT_RD 0
  46. #define SHUT_WR 1
  47. #define SHUT_RDWR 2
  48. #ifdef __cplusplus
  49. }
  50. #endif
  51. #endif