You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by gn...@apache.org on 2020/04/04 00:09:09 UTC
[incubator-nuttx-apps] branch master updated: examples/udp: When a
host PC is used, take its implementation of hton/ntoh functions.
This is an automated email from the ASF dual-hosted git repository.
gnutt pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx-apps.git
The following commit(s) were added to refs/heads/master by this push:
new d7df165 examples/udp: When a host PC is used, take its implementation of hton/ntoh functions.
d7df165 is described below
commit d7df165c45519826c44b444a3f669b251020ab2f
Author: Ouss4 <ab...@gmail.com>
AuthorDate: Fri Apr 3 20:10:52 2020 +0100
examples/udp: When a host PC is used, take its implementation of hton/ntoh functions.
---
examples/tcpblaster/tcpblaster_netinit.c | 77 ++++++++++++++++++--------------
examples/udp/udp.h | 32 ++++---------
examples/udp/udp_cmdline.c | 31 +++++++------
examples/udp/udp_netinit.c | 72 +++++++++++++++--------------
examples/udpblaster/udpblaster.h | 2 +-
5 files changed, 110 insertions(+), 104 deletions(-)
diff --git a/examples/tcpblaster/tcpblaster_netinit.c b/examples/tcpblaster/tcpblaster_netinit.c
index 19127e5..de89fe2 100644
--- a/examples/tcpblaster/tcpblaster_netinit.c
+++ b/examples/tcpblaster/tcpblaster_netinit.c
@@ -72,45 +72,16 @@
!defined(CONFIG_NET_ICMPv6_AUTOCONF)
/* Our host IPv6 address */
-static const uint16_t g_ipv6_hostaddr[8] =
-{
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_1),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_2),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_3),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_4),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_5),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_6),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_7),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_8),
-};
+static const uint16_t g_ipv6_hostaddr[8];
/* Default routine IPv6 address */
-static const uint16_t g_ipv6_draddr[8] =
-{
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_1),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_2),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_3),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_4),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_5),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_6),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_7),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_8),
-};
+static const uint16_t g_ipv6_draddr[8];
/* IPv6 netmask */
-static const uint16_t g_ipv6_netmask[8] =
-{
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_1),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_2),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_3),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_4),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_5),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_6),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_7),
- HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_8),
-};
+static const uint16_t g_ipv6_netmask[8];
+
#endif /* CONFIG_EXAMPLES_TCPBLASTER_INIT && CONFIG_EXAMPLES_TCPBLASTER_IPv6 && !CONFIG_NET_ICMPv6_AUTOCONF */
/****************************************************************************
@@ -126,7 +97,45 @@ void tcpblaster_initialize(void)
uint8_t mac[IFHWADDRLEN];
#endif
-/* Many embedded network interfaces must have a software assigned MAC */
+#if defined(CONFIG_EXAMPLES_TCPBLASTER_INIT) && \
+ defined(CONFIG_EXAMPLES_TCPBLASTER_IPv6) && \
+ !defined(CONFIG_NET_ICMPv6_AUTOCONF)
+ /* Our host IPv6 address */
+
+ g_ipv6_hostaddr[0] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_1);
+ g_ipv6_hostaddr[1] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_2);
+ g_ipv6_hostaddr[2] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_3);
+ g_ipv6_hostaddr[3] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_4);
+ g_ipv6_hostaddr[4] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_5);
+ g_ipv6_hostaddr[5] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_6);
+ g_ipv6_hostaddr[6] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_7);
+ g_ipv6_hostaddr[7] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6ADDR_8);
+
+ /* Default routine IPv6 address */
+
+ g_ipv6_draddr[0] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_1);
+ g_ipv6_draddr[1] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_2);
+ g_ipv6_draddr[2] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_3);
+ g_ipv6_draddr[3] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_4);
+ g_ipv6_draddr[4] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_5);
+ g_ipv6_draddr[5] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_6);
+ g_ipv6_draddr[6] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_7);
+ g_ipv6_draddr[7] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_DRIPv6ADDR_8);
+
+ /* IPv6 netmask */
+
+ g_ipv6_netmask[0] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_1);
+ g_ipv6_netmask[1] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_2);
+ g_ipv6_netmask[2] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_3);
+ g_ipv6_netmask[3] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_4);
+ g_ipv6_netmask[4] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_5);
+ g_ipv6_netmask[5] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_6);
+ g_ipv6_netmask[6] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_7);
+ g_ipv6_netmask[7] = HTONS(CONFIG_EXAMPLES_TCPBLASTER_IPv6NETMASK_8);
+
+#endif
+
+ /* Many embedded network interfaces must have a software assigned MAC */
#ifdef CONFIG_EXAMPLES_TCPBLASTER_NOMAC
mac[0] = 0x00;
diff --git a/examples/udp/udp.h b/examples/udp/udp.h
index 82145a4..594b637 100644
--- a/examples/udp/udp.h
+++ b/examples/udp/udp.h
@@ -52,32 +52,18 @@
****************************************************************************/
#ifdef EXAMPLES_UDP_HOST
-/* HTONS/L macros are unique to uIP-based networks */
-
-# ifdef CONFIG_ENDIAN_BIG
-# undef HTONS
-# define HTONS(ns) (ns)
-# undef HTONL
-# define HTONL(nl) (nl)
-# else
-# undef HTONS
-# define HTONS(ns) \
- (unsigned short) \
- (((((unsigned short)(ns)) & 0x00ff) << 8) | \
- ((((unsigned short)(ns)) >> 8) & 0x00ff))
-# undef HTONL
-# define HTONL(nl) \
- (unsigned long) \
- (((((unsigned long)(nl)) & 0x000000ffUL) << 24) | \
- ((((unsigned long)(nl)) & 0x0000ff00UL) << 8) | \
- ((((unsigned long)(nl)) & 0x00ff0000UL) >> 8) | \
- ((((unsigned long)(nl)) & 0xff000000UL) >> 24))
-# endif
+/* HTONS/L macros are unique to NuttX */
+
+# undef HTONS
+# undef HTONL
+# define HTONS(ns) htons(ns)
+# define HTONL(nl) htonl(nl)
# undef NTOHS
-# define NTOHS(hs) HTONS(hs)
# undef NTOHL
-# define NTOHL(hl) HTONL(hl)
+# define NTOHS(hs) ntohs(hs)
+# define NTOHL(hl) ntohl(hl)
+
# define FAR
#endif
diff --git a/examples/udp/udp_cmdline.c b/examples/udp/udp_cmdline.c
index 8645b97..1c6cffa 100644
--- a/examples/udp/udp_cmdline.c
+++ b/examples/udp/udp_cmdline.c
@@ -50,19 +50,9 @@
****************************************************************************/
#ifdef CONFIG_EXAMPLES_UDP_IPv6
-uint16_t g_udpserver_ipv6[8] =
-{
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_1),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_2),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_3),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_4),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_5),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_6),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_7),
- HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_8)
-};
+uint16_t g_udpserver_ipv6[8];
#else
-uint32_t g_udpserver_ipv4 = HTONL(CONFIG_EXAMPLES_UDP_SERVERIP);
+uint32_t g_udpserver_ipv4;
#endif
/****************************************************************************
@@ -89,8 +79,23 @@ static void show_usage(FAR const char *progname)
void udp_cmdline(int argc, char **argv)
{
+ /* Init the default IP address. */
+
+#ifdef CONFIG_EXAMPLES_UDP_IPv6
+ g_udpserver_ipv6[0] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_1);
+ g_udpserver_ipv6[1] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_2);
+ g_udpserver_ipv6[2] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_3);
+ g_udpserver_ipv6[3] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_4);
+ g_udpserver_ipv6[4] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_5);
+ g_udpserver_ipv6[5] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_6);
+ g_udpserver_ipv6[6] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_7);
+ g_udpserver_ipv6[7] = HTONS(CONFIG_EXAMPLES_UDP_SERVERIPv6ADDR_8);
+#else
+ g_udpserver_ipv4 = HTONL(CONFIG_EXAMPLES_UDP_SERVERIP);
+#endif
+
/* Currently only a single command line option is supported: The server
- * IP address.
+ * IP address. Used to override default.
*/
if (argc == 2)
diff --git a/examples/udp/udp_netinit.c b/examples/udp/udp_netinit.c
index 2d7e76b..c155117 100644
--- a/examples/udp/udp_netinit.c
+++ b/examples/udp/udp_netinit.c
@@ -69,45 +69,16 @@
#if defined(CONFIG_EXAMPLES_UDP_IPv6) && !defined(CONFIG_NET_ICMPv6_AUTOCONF)
/* Our host IPv6 address */
-static const uint16_t g_ipv6_hostaddr[8] =
-{
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_1),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_2),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_3),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_4),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_5),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_6),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_7),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_8),
-};
+static const uint16_t g_ipv6_hostaddr[8];
/* Default routine IPv6 address */
-static const uint16_t g_ipv6_draddr[8] =
-{
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_1),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_2),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_3),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_4),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_5),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_6),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_7),
- HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_8),
-};
+static const uint16_t g_ipv6_draddr[8];
/* IPv6 netmask */
-static const uint16_t g_ipv6_netmask[8] =
-{
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_1),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_2),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_3),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_4),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_5),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_6),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_7),
- HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_8),
-};
+static const uint16_t g_ipv6_netmask[8];
+
#endif /* CONFIG_EXAMPLES_UDP_IPv6 && !CONFIG_NET_ICMPv6_AUTOCONF */
static bool g_initialized;
@@ -122,6 +93,41 @@ static bool g_initialized;
int udp_netinit(void)
{
+#if defined(CONFIG_EXAMPLES_UDP_IPv6) && !defined(CONFIG_NET_ICMPv6_AUTOCONF)
+ /* Our host IPv6 address */
+
+ g_ipv6_hostaddr[0] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_1);
+ g_ipv6_hostaddr[1] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_2);
+ g_ipv6_hostaddr[2] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_3);
+ g_ipv6_hostaddr[3] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_4);
+ g_ipv6_hostaddr[4] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_5);
+ g_ipv6_hostaddr[5] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_6);
+ g_ipv6_hostaddr[6] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_7);
+ g_ipv6_hostaddr[7] = HTONS(CONFIG_EXAMPLES_UDP_IPv6ADDR_8);
+
+ /* Default routine IPv6 address */
+
+ g_ipv6_draddr[0] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_1);
+ g_ipv6_draddr[1] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_2);
+ g_ipv6_draddr[2] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_3);
+ g_ipv6_draddr[3] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_4);
+ g_ipv6_draddr[4] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_5);
+ g_ipv6_draddr[5] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_6);
+ g_ipv6_draddr[6] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_7);
+ g_ipv6_draddr[7] = HTONS(CONFIG_EXAMPLES_UDP_DRIPv6ADDR_8);
+
+ /* IPv6 netmask */
+
+ g_ipv6_netmask[0] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_1);
+ g_ipv6_netmask[1] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_2);
+ g_ipv6_netmask[2] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_3);
+ g_ipv6_netmask[3] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_4);
+ g_ipv6_netmask[4] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_5);
+ g_ipv6_netmask[5] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_6);
+ g_ipv6_netmask[6] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_7);
+ g_ipv6_netmask[7] = HTONS(CONFIG_EXAMPLES_UDP_IPv6NETMASK_8);
+#endif /* CONFIG_EXAMPLES_UDP_IPv6 && !CONFIG_NET_ICMPv6_AUTOCONF */
+
if (!g_initialized)
{
#ifdef CONFIG_EXAMPLES_UDP_IPv6
diff --git a/examples/udpblaster/udpblaster.h b/examples/udpblaster/udpblaster.h
index 6a4568f..68012d4 100644
--- a/examples/udpblaster/udpblaster.h
+++ b/examples/udpblaster/udpblaster.h
@@ -49,7 +49,7 @@
****************************************************************************/
#ifdef UDPBLASTER_HOST
-/* HTONS/L macros are unique to uIP */
+/* HTONS/L macros are unique to NuttX */
# undef HTONS
# undef HTONL