add acct, accept4, setns, and dup3 syscalls (linux extensions)
[musl] / include / sys / socket.h
index 88243ae..4afec4e 100644 (file)
@@ -4,6 +4,8 @@
 extern "C" {
 #endif
 
 extern "C" {
 #endif
 
+#include <features.h>
+
 #define __NEED_socklen_t
 #define __NEED_sa_family_t
 #define __NEED_size_t
 #define __NEED_socklen_t
 #define __NEED_sa_family_t
 #define __NEED_size_t
@@ -34,8 +36,11 @@ struct linger
 #define SHUT_WD 1
 #define SHUT_RDWR 2
 
 #define SHUT_WD 1
 #define SHUT_RDWR 2
 
+#ifndef SOCK_STREAM
 #define SOCK_STREAM    1
 #define SOCK_DGRAM     2
 #define SOCK_STREAM    1
 #define SOCK_DGRAM     2
+#endif
+
 #define SOCK_RAW       3
 #define SOCK_RDM       4
 #define SOCK_SEQPACKET 5
 #define SOCK_RAW       3
 #define SOCK_RDM       4
 #define SOCK_SEQPACKET 5
@@ -229,19 +234,19 @@ int shutdown (int, int);
 int bind (int, const struct sockaddr *, socklen_t);
 int connect (int, const struct sockaddr *, socklen_t);
 int listen (int, int);
 int bind (int, const struct sockaddr *, socklen_t);
 int connect (int, const struct sockaddr *, socklen_t);
 int listen (int, int);
-int accept (int, struct sockaddr *, socklen_t *);
+int accept (int, struct sockaddr *__restrict, socklen_t *__restrict);
 
 
-int getsockname (int, struct sockaddr *, socklen_t *);
-int getpeername (int, struct sockaddr *, socklen_t *);
+int getsockname (int, struct sockaddr *__restrict, socklen_t *__restrict);
+int getpeername (int, struct sockaddr *__restrict, socklen_t *__restrict);
 
 ssize_t send (int, const void *, size_t, int);
 ssize_t recv (int, void *, size_t, int);
 ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);
 
 ssize_t send (int, const void *, size_t, int);
 ssize_t recv (int, void *, size_t, int);
 ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);
-ssize_t recvfrom (int, void *, size_t, int, struct sockaddr *, socklen_t *);
+ssize_t recvfrom (int, void *__restrict, size_t, int, struct sockaddr *__restrict, socklen_t *__restrict);
 ssize_t sendmsg (int, const struct msghdr *, int);
 ssize_t recvmsg (int, struct msghdr *, int);
 
 ssize_t sendmsg (int, const struct msghdr *, int);
 ssize_t recvmsg (int, struct msghdr *, int);
 
-int getsockopt (int, int, int, void *, socklen_t *);
+int getsockopt (int, int, int, void *__restrict, socklen_t *__restrict);
 int setsockopt (int, int, int, const void *, socklen_t);
 
 int sockatmark (int);
 int setsockopt (int, int, int, const void *, socklen_t);
 
 int sockatmark (int);
@@ -250,6 +255,10 @@ int sockatmark (int);
 #define SHUT_WR 1
 #define SHUT_RDWR 2
 
 #define SHUT_WR 1
 #define SHUT_RDWR 2
 
+#ifdef _GNU_SOURCE
+int accept4(int, struct sockaddr *__restrict, socklen_t *__restrict, int);
+#endif
+
 #ifdef __cplusplus
 }
 #endif
 #ifdef __cplusplus
 }
 #endif