examples/udp: When a host PC is used, take its implementation of hton/ntoh functions.
This commit is contained in:
parent
dd95e35787
commit
d7df165c45
@ -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;
|
||||
|
@ -52,32 +52,18 @@
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef EXAMPLES_UDP_HOST
|
||||
/* HTONS/L macros are unique to uIP-based networks */
|
||||
/* HTONS/L macros are unique to NuttX */
|
||||
|
||||
# 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
|
||||
# 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
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user