tests/lwip_sock_ip: make IPv4 address byteorder static
This commit is contained in:
parent
6789a0b246
commit
73ec2ac652
@ -28,10 +28,19 @@ extern "C" {
|
||||
#define _TEST_PROTO (254) /* https://tools.ietf.org/html/rfc3692#section-2.1 */
|
||||
#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 }
|
||||
|
||||
@ -68,7 +68,7 @@ static void test_sock_ip_create4__EINVAL_netif(void)
|
||||
static const sock_ip_ep_t local = { .family = AF_INET, .netif = _TEST_NETIF };
|
||||
const sock_ip_ep_t remote = { .family = AF_INET,
|
||||
.netif = (_TEST_NETIF + 1),
|
||||
.addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) } };
|
||||
.addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE } };
|
||||
|
||||
assert(-EINVAL == sock_ip_create(&_sock, &local, &remote, _TEST_PROTO,
|
||||
SOCK_FLAGS_REUSE_EP));
|
||||
@ -123,7 +123,7 @@ static void test_sock_ip_create4__only_local_reuse_ep(void)
|
||||
static void test_sock_ip_create4__only_remote(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .family = AF_INET,
|
||||
.addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) } };
|
||||
.addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE } };
|
||||
sock_ip_ep_t ep;
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, NULL, &remote, _TEST_PROTO,
|
||||
@ -132,7 +132,7 @@ static void test_sock_ip_create4__only_remote(void)
|
||||
assert(0 == sock_ip_get_local(&_sock, &ep));
|
||||
assert(0 == sock_ip_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);
|
||||
}
|
||||
|
||||
@ -140,7 +140,7 @@ static void test_sock_ip_create4__full(void)
|
||||
{
|
||||
static const sock_ip_ep_t local = { .family = AF_INET, .netif = _TEST_NETIF };
|
||||
const sock_ip_ep_t remote = { .family = AF_INET,
|
||||
.addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) } };
|
||||
.addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE } };
|
||||
sock_ip_ep_t ep;
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, &remote, _TEST_PROTO,
|
||||
@ -152,7 +152,7 @@ static void test_sock_ip_create4__full(void)
|
||||
assert(_TEST_NETIF == ep.netif);
|
||||
assert(0 == sock_ip_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);
|
||||
}
|
||||
|
||||
@ -205,7 +205,7 @@ static void test_sock_ip_recv4__ETIMEDOUT(void)
|
||||
static void test_sock_ip_recv4__socketed(void)
|
||||
{
|
||||
static const sock_ip_ep_t local = { .family = AF_INET };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, &remote, _TEST_PROTO,
|
||||
@ -220,7 +220,7 @@ static void test_sock_ip_recv4__socketed(void)
|
||||
static void test_sock_ip_recv4__socketed_with_remote(void)
|
||||
{
|
||||
static const sock_ip_ep_t local = { .family = AF_INET };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
sock_ip_ep_t result;
|
||||
|
||||
@ -231,14 +231,14 @@ static void test_sock_ip_recv4__socketed_with_remote(void)
|
||||
assert(sizeof("ABCD") == sock_ip_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_NETIF == result.netif);
|
||||
assert(_check_net());
|
||||
}
|
||||
|
||||
static void test_sock_ip_recv4__unsocketed(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, NULL, _TEST_PROTO,
|
||||
@ -262,7 +262,7 @@ static void test_sock_ip_recv4__unsocketed_with_remote(void)
|
||||
assert(sizeof("ABCD") == sock_ip_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_NETIF == result.netif);
|
||||
assert(_check_net());
|
||||
}
|
||||
@ -280,7 +280,7 @@ static void test_sock_ip_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_NETIF == result.netif);
|
||||
assert(_check_net());
|
||||
}
|
||||
@ -297,14 +297,14 @@ static void test_sock_ip_recv4__non_blocking(void)
|
||||
assert(sizeof("ABCD") == sock_ip_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_NETIF == result.netif);
|
||||
assert(_check_net());
|
||||
}
|
||||
|
||||
static void test_sock_ip_send4__EAFNOSUPPORT(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_UNSPEC };
|
||||
|
||||
assert(-EAFNOSUPPORT == sock_ip_send(NULL, "ABCD", sizeof("ABCD"),
|
||||
@ -314,7 +314,7 @@ static void test_sock_ip_send4__EAFNOSUPPORT(void)
|
||||
|
||||
static void test_sock_ip_send4__EINVAL_addr(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
static const sock_ip_ep_t remote = { .family = AF_INET,
|
||||
@ -329,10 +329,10 @@ static void test_sock_ip_send4__EINVAL_addr(void)
|
||||
|
||||
static void test_sock_ip_send4__EINVAL_netif(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF + 1 };
|
||||
|
||||
@ -345,7 +345,7 @@ static void test_sock_ip_send4__EINVAL_netif(void)
|
||||
|
||||
static void test_sock_ip_send4__EHOSTUNREACH(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_WRONG) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_WRONG },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(-EHOSTUNREACH == sock_ip_send(NULL, "ABCD", sizeof("ABCD"), _TEST_PROTO,
|
||||
@ -363,7 +363,7 @@ static void test_sock_ip_send4__ENOTCONN(void)
|
||||
|
||||
static void test_sock_ip_send4__socketed_no_local_no_netif(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, NULL, &remote, _TEST_PROTO,
|
||||
@ -378,9 +378,9 @@ static void test_sock_ip_send4__socketed_no_local_no_netif(void)
|
||||
|
||||
static void test_sock_ip_send4__socketed_no_netif(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, &remote, _TEST_PROTO,
|
||||
@ -395,7 +395,7 @@ static void test_sock_ip_send4__socketed_no_netif(void)
|
||||
|
||||
static void test_sock_ip_send4__socketed_no_local(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
|
||||
@ -411,10 +411,10 @@ static void test_sock_ip_send4__socketed_no_local(void)
|
||||
|
||||
static void test_sock_ip_send4__socketed(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, &remote, _TEST_PROTO,
|
||||
@ -429,12 +429,12 @@ static void test_sock_ip_send4__socketed(void)
|
||||
|
||||
static void test_sock_ip_send4__socketed_other_remote(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
const sock_ip_ep_t sock_remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_WRONG) },
|
||||
const sock_ip_ep_t sock_remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_WRONG },
|
||||
.family = AF_INET };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, &sock_remote, _TEST_PROTO,
|
||||
@ -449,7 +449,7 @@ static void test_sock_ip_send4__socketed_other_remote(void)
|
||||
|
||||
static void test_sock_ip_send4__unsocketed_no_local_no_netif(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, NULL, NULL, _TEST_PROTO,
|
||||
@ -464,9 +464,9 @@ static void test_sock_ip_send4__unsocketed_no_local_no_netif(void)
|
||||
|
||||
static void test_sock_ip_send4__unsocketed_no_netif(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, NULL, _TEST_PROTO,
|
||||
@ -481,7 +481,7 @@ static void test_sock_ip_send4__unsocketed_no_netif(void)
|
||||
|
||||
static void test_sock_ip_send4__unsocketed_no_local(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
|
||||
@ -497,10 +497,10 @@ static void test_sock_ip_send4__unsocketed_no_local(void)
|
||||
|
||||
static void test_sock_ip_send4__unsocketed(void)
|
||||
{
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_LOCAL) },
|
||||
const sock_ip_ep_t local = { .addr = { .ipv4_u32 = _TEST_ADDR4_LOCAL },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(0 == sock_ip_create(&_sock, &local, NULL, _TEST_PROTO,
|
||||
@ -515,7 +515,7 @@ static void test_sock_ip_send4__unsocketed(void)
|
||||
|
||||
static void test_sock_ip_send4__no_sock_no_netif(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET };
|
||||
|
||||
assert(sizeof("ABCD") == sock_ip_send(NULL, "ABCD", sizeof("ABCD"),
|
||||
@ -528,7 +528,7 @@ static void test_sock_ip_send4__no_sock_no_netif(void)
|
||||
|
||||
static void test_sock_ip_send4__no_sock(void)
|
||||
{
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = htonl(_TEST_ADDR4_REMOTE) },
|
||||
const sock_ip_ep_t remote = { .addr = { .ipv4_u32 = _TEST_ADDR4_REMOTE },
|
||||
.family = AF_INET,
|
||||
.netif = _TEST_NETIF };
|
||||
|
||||
|
||||
@ -189,9 +189,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);
|
||||
@ -222,7 +222,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
|
||||
@ -263,8 +263,8 @@ bool _inject_4packet(uint32_t src, uint32_t dst, uint8_t proto, void *data,
|
||||
IPH_LEN_SET(ip_hdr, htons(sizeof(struct ip_hdr) + data_len));
|
||||
IPH_TTL_SET(ip_hdr, 64);
|
||||
IPH_PROTO_SET(ip_hdr, proto);
|
||||
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)));
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user