From 66ef250b8c1f33eee011758477211821df836072 Mon Sep 17 00:00:00 2001 From: Simon Goldschmidt Date: Tue, 10 Oct 2023 19:59:06 +0200 Subject: [PATCH] Fix running IPv6 reassembly unit tests on 64-bit --- test/unit/lwipopts.h | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/test/unit/lwipopts.h b/test/unit/lwipopts.h index 0ee09dff..03579ee7 100644 --- a/test/unit/lwipopts.h +++ b/test/unit/lwipopts.h @@ -59,7 +59,7 @@ #define LWIP_DNS_SECURE (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_RAND_SRC_PORT) /* Minimal changes to opt.h required for tcp unit tests: */ -#define MEM_SIZE 16000 +#define MEM_SIZE 17000 #define TCP_SND_QUEUELEN 40 #define MEMP_NUM_TCP_SEG TCP_SND_QUEUELEN #define TCP_SND_BUF (12 * TCP_MSS) @@ -91,4 +91,27 @@ /* Check lwip_stats.mem.illegal instead of asserting */ #define LWIP_MEM_ILLEGAL_FREE(msg) /* to nothing */ +/* autodetect if we are running the tests on 32-bit or 64-bit */ +#if defined(_WIN32) || defined(_WIN64) +#if defined(_WIN64) +#define PTR64 +#else +#define PTR32 +#endif +#elif defined(__GNUC__) +#if defined(__x86_64__) || defined(__ppc64__) +#define PTR64 +#else +#define PTR32 +#endif +#elif UINTPTR_MAX > UINT_MAX +#define PTR64 +#else +#define PTR32 +#endif + +#ifdef PTR64 +#define IPV6_FRAG_COPYHEADER 1 +#endif + #endif /* LWIP_HDR_LWIPOPTS_H */