[PATCH v2 44/45] RTEMS: Introduce <machine/_kernel_socket.h>

Sebastian Huber sebastian.huber@embedded-brains.de
Fri Aug 10 05:55:00 GMT 2018


This helps to avoid Newlib updates due to FreeBSD kernel space changes.

Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
---
 newlib/libc/sys/rtems/include/sys/socket.h | 57 ++----------------------------
 1 file changed, 3 insertions(+), 54 deletions(-)

diff --git a/newlib/libc/sys/rtems/include/sys/socket.h b/newlib/libc/sys/rtems/include/sys/socket.h
index b73d4dd5c..dd9e43862 100644
--- a/newlib/libc/sys/rtems/include/sys/socket.h
+++ b/newlib/libc/sys/rtems/include/sys/socket.h
@@ -113,14 +113,6 @@ typedef	__uintptr_t	uintptr_t;
  */
 #define	SOCK_CLOEXEC	0x10000000
 #define	SOCK_NONBLOCK	0x20000000
-#ifdef _KERNEL
-/*
- * Flags for accept1(), kern_accept4() and solisten_dequeue, in addition
- * to SOCK_CLOEXEC and SOCK_NONBLOCK.
- */
-#define ACCEPT4_INHERIT 0x1
-#define ACCEPT4_COMPAT  0x2
-#endif	/* _KERNEL */
 #endif	/* __BSD_VISIBLE */
 
 /*
@@ -454,9 +446,6 @@ struct msghdr {
 #define	MSG_NBIO	 0x00004000	/* FIONBIO mode, used by fifofs */
 #define	MSG_COMPAT       0x00008000		/* used in sendit() */
 #endif
-#ifdef _KERNEL
-#define	MSG_SOCALLBCK    0x00010000	/* for use by socket callbacks - soreceive (TCP) */
-#endif
 #if __POSIX_VISIBLE >= 200809
 #define	MSG_NOSIGNAL	 0x00020000	/* do not generate SIGPIPE on EOF */
 #endif
@@ -464,9 +453,6 @@ struct msghdr {
 #define	MSG_CMSG_CLOEXEC 0x00040000	/* make received fds close-on-exec */
 #define	MSG_WAITFORONE	 0x00080000	/* for recvmmsg() */
 #endif
-#ifdef _KERNEL
-#define	MSG_MORETOCOME	 0x00100000	/* additional data pending */
-#endif
 
 /*
  * Header for ancillary data objects in msg_control buffer.
@@ -554,10 +540,6 @@ struct sockcred {
 #define	CMSG_LEN(l)		(_ALIGN(sizeof(struct cmsghdr)) + (l))
 #endif
 
-#ifdef _KERNEL
-#define	CMSG_ALIGN(n)	_ALIGN(n)
-#endif
-
 /* "Socket"-level control message types: */
 #define	SCM_RIGHTS	0x01		/* access rights (array of int) */
 #if __BSD_VISIBLE
@@ -638,10 +620,6 @@ struct sf_hdtr {
 #define	SF_NOCACHE	0x00000010
 #define	SF_FLAGS(rh, flags)	(((rh) << 16) | (flags))
 
-#ifdef _KERNEL
-#define	SF_READAHEAD(flags)	((flags) >> 16)
-#endif /* _KERNEL */
-
 /*
  * Sendmmsg/recvmmsg specific structure(s)
  */
@@ -695,36 +673,7 @@ __END_DECLS
 #endif /* !_KERNEL */
 
 #ifdef _KERNEL
-struct socket;
-
-struct tcpcb *so_sototcpcb(struct socket *so);
-struct inpcb *so_sotoinpcb(struct socket *so);
-struct sockbuf *so_sockbuf_snd(struct socket *);
-struct sockbuf *so_sockbuf_rcv(struct socket *);
-
-int so_state_get(const struct socket *);
-void so_state_set(struct socket *, int);
-
-int so_options_get(const struct socket *);
-void so_options_set(struct socket *, int);
-
-int so_error_get(const struct socket *);
-void so_error_set(struct socket *, int);
-
-int so_linger_get(const struct socket *);
-void so_linger_set(struct socket *, int);
-
-struct protosw *so_protosw_get(const struct socket *);
-void so_protosw_set(struct socket *, struct protosw *);
-
-void so_sorwakeup_locked(struct socket *so);
-void so_sowwakeup_locked(struct socket *so);
-
-void so_sorwakeup(struct socket *so);
-void so_sowwakeup(struct socket *so);
-
-void so_lock(struct socket *so);
-void so_unlock(struct socket *so);
-
-#endif /* _KERNEL */
+/* Header file provided outside of Newlib */
+#include <machine/_kernel_socket.h>
+#endif
 #endif /* !_SYS_SOCKET_H_ */
-- 
2.13.7



More information about the Newlib mailing list