[rtems commit] libnetworking: Move RTEMS-specific socket wake-up
Sebastian Huber
sebh at rtems.org
Tue Jun 28 13:20:33 UTC 2016
Module: rtems
Branch: master
Commit: e79a0ca75fbc87c17e220f6a80a64bff3d10c9dd
Changeset: http://git.rtems.org/rtems/commit/?id=e79a0ca75fbc87c17e220f6a80a64bff3d10c9dd
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Tue Jun 28 07:50:59 2016 +0200
libnetworking: Move RTEMS-specific socket wake-up
Close #2748.
---
cpukit/libnetworking/kern/uipc_socket.c | 2 ++
cpukit/libnetworking/rtems/rtems_bsdnet.h | 16 ++++++++++++++++
cpukit/libnetworking/sys/socket.h | 15 ---------------
3 files changed, 18 insertions(+), 15 deletions(-)
diff --git a/cpukit/libnetworking/kern/uipc_socket.c b/cpukit/libnetworking/kern/uipc_socket.c
index a583653..1ea34a3 100644
--- a/cpukit/libnetworking/kern/uipc_socket.c
+++ b/cpukit/libnetworking/kern/uipc_socket.c
@@ -51,6 +51,8 @@
* Turn this feature into essentially dead code.
*/
#define SO_PRIVSTATE 0x1009 /* get/deny privileged state */
+
+#include <rtems/rtems_bsdnet.h>
#endif /* __rtems__ */
static int somaxconn = SOMAXCONN;
diff --git a/cpukit/libnetworking/rtems/rtems_bsdnet.h b/cpukit/libnetworking/rtems/rtems_bsdnet.h
index 5a95b3a..80886ec 100644
--- a/cpukit/libnetworking/rtems/rtems_bsdnet.h
+++ b/cpukit/libnetworking/rtems/rtems_bsdnet.h
@@ -316,6 +316,22 @@ void* rtems_bsdnet_malloc_mbuf(size_t size, int type);
#define MBUF_MALLOC_MCLREFCNT (1)
#define MBUF_MALLOC_MBUF (2)
+/*
+ * RTEMS-specific socket wake-up additions previously part of <sys/socket.h>.
+ *
+ * An alternative in the LibBSD network stack for this is KQUEUE(2).
+ */
+
+#define SO_SNDWAKEUP 0x1020 /* wakeup when ready to send */
+#define SO_RCVWAKEUP 0x1021 /* wakeup when ready to receive */
+
+struct socket;
+
+struct sockwakeup {
+ void (*sw_pfn)(struct socket *, void *);
+ void *sw_arg;
+};
+
#ifdef __cplusplus
}
#endif
diff --git a/cpukit/libnetworking/sys/socket.h b/cpukit/libnetworking/sys/socket.h
index 85de630..0e9df62 100644
--- a/cpukit/libnetworking/sys/socket.h
+++ b/cpukit/libnetworking/sys/socket.h
@@ -102,12 +102,6 @@ typedef __socklen_t socklen_t;
#define SO_TYPE 0x1008 /* get socket type */
/*
- * RTEMS addition: get and set wakeup functions.
- */
-#define SO_SNDWAKEUP 0x1020 /* wakeup when ready to send */
-#define SO_RCVWAKEUP 0x1021 /* wakeup when ready to receive */
-
-/*
* Structure used for manipulating linger option.
*/
struct linger {
@@ -116,15 +110,6 @@ struct linger {
};
/*
- * RTEMS addition: structure used to get and set wakeup function.
- */
-struct socket;
-struct sockwakeup {
- void (*sw_pfn)(struct socket *, void *);
- void *sw_arg;
-};
-
-/*
* Level number for (get/set)sockopt() to apply to socket itself.
*/
#define SOL_SOCKET 0xffff /* options for socket level */
More information about the vc
mailing list