1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-25 06:23:53 +01:00

tests/lwip_sock_udp: make IPv4 address byteorder static

This commit is contained in:
Martine Lenders 2018-10-03 14:26:26 +02:00
parent 77d97a6fa2
commit a5370ff6df
3 changed files with 54 additions and 45 deletions

View File

@ -29,10 +29,19 @@ extern "C" {
#define _TEST_PORT_REMOTE (0xa615)
#define _TEST_NETIF (1)
#define _TEST_TIMEOUT (1000000U)
#define _TEST_ADDR4_LOCAL (0xc0a84f96U) /* 192.168.79.150 */
#define _TEST_ADDR4_REMOTE (0xc0a84f6bU) /* 192.168.79.107 */
#define _TEST_ADDR4_WRONG (0x254c6b4cU)
#define _TEST_ADDR4_MASK (0xffffff00U) /* 255.255.255.0 */
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
# define _TEST_ADDR4_LOCAL (0x964fa8c0U) /* 192.168.79.150 */
# define _TEST_ADDR4_REMOTE (0x6b4fa8c0U) /* 192.168.79.107 */
# define _TEST_ADDR4_WRONG (0x4c6b4c25U)
# define _TEST_ADDR4_MASK (0x00ffffffU) /* 255.255.255.0 */
#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
# define _TEST_ADDR4_LOCAL (0xc0a84f96U) /* 192.168.79.150 */
# define _TEST_ADDR4_REMOTE (0xc0a84f6bU) /* 192.168.79.107 */
# define _TEST_ADDR4_WRONG (0x254c6b4cU)
# define _TEST_ADDR4_MASK (0xffffff00U) /* 255.255.255.0 */
#else
# error "Byte order is neither little nor big!"
#endif
#define _TEST_ADDR4_GW (0UL) /* so we can test unreachability */
#define _TEST_ADDR6_LOCAL { 0x2f, 0xc4, 0x11, 0x5a, 0xe6, 0x91, 0x8d, 0x5d, \
0x8c, 0xd1, 0x47, 0x07, 0xb7, 0x6f, 0x9b, 0x48 }

View File

