Skip to content

Commit acfc27a

Browse files
committed
Adjust test_wolfguard with added lo interface
1 parent b582fc3 commit acfc27a

2 files changed

Lines changed: 35 additions & 27 deletions

File tree

config.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
#define MAX_NEIGHBORS 16
3333

3434
#ifndef WOLFIP_MAX_INTERFACES
35-
#define WOLFIP_MAX_INTERFACES 2
35+
#define WOLFIP_MAX_INTERFACES 3
3636
#endif
3737

3838
#ifndef WOLFIP_ENABLE_FORWARDING

src/test/test_wolfguard_loopback.c

Lines changed: 34 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,19 @@
1616
#endif
1717

1818
#undef WOLFIP_MAX_INTERFACES
19-
#define WOLFIP_MAX_INTERFACES 2
19+
#define WOLFIP_MAX_INTERFACES 3
2020

2121
#include "check.h"
2222
#include "../../config.h"
2323

24+
#if WOLFIP_ENABLE_LOOPBACK
25+
#define TEST_PHYS_IF 1U
26+
#define TEST_WG_IF 2U
27+
#else
28+
#define TEST_PHYS_IF 0U
29+
#define TEST_WG_IF 1U
30+
#endif
31+
2432
/* Override after config.h */
2533
#undef MAX_UDPSOCKETS
2634
#define MAX_UDPSOCKETS 8
@@ -206,46 +214,46 @@ static void setup_loopback_stacks(uint64_t *now)
206214
wolfIP_init(&stack_a);
207215

208216
/* Physical interface (non_ethernet, index 0) */
209-
ll = wolfIP_getdev_ex(&stack_a, 0);
217+
ll = wolfIP_getdev_ex(&stack_a, TEST_PHYS_IF);
210218
ll->non_ethernet = 1;
211219
ll->poll = phys_a_poll;
212220
ll->send = phys_a_send;
213221
strncpy(ll->ifname, "eth_a", sizeof(ll->ifname) - 1);
214222

215-
wolfIP_ipconfig_set(&stack_a, MAKE_IP4(192,168,1,1),
216-
MAKE_IP4(255,255,255,0), 0);
223+
wolfIP_ipconfig_set_ex(&stack_a, TEST_PHYS_IF, MAKE_IP4(192,168,1,1),
224+
MAKE_IP4(255,255,255,0), 0);
217225

218226
/* wolfGuard on interface 1 (wg0) */
219-
ck_assert_int_eq(wolfguard_init(&wg_dev_a, &stack_a, 1, 51820), 0);
227+
ck_assert_int_eq(wolfguard_init(&wg_dev_a, &stack_a, TEST_WG_IF, 51820), 0);
220228

221229
/* Generate and set keys for A */
222230
wc_RNG_GenerateBlock(&test_rng, priv_a, WG_PRIVATE_KEY_LEN);
223231
ck_assert_int_eq(wolfguard_set_private_key(&wg_dev_a, priv_a), 0);
224232

225-
wolfIP_ipconfig_set_ex(&stack_a, 1, MAKE_IP4(10,0,0,1),
233+
wolfIP_ipconfig_set_ex(&stack_a, TEST_WG_IF, MAKE_IP4(10,0,0,1),
226234
MAKE_IP4(255,255,255,0), 0);
227235

228236
/* Stack B */
229237
wolfIP_init(&stack_b);
230238

231239
/* Physical interface (non_ethernet, index 0) */
232-
ll = wolfIP_getdev_ex(&stack_b, 0);
240+
ll = wolfIP_getdev_ex(&stack_b, TEST_PHYS_IF);
233241
ll->non_ethernet = 1;
234242
ll->poll = phys_b_poll;
235243
ll->send = phys_b_send;
236244
strncpy(ll->ifname, "eth_b", sizeof(ll->ifname) - 1);
237245

238-
wolfIP_ipconfig_set(&stack_b, MAKE_IP4(192,168,1,2),
239-
MAKE_IP4(255,255,255,0), 0);
246+
wolfIP_ipconfig_set_ex(&stack_b, TEST_PHYS_IF, MAKE_IP4(192,168,1,2),
247+
MAKE_IP4(255,255,255,0), 0);
240248

241249
/* wolfGuard on interface 1 (wg0) */
242-
ck_assert_int_eq(wolfguard_init(&wg_dev_b, &stack_b, 1, 51820), 0);
250+
ck_assert_int_eq(wolfguard_init(&wg_dev_b, &stack_b, TEST_WG_IF, 51820), 0);
243251

244252
/* Generate and set keys for B */
245253
wc_RNG_GenerateBlock(&test_rng, priv_b, WG_PRIVATE_KEY_LEN);
246254
ck_assert_int_eq(wolfguard_set_private_key(&wg_dev_b, priv_b), 0);
247255

248-
wolfIP_ipconfig_set_ex(&stack_b, 1, MAKE_IP4(10,0,0,2),
256+
wolfIP_ipconfig_set_ex(&stack_b, TEST_WG_IF, MAKE_IP4(10,0,0,2),
249257
MAKE_IP4(255,255,255,0), 0);
250258

251259
/* Add peers (A knows B, B knows A) */
@@ -798,50 +806,50 @@ START_TEST(test_multi_peer)
798806

799807
/* Stack A (hub, 2 peers) */
800808
wolfIP_init(&stack_a);
801-
ll = wolfIP_getdev_ex(&stack_a, 0);
809+
ll = wolfIP_getdev_ex(&stack_a, TEST_PHYS_IF);
802810
ll->non_ethernet = 1;
803811
ll->poll = phys_a_poll_multi;
804812
ll->send = phys_a_send_multi;
805813
strncpy(ll->ifname, "eth_a", sizeof(ll->ifname) - 1);
806-
wolfIP_ipconfig_set(&stack_a, MAKE_IP4(192,168,1,1),
807-
MAKE_IP4(255,255,255,0), 0);
814+
wolfIP_ipconfig_set_ex(&stack_a, TEST_PHYS_IF, MAKE_IP4(192,168,1,1),
815+
MAKE_IP4(255,255,255,0), 0);
808816

809-
ck_assert_int_eq(wolfguard_init(&wg_dev_a, &stack_a, 1, 51820), 0);
817+
ck_assert_int_eq(wolfguard_init(&wg_dev_a, &stack_a, TEST_WG_IF, 51820), 0);
810818
wc_RNG_GenerateBlock(&test_rng, priv_a, WG_PRIVATE_KEY_LEN);
811819
ck_assert_int_eq(wolfguard_set_private_key(&wg_dev_a, priv_a), 0);
812-
wolfIP_ipconfig_set_ex(&stack_a, 1, MAKE_IP4(10,0,0,1),
820+
wolfIP_ipconfig_set_ex(&stack_a, TEST_WG_IF, MAKE_IP4(10,0,0,1),
813821
MAKE_IP4(255,0,0,0), 0);
814822

815823
/* Stack B */
816824
wolfIP_init(&stack_b);
817-
ll = wolfIP_getdev_ex(&stack_b, 0);
825+
ll = wolfIP_getdev_ex(&stack_b, TEST_PHYS_IF);
818826
ll->non_ethernet = 1;
819827
ll->poll = phys_b_poll;
820828
ll->send = phys_b_send;
821829
strncpy(ll->ifname, "eth_b", sizeof(ll->ifname) - 1);
822-
wolfIP_ipconfig_set(&stack_b, MAKE_IP4(192,168,1,2),
823-
MAKE_IP4(255,255,255,0), 0);
830+
wolfIP_ipconfig_set_ex(&stack_b, TEST_PHYS_IF, MAKE_IP4(192,168,1,2),
831+
MAKE_IP4(255,255,255,0), 0);
824832

825-
ck_assert_int_eq(wolfguard_init(&wg_dev_b, &stack_b, 1, 51820), 0);
833+
ck_assert_int_eq(wolfguard_init(&wg_dev_b, &stack_b, TEST_WG_IF, 51820), 0);
826834
wc_RNG_GenerateBlock(&test_rng, priv_b, WG_PRIVATE_KEY_LEN);
827835
ck_assert_int_eq(wolfguard_set_private_key(&wg_dev_b, priv_b), 0);
828-
wolfIP_ipconfig_set_ex(&stack_b, 1, MAKE_IP4(10,0,1,1),
836+
wolfIP_ipconfig_set_ex(&stack_b, TEST_WG_IF, MAKE_IP4(10,0,1,1),
829837
MAKE_IP4(255,255,255,0), 0);
830838

831839
/* Stack C */
832840
wolfIP_init(&stack_c);
833-
ll = wolfIP_getdev_ex(&stack_c, 0);
841+
ll = wolfIP_getdev_ex(&stack_c, TEST_PHYS_IF);
834842
ll->non_ethernet = 1;
835843
ll->poll = phys_c_poll;
836844
ll->send = phys_c_send;
837845
strncpy(ll->ifname, "eth_c", sizeof(ll->ifname) - 1);
838-
wolfIP_ipconfig_set(&stack_c, MAKE_IP4(192,168,1,3),
839-
MAKE_IP4(255,255,255,0), 0);
846+
wolfIP_ipconfig_set_ex(&stack_c, TEST_PHYS_IF, MAKE_IP4(192,168,1,3),
847+
MAKE_IP4(255,255,255,0), 0);
840848

841-
ck_assert_int_eq(wolfguard_init(&wg_dev_c, &stack_c, 1, 51820), 0);
849+
ck_assert_int_eq(wolfguard_init(&wg_dev_c, &stack_c, TEST_WG_IF, 51820), 0);
842850
wc_RNG_GenerateBlock(&test_rng, priv_c, WG_PRIVATE_KEY_LEN);
843851
ck_assert_int_eq(wolfguard_set_private_key(&wg_dev_c, priv_c), 0);
844-
wolfIP_ipconfig_set_ex(&stack_c, 1, MAKE_IP4(10,0,2,1),
852+
wolfIP_ipconfig_set_ex(&stack_c, TEST_WG_IF, MAKE_IP4(10,0,2,1),
845853
MAKE_IP4(255,255,255,0), 0);
846854

847855
/* Add peers */

0 commit comments

Comments
 (0)