socket.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /*
  2. * Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <Kernel/API/POSIX/sys/socket.h>
  8. #include <sys/cdefs.h>
  9. #include <sys/un.h>
  10. __BEGIN_DECLS
  11. int socket(int domain, int type, int protocol);
  12. int bind(int sockfd, const struct sockaddr* addr, socklen_t);
  13. int listen(int sockfd, int backlog);
  14. int accept(int sockfd, struct sockaddr*, socklen_t*);
  15. int accept4(int sockfd, struct sockaddr*, socklen_t*, int);
  16. int connect(int sockfd, const struct sockaddr*, socklen_t);
  17. int shutdown(int sockfd, int how);
  18. ssize_t send(int sockfd, void const*, size_t, int flags);
  19. ssize_t sendmsg(int sockfd, const struct msghdr*, int flags);
  20. ssize_t sendto(int sockfd, void const*, size_t, int flags, const struct sockaddr*, socklen_t);
  21. ssize_t recv(int sockfd, void*, size_t, int flags);
  22. ssize_t recvmsg(int sockfd, struct msghdr*, int flags);
  23. ssize_t recvfrom(int sockfd, void*, size_t, int flags, struct sockaddr*, socklen_t*);
  24. int getsockopt(int sockfd, int level, int option, void*, socklen_t*);
  25. int setsockopt(int sockfd, int level, int option, void const*, socklen_t);
  26. int getsockname(int sockfd, struct sockaddr*, socklen_t*);
  27. int getpeername(int sockfd, struct sockaddr*, socklen_t*);
  28. int socketpair(int domain, int type, int protocol, int sv[2]);
  29. int sendfd(int sockfd, int fd);
  30. int recvfd(int sockfd, int options);
  31. __END_DECLS