@ -88,7 +88,7 @@ static void test_sock_udp_create4__EINVAL_netif(void)
const sock_udp_ep_t remote = { .family = AF_INET,
.netif = (_TEST_NETIF + 1),
.port = _TEST_PORT_REMOTE,
.addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) } };
.addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE } };
assert(-EINVAL == sock_udp_create(&_sock, &local, &remote, SOCK_FLAGS_REUSE_EP));
}
@ -159,7 +159,7 @@ static void test_sock_udp_create4__only_remote(void)
{
const sock_udp_ep_t remote = { .family = AF_INET,
.port = _TEST_PORT_REMOTE,
.addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) } };
.addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE } };
sock_udp_ep_t ep;
assert(0 == sock_udp_create(&_sock, NULL, &remote, SOCK_FLAGS_REUSE_EP));
@ -167,7 +167,7 @@ static void test_sock_udp_create4__only_remote(void)
assert(0 == sock_udp_get_local(&_sock, &ep));
assert(0 == sock_udp_get_remote(&_sock, &ep));
assert(AF_INET == ep.family);
assert(htonl(_TEST_ADDR4_REMOTE) == ep.addr.ipv4_u32);
assert(_TEST_ADDR4_REMOTE == ep.addr.ipv4_u32);
assert(SOCK_ADDR_ANY_NETIF == ep.netif);
assert(_TEST_PORT_REMOTE == ep.port);
}
@ -178,7 +178,7 @@ static void test_sock_udp_create4__full(void)
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .family = AF_INET,
.port = _TEST_PORT_REMOTE,
.addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) } };
.addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE } };
sock_udp_ep_t ep;
assert(0 == sock_udp_create(&_sock, &local, &remote, SOCK_FLAGS_REUSE_EP));
@ -190,7 +190,7 @@ static void test_sock_udp_create4__full(void)
assert(_TEST_PORT_LOCAL == ep.port);
assert(0 == sock_udp_get_remote(&_sock, &ep));
assert(AF_INET == ep.family);
assert(htonl(_TEST_ADDR4_REMOTE) == ep.addr.ipv4_u32);
assert(_TEST_ADDR4_REMOTE == ep.addr.ipv4_u32);
assert(SOCK_ADDR_ANY_NETIF == ep.netif);
assert(_TEST_PORT_REMOTE == ep.port);
}
@ -246,7 +246,7 @@ static void test_sock_udp_recv4__socketed(void)
{
static const sock_udp_ep_t local = { .family = AF_INET,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -264,7 +264,7 @@ static void test_sock_udp_recv4__socketed_with_remote(void)
{
static const sock_udp_ep_t local = { .family = AF_INET,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
sock_udp_ep_t result;
@ -277,7 +277,7 @@ static void test_sock_udp_recv4__socketed_with_remote(void)
sizeof(_test_buffer),
SOCK_NO_TIMEOUT, &result));
assert(AF_INET == result.family);
assert(htonl(_TEST_ADDR4_REMOTE) == result.addr.ipv4_u32);
assert(_TEST_ADDR4_REMOTE == result.addr.ipv4_u32);
assert(_TEST_PORT_REMOTE == result.port);
#if LWIP_NETBUF_RECVINFO
assert(_TEST_NETIF == result.netif);
@ -287,7 +287,7 @@ static void test_sock_udp_recv4__socketed_with_remote(void)
static void test_sock_udp_recv4__unsocketed(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.port = _TEST_PORT_LOCAL };
@ -315,7 +315,7 @@ static void test_sock_udp_recv4__unsocketed_with_remote(void)
sizeof(_test_buffer),
SOCK_NO_TIMEOUT, &result));
assert(AF_INET == result.family);
assert(htonl(_TEST_ADDR4_REMOTE) == result.addr.ipv4_u32);
assert(_TEST_ADDR4_REMOTE == result.addr.ipv4_u32);
assert(_TEST_PORT_REMOTE == result.port);
#if LWIP_NETBUF_RECVINFO
assert(_TEST_NETIF == result.netif);
@ -337,7 +337,7 @@ static void test_sock_udp_recv4__with_timeout(void)
sizeof(_test_buffer), _TEST_TIMEOUT,
&result));
assert(AF_INET == result.family);
assert(htonl(_TEST_ADDR4_REMOTE) == result.addr.ipv4_u32);
assert(_TEST_ADDR4_REMOTE == result.addr.ipv4_u32);
assert(_TEST_PORT_REMOTE == result.port);
#if LWIP_NETBUF_RECVINFO
assert(_TEST_NETIF == result.netif);
@ -358,7 +358,7 @@ static void test_sock_udp_recv4__non_blocking(void)
assert(sizeof("ABCD") == sock_udp_recv(&_sock, _test_buffer,
sizeof(_test_buffer), 0, &result));
assert(AF_INET == result.family);
assert(htonl(_TEST_ADDR4_REMOTE) == result.addr.ipv4_u32);
assert(_TEST_ADDR4_REMOTE == result.addr.ipv4_u32);
assert(_TEST_PORT_REMOTE == result.port);
#if LWIP_NETBUF_RECVINFO
assert(_TEST_NETIF == result.netif);
@ -368,7 +368,7 @@ static void test_sock_udp_recv4__non_blocking(void)
static void test_sock_udp_send4__EAFNOSUPPORT(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_UNSPEC,
.port = _TEST_PORT_REMOTE };
@ -379,7 +379,7 @@ static void test_sock_udp_send4__EAFNOSUPPORT(void)
static void test_sock_udp_send4__EINVAL_addr(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.port = _TEST_PORT_REMOTE,
.netif = _TEST_NETIF };
@ -394,11 +394,11 @@ static void test_sock_udp_send4__EINVAL_addr(void)
static void test_sock_udp_send4__EINVAL_netif(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.port = _TEST_PORT_REMOTE,
.netif = _TEST_NETIF };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE,
.netif = _TEST_NETIF + 1 };
@ -410,7 +410,7 @@ static void test_sock_udp_send4__EINVAL_netif(void)
static void test_sock_udp_send4__EHOSTUNREACH(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_WRONG) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_WRONG },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -420,7 +420,7 @@ static void test_sock_udp_send4__EHOSTUNREACH(void)
static void test_sock_udp_send4__EINVAL_port(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET };
assert(-EINVAL == sock_udp_send(NULL, "ABCD", sizeof("ABCD"), &remote));
@ -436,7 +436,7 @@ static void test_sock_udp_send4__ENOTCONN(void)
static void test_sock_udp_send4__socketed_no_local_no_netif(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -451,10 +451,10 @@ static void test_sock_udp_send4__socketed_no_local_no_netif(void)
static void test_sock_udp_send4__socketed_no_netif(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -470,7 +470,7 @@ static void test_sock_udp_send4__socketed_no_netif(void)
static void test_sock_udp_send4__socketed_no_local(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.netif = _TEST_NETIF,
.port = _TEST_PORT_REMOTE };
@ -487,11 +487,11 @@ static void test_sock_udp_send4__socketed_no_local(void)
static void test_sock_udp_send4__socketed(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.netif = _TEST_NETIF,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -507,14 +507,14 @@ static void test_sock_udp_send4__socketed(void)
static void test_sock_udp_send4__socketed_other_remote(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.netif = _TEST_NETIF,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t sock_remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_WRONG) },
const sock_udp_ep_t sock_remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_WRONG },
.family = AF_INET,
.port = _TEST_PORT_REMOTE + _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -530,7 +530,7 @@ static void test_sock_udp_send4__socketed_other_remote(void)
static void test_sock_udp_send4__unsocketed_no_local_no_netif(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -546,10 +546,10 @@ static void test_sock_udp_send4__unsocketed_no_local_no_netif(void)
static void test_sock_udp_send4__unsocketed_no_netif(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -565,7 +565,7 @@ static void test_sock_udp_send4__unsocketed_no_netif(void)
static void test_sock_udp_send4__unsocketed_no_local(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.netif = _TEST_NETIF,
.port = _TEST_PORT_REMOTE };
@ -582,11 +582,11 @@ static void test_sock_udp_send4__unsocketed_no_local(void)
static void test_sock_udp_send4__unsocketed(void)
{
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
const sock_udp_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
.family = AF_INET,
.netif = _TEST_NETIF,
.port = _TEST_PORT_LOCAL };
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -602,7 +602,7 @@ static void test_sock_udp_send4__unsocketed(void)
static void test_sock_udp_send4__no_sock_no_netif(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.port = _TEST_PORT_REMOTE };
@ -617,7 +617,7 @@ static void test_sock_udp_send4__no_sock_no_netif(void)
static void test_sock_udp_send4__no_sock(void)
{
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
const sock_udp_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
.family = AF_INET,
.netif = _TEST_NETIF,
.port = _TEST_PORT_REMOTE };

View File

@ -191,9 +191,9 @@ void _net_init(void)
assert(netdev.netdev.driver);
#if LWIP_IPV4
ip4_addr_t local4, mask4, gw4;
local4.addr = htonl(_TEST_ADDR4_LOCAL);
mask4.addr = htonl(_TEST_ADDR4_MASK);
gw4.addr = htonl(_TEST_ADDR4_GW);
local4.addr = _TEST_ADDR4_LOCAL;
mask4.addr = _TEST_ADDR4_MASK;
gw4.addr = _TEST_ADDR4_GW;
netif_add(&netif, &local4, &mask4, &gw4, &netdev, lwip_netdev_init, tcpip_input);
#else
netif_add(&netif, &netdev, lwip_netdev_init, tcpip_input);
@ -224,7 +224,7 @@ void _prepare_send_checks(void)
netdev_test_set_send_cb(&netdev, _netdev_send);
#if LWIP_ARP
const ip4_addr_t remote4 = { .addr = htonl(_TEST_ADDR4_REMOTE) };
const ip4_addr_t remote4 = { .addr = _TEST_ADDR4_REMOTE };
assert(ERR_OK == etharp_add_static_entry(&remote4, (struct eth_addr *)mac));
#endif
#if LWIP_IPV6
@ -268,8 +268,8 @@ bool _inject_4packet(uint32_t src, uint32_t dst, uint16_t src_port,
IPH_LEN_SET(ip_hdr, htons(sizeof(struct ip_hdr) + udp_len));
IPH_TTL_SET(ip_hdr, 64);
IPH_PROTO_SET(ip_hdr, PROTNUM_UDP);
ip_hdr->src.addr = htonl(src);
ip_hdr->dest.addr = htonl(dst);
ip_hdr->src.addr = src;
ip_hdr->dest.addr = dst;
IPH_CHKSUM_SET(ip_hdr, 0);
IPH_CHKSUM_SET(ip_hdr, inet_chksum(ip_hdr, sizeof(struct ip_hdr)));