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)
|
!defined(CONFIG_NET_ICMPv6_AUTOCONF)
|
||||||
/* Our host IPv6 address */
|
/* Our host IPv6 address */
|
||||||
|
|
||||||
static const uint16_t g_ipv6_hostaddr[8] =
|
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),
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Default routine IPv6 address */
|
/* Default routine IPv6 address */
|
||||||
|
|
||||||
static const uint16_t g_ipv6_draddr[8] =
|
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),
|
|
||||||
};
|
|
||||||
|
|
||||||
/* IPv6 netmask */
|
/* IPv6 netmask */
|
||||||
|
|
||||||
static const uint16_t g_ipv6_netmask[8] =
|
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),
|
|
||||||
};
|
|
||||||
#endif /* CONFIG_EXAMPLES_TCPBLASTER_INIT && CONFIG_EXAMPLES_TCPBLASTER_IPv6 && !CONFIG_NET_ICMPv6_AUTOCONF */
|
#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];
|
uint8_t mac[IFHWADDRLEN];
|
||||||
#endif
|
#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
|
#ifdef CONFIG_EXAMPLES_TCPBLASTER_NOMAC
|
||||||
mac[0] = 0x00;
|
mac[0] = 0x00;
|
||||||
|
@ -52,32 +52,18 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifdef EXAMPLES_UDP_HOST
|
#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
|
# undef HTONS
|
||||||
# define HTONS(ns) (ns)
|
|
||||||
# undef HTONL
|
# undef HTONL
|
||||||
# define HTONL(nl) (nl)
|
# define HTONS(ns) htons(ns)
|
||||||
# else
|
# define HTONL(nl) htonl(nl)
|
||||||
# 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
|
|
||||||
|
|
||||||
# undef NTOHS
|
# undef NTOHS
|
||||||
# define NTOHS(hs) HTONS(hs)
|
|
||||||
# undef NTOHL
|
# undef NTOHL
|
||||||
# define NTOHL(hl) HTONL(hl)
|
# define NTOHS(hs) ntohs(hs)
|
||||||
|
# define NTOHL(hl) ntohl(hl)
|
||||||
|
|
||||||
# define FAR
|
# define FAR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -50,19 +50,9 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifdef CONFIG_EXAMPLES_UDP_IPv6
|
#ifdef CONFIG_EXAMPLES_UDP_IPv6
|
||||||
uint16_t g_udpserver_ipv6[8] =
|
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)
|
|
||||||
};
|
|
||||||
#else
|
#else
|
||||||
uint32_t g_udpserver_ipv4 = HTONL(CONFIG_EXAMPLES_UDP_SERVERIP);
|
uint32_t g_udpserver_ipv4;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@ -89,8 +79,23 @@ static void show_usage(FAR const char *progname)
|
|||||||
|
|
||||||
void udp_cmdline(int argc, char **argv)
|
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
|
/* Currently only a single command line option is supported: The server
|
||||||
* IP address.
|
* IP address. Used to override default.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (argc == 2)
|
if (argc == 2)
|
||||||
|
@ -69,45 +69,16 @@
|
|||||||
#if defined(CONFIG_EXAMPLES_UDP_IPv6) && !defined(CONFIG_NET_ICMPv6_AUTOCONF)
|
#if defined(CONFIG_EXAMPLES_UDP_IPv6) && !defined(CONFIG_NET_ICMPv6_AUTOCONF)
|
||||||
/* Our host IPv6 address */
|
/* Our host IPv6 address */
|
||||||
|
|
||||||
static const uint16_t g_ipv6_hostaddr[8] =
|
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),
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Default routine IPv6 address */
|
/* Default routine IPv6 address */
|
||||||
|
|
||||||
static const uint16_t g_ipv6_draddr[8] =
|
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),
|
|
||||||
};
|
|
||||||
|
|
||||||
/* IPv6 netmask */
|
/* IPv6 netmask */
|
||||||
|
|
||||||
static const uint16_t g_ipv6_netmask[8] =
|
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),
|
|
||||||
};
|
|
||||||
#endif /* CONFIG_EXAMPLES_UDP_IPv6 && !CONFIG_NET_ICMPv6_AUTOCONF */
|
#endif /* CONFIG_EXAMPLES_UDP_IPv6 && !CONFIG_NET_ICMPv6_AUTOCONF */
|
||||||
|
|
||||||
static bool g_initialized;
|
static bool g_initialized;
|
||||||
@ -122,6 +93,41 @@ static bool g_initialized;
|
|||||||
|
|
||||||
int udp_netinit(void)
|
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)
|
if (!g_initialized)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_EXAMPLES_UDP_IPv6
|
#ifdef CONFIG_EXAMPLES_UDP_IPv6
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifdef UDPBLASTER_HOST
|
#ifdef UDPBLASTER_HOST
|
||||||
/* HTONS/L macros are unique to uIP */
|
/* HTONS/L macros are unique to NuttX */
|
||||||
|
|
||||||
# undef HTONS
|
# undef HTONS
|
||||||
# undef HTONL
|
# undef HTONL
|
||||||
|
Loading…
x
Reference in New Issue
Block a user