aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/dm/eth.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/dm/eth.c b/test/dm/eth.c
index a3ee231e20f..ebf01d8cf38 100644
--- a/test/dm/eth.c
+++ b/test/dm/eth.c
@@ -149,6 +149,24 @@ static int dm_test_ip6_make_snma(struct unit_test_state *uts)
return 0;
}
DM_TEST(dm_test_ip6_make_snma, 0);
+
+static int dm_test_ip6_make_lladdr(struct unit_test_state *uts)
+{
+ struct in6_addr generated_lladdr = {0};
+ struct in6_addr correct_lladdr = {
+ .s6_addr32[0] = 0x000080fe,
+ .s6_addr32[1] = 0x00000000,
+ .s6_addr32[2] = 0xffabf33a,
+ .s6_addr32[3] = 0xfbb352fe};
+ const unsigned char mac[6] = {0x38, 0xf3, 0xab, 0x52, 0xb3, 0xfb};
+
+ ip6_make_lladdr(&generated_lladdr, mac);
+ ut_asserteq_mem(&generated_lladdr, &correct_lladdr,
+ sizeof(struct in6_addr));
+
+ return 0;
+}
+DM_TEST(dm_test_ip6_make_lladdr, UT_TESTF_SCAN_FDT);
#endif
static int dm_test_eth(struct unit_test_state *uts)