diff --git a/tests/gnrc_sixlowpan/main.c b/tests/gnrc_sixlowpan/main.c index e7cc971e08..7ca5e86feb 100644 --- a/tests/gnrc_sixlowpan/main.c +++ b/tests/gnrc_sixlowpan/main.c @@ -111,7 +111,7 @@ static void _init_interface(void) _get_netdev_addr_long); gnrc_netif_ieee802154_create(&_netif, _netif_stack, THREAD_STACKSIZE_DEFAULT, GNRC_NETIF_PRIO, - "dummy_netif", (netdev_t *)&_ieee802154_dev); + "dummy_netif", &_ieee802154_dev.netdev.netdev); ipv6_addr_t addr = IPV6_ADDR_UNSPECIFIED; /* fd01::01 */ diff --git a/tests/gnrc_sixlowpan_frag_minfwd/main.c b/tests/gnrc_sixlowpan_frag_minfwd/main.c index 07148ae994..5829338ca5 100644 --- a/tests/gnrc_sixlowpan_frag_minfwd/main.c +++ b/tests/gnrc_sixlowpan_frag_minfwd/main.c @@ -318,7 +318,12 @@ static void _set_up(void) static void _tear_down(void) { - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, NULL); + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, NULL); mutex_unlock(&_target_buf_barrier); /* wait in case mutex in _mock_netdev_send was already entered */ mutex_lock(&_target_buf_barrier); @@ -455,7 +460,12 @@ static void test_minfwd_forward__success__1st_frag_sixlo(void) TEST_ASSERT_NOT_NULL((frag = gnrc_pktbuf_mark(pkt, sizeof(sixlowpan_frag_t), GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_minfwd_forward(pkt, frag->data, @@ -490,7 +500,12 @@ static void test_minfwd_forward__success__1st_frag_iphc(void) TEST_ASSERT_NOT_NULL((frag = gnrc_pktbuf_mark(pkt, sizeof(sixlowpan_frag_t), GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_minfwd_forward(pkt, frag->data, @@ -530,7 +545,12 @@ static void test_minfwd_forward__success__nth_frag_incomplete(void) sizeof(sixlowpan_frag_n_t), GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_minfwd_forward(pkt, frag->data, @@ -572,7 +592,12 @@ static void test_minfwd_forward__success__nth_frag_complete(void) LL_DELETE(pkt, frag); /* simulate current_size only missing the created fragment */ vrbe->super.current_size = _vrbe_base.datagram_size; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_minfwd_forward(pkt, frag->data, @@ -613,7 +638,12 @@ static void test_minfwd_forward__ENOMEM__netif_hdr_build_fail(void) GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(-ENOMEM, gnrc_sixlowpan_frag_minfwd_forward(pkt, frag->data, @@ -637,7 +667,12 @@ static void test_minfwd_frag_iphc__success(void) fbuf->datagram_size = TEST_SEND_DATAGRAM_SIZE; fbuf->tag = TEST_SEND_DATAGRAM_TAG; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT( 0, gnrc_sixlowpan_frag_minfwd_frag_iphc(pkt, @@ -677,7 +712,12 @@ static void test_minfwd_frag_iphc__no_frag(void) fbuf->datagram_size = TEST_SEND_FRAG1_PAYLOAD_SIZE; fbuf->tag = TEST_SEND_DATAGRAM_TAG; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT( -1, gnrc_sixlowpan_frag_minfwd_frag_iphc(pkt, @@ -716,7 +756,12 @@ static void test_minfwd_frag_iphc__ll_dst(void) fbuf->datagram_size = TEST_SEND_FRAG1_PAYLOAD_SIZE; fbuf->tag = TEST_SEND_DATAGRAM_TAG; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT( -1, gnrc_sixlowpan_frag_minfwd_frag_iphc(pkt, @@ -744,7 +789,12 @@ static void test_sixlo_recv__1st_frag_uncomp(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -807,7 +857,12 @@ static void test_sixlo_recv__1st_frag_uncomp__after_nth_frag(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -856,7 +911,12 @@ static void test_sixlo_recv__1st_frag_comp(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -906,7 +966,12 @@ static void test_sixlo_recv__1st_frag_comp__only_iphc(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -946,7 +1011,12 @@ static void test_sixlo_recv__1st_frag_comp__only_iphc_no_nhc(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1084,7 +1154,12 @@ static void test_sixlo_recv__1st_frag_comp__after_nth_frag(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1135,7 +1210,12 @@ static void test_sixlo_recv__nth_frag(void) _rem_l2, sizeof(_rem_l2))) ); vrbe->super.arrival = xtimer_now_usec(); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1176,7 +1256,12 @@ static void test_sixlo_recv__nth_frag__datagram_complete(void) /* simulate current_size only missing the created fragment */ vrbe->super.current_size = _vrbe_base.datagram_size - TEST_NTH_FRAG_SIZE; vrbe->super.arrival = xtimer_now_usec(); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1208,7 +1293,12 @@ static void test_sixlo_recv__nth_frag__no_vrbe(void) TEST_ASSERT_NOT_NULL( (frag = _create_recv_frag(_test_nth_frag, sizeof(_test_nth_frag))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1244,7 +1334,12 @@ static void test_sixlo_recv__nth_frag__duplicate(void) _rem_l2, sizeof(_rem_l2))) ); vrbe->super.arrival = xtimer_now_usec(); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1294,7 +1389,12 @@ static void test_sixlo_recv__nth_frag__overlap(void) _rem_l2, sizeof(_rem_l2))) ); vrbe->super.arrival = xtimer_now_usec(); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1334,7 +1434,12 @@ static void test_sixlo_send(void) TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, diff --git a/tests/gnrc_sixlowpan_frag_sfr/main.c b/tests/gnrc_sixlowpan_frag_sfr/main.c index 8694fab11d..e11194835d 100644 --- a/tests/gnrc_sixlowpan_frag_sfr/main.c +++ b/tests/gnrc_sixlowpan_frag_sfr/main.c @@ -348,7 +348,13 @@ static void _set_up(void) static void _tear_down(void) { - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, NULL); + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + + netdev_test_set_send_cb(netdev_test, NULL); mutex_unlock(&_target_buf_barrier); /* wait in case mutex in _mock_netdev_send was already entered */ mutex_lock(&_target_buf_barrier); @@ -373,7 +379,12 @@ static void test_sfr_forward__success__1st_frag_sixlo(void) TEST_ASSERT_NOT_NULL((frag = gnrc_pktbuf_mark(pkt, sizeof(sixlowpan_sfr_rfrag_t), GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_sfr_forward(pkt, frag->data, @@ -407,7 +418,12 @@ static void test_sfr_forward__success__1st_frag_iphc(void) TEST_ASSERT_NOT_NULL((frag = gnrc_pktbuf_mark(pkt, sizeof(sixlowpan_sfr_rfrag_t), GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_sfr_forward(pkt, frag->data, @@ -446,7 +462,12 @@ static void test_sfr_forward__success__nth_frag_incomplete(void) sizeof(sixlowpan_sfr_rfrag_t), GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_sfr_forward(pkt, frag->data, @@ -486,7 +507,12 @@ static void test_sfr_forward__success__nth_frag_complete(void) LL_DELETE(pkt, frag); /* simulate current_size only missing the created fragment */ vrbe->super.current_size = _vrbe_base.datagram_size; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(0, gnrc_sixlowpan_frag_sfr_forward(pkt, frag->data, @@ -524,7 +550,12 @@ static void test_sfr_forward__ENOMEM__netif_hdr_build_fail(void) GNRC_NETTYPE_SIXLOWPAN))); LL_DELETE(pkt, frag); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT_EQUAL_INT(-ENOMEM, gnrc_sixlowpan_frag_sfr_forward(pkt, frag->data, @@ -548,7 +579,12 @@ static void test_sixlo_recv_fwd__1st_frag_uncomp(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -580,7 +616,12 @@ static void test_sixlo_recv_fwd__1st_frag_uncomp__req_ack(void) sixlowpan_sfr_rfrag_set_ack_req(frag->data); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -613,7 +654,12 @@ static void test_sixlo_recv_fwd__1st_frag_uncomp__no_route(void) (frag = _create_recv_frag(_test_1st_frag_uncomp, sizeof(_test_1st_frag_uncomp))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -644,7 +690,12 @@ static void test_sixlo_recv_fwd__1st_frag_uncomp__after_nth_frag(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -693,7 +744,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -750,7 +806,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__resend(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -806,7 +867,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__only_iphc(void) sizeof(sixlowpan_sfr_rfrag_t)); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -846,7 +912,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__only_iphc_no_nhc(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -881,7 +952,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__no_route(void) (frag = _create_recv_frag(_test_1st_frag_comp_prev_hop, sizeof(_test_1st_frag_comp_prev_hop))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -910,7 +986,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__no_route_only_iphc(void) (frag = _create_recv_frag(_test_1st_frag_comp_prev_hop, TEST_1ST_FRAG_COMP_PREV_HOP_UDP_PAYLOAD_POS)) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -946,7 +1027,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__no_refrag(void) reserved[i] = gnrc_sixlowpan_frag_fb_get(); reserved[i]->pkt = frag; } - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -984,7 +1070,12 @@ static void test_sixlo_recv_fwd__1st_frag_comp__after_nth_frag(void) ); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1057,7 +1148,12 @@ static void test_sixlo_recv_fwd__1st_frag_abort(void) ); vrbe->in_netif = _mock_netif; exp_tag = vrbe->out_tag & 0xff; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1100,7 +1196,12 @@ static void test_sixlo_recv_fwd__1st_frag_nalp(void) data[sizeof(sixlowpan_sfr_rfrag_t)] &= ~(0xc0); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1133,7 +1234,12 @@ static void test_sixlo_recv_fwd__1st_frag_nalp__req_ack(void) sixlowpan_sfr_rfrag_set_ack_req(frag->data); /* configure route to destination of IP header in frag */ TEST_ASSERT_EQUAL_INT(0, _set_route_and_nce(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1166,7 +1272,12 @@ static void test_sixlo_recv_fwd__1st_frag_nalp__no_vrb(void) data = frag->data; /* mark dispatch after RFRAG header a non-6LoWPAN frame */ data[sizeof(sixlowpan_sfr_rfrag_t)] &= ~(0xc0); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1199,7 +1310,12 @@ static void test_sixlo_recv_fwd__nth_frag(void) vrbe->in_netif = _mock_netif; /* set offset_diff to test it in the outgoing RFRAG */ vrbe->offset_diff = TEST_OFFSET_DIFF; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1236,7 +1352,12 @@ static void test_sixlo_recv_fwd__nth_frag__no_vrbe(void) TEST_ASSERT_NOT_NULL( (frag = _create_recv_frag(_test_nth_frag, sizeof(_test_nth_frag))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1268,7 +1389,12 @@ static void test_sixlo_recv_fwd__nth_frag__duplicate(void) (vrbe = gnrc_sixlowpan_frag_vrb_add(&_vrbe_base, _mock_netif, _rem_l2, sizeof(_rem_l2))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1313,7 +1439,12 @@ static void test_sixlo_recv_fwd__nth_frag__overlap(void) (vrbe = gnrc_sixlowpan_frag_vrb_add(&_vrbe_base, _mock_netif, _rem_l2, sizeof(_rem_l2))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1358,7 +1489,12 @@ static void test_sixlo_recv_fwd__frag__too_short(void) (frag = _create_recv_frag(_test_1st_frag_comp, sizeof(sixlowpan_sfr_rfrag_t) - 1)) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1392,7 +1528,12 @@ static void test_sixlo_recv_fwd__ack(void) vrbe->in_netif = _mock_netif; ack_hdr = ack->data; ack_hdr->base.tag = vrbe->out_tag; - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1428,7 +1569,12 @@ static void test_sixlo_recv_fwd__NULL_ack(void) ack_hdr->base.tag = vrbe->out_tag; /* set ACK bitmap to NULL */ memset(ack_hdr->bitmap, 0, sizeof(ack_hdr->bitmap)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1466,7 +1612,12 @@ static void test_sixlo_recv_fwd__FULL_ack(void) ack_hdr->base.tag = vrbe->out_tag; /* set ACK bitmap to NULL */ memcpy(ack_hdr->bitmap, full_bitmap, sizeof(ack_hdr->bitmap)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1490,7 +1641,12 @@ static void test_sixlo_recv_fwd__ack__no_vrbe(void) TEST_ASSERT_NOT_NULL( (ack = _create_recv_ack(_test_ack, sizeof(_test_ack))) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1519,7 +1675,12 @@ static void test_sixlo_recv_fwd__ack__too_short(void) (frag = _create_recv_frag(_test_ack, sizeof(sixlowpan_sfr_ack_t) - 1)) ); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1548,7 +1709,12 @@ static void test_sixlo_recv_ep__1st_frag_uncomp(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1591,7 +1757,12 @@ static void test_sixlo_recv_ep__1st_frag_uncomp__req_ack(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1633,7 +1804,12 @@ static void test_sixlo_recv_ep__1st_frag_uncomp__after_nth_frag(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1691,7 +1867,12 @@ static void test_sixlo_recv_ep__1st_frag_comp(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1730,7 +1911,12 @@ static void test_sixlo_recv_ep__1st_frag_comp__after_nth_frag(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1788,7 +1974,12 @@ static void test_sixlo_recv_ep__1st_frag_abort(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1836,7 +2027,12 @@ static void test_sixlo_recv_ep__1st_frag_abort__req_ack(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_receive(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -1888,7 +2084,12 @@ static void test_sixlo_recv_ep__complete_datagram(void) /* configure interface to be endpoint of route */ TEST_ASSERT_EQUAL_INT(sizeof(ipv6_addr_t), _add_dst(&_rem_gb, REM_GB_PFX_LEN)); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); /* ==== FIRST FRAGMENT ==== */ TEST_ASSERT_NOT_NULL( @@ -2011,7 +2212,12 @@ static void test_sixlo_send(void) TEST_ASSERT(3 <= CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE); TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -2071,7 +2277,12 @@ static void test_sixlo_send__first_ackd(void) TEST_ASSERT(3 <= CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE); TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -2154,7 +2365,12 @@ static void test_sixlo_send__middle_ackd(void) TEST_ASSERT(3 <= CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE); TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -2239,7 +2455,12 @@ static void test_sixlo_send__last_ackd(void) TEST_ASSERT(3 <= CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE); TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -2324,7 +2545,12 @@ static void test_sixlo_send__all_ackd(void) TEST_ASSERT(3 <= CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE); TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, @@ -2384,7 +2610,12 @@ static void test_sixlo_send__FULL_ack_recv(void) TEST_ASSERT(3 <= CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE); TEST_ASSERT_NOT_NULL((pkt = _create_send_datagram(false, true))); - netdev_test_set_send_cb((netdev_test_t *)_mock_netif->dev, + netdev_ieee802154_t *netdev_ieee802154 = container_of(_mock_netif->dev, + netdev_ieee802154_t, + netdev); + netdev_test_t *netdev_test = container_of(netdev_ieee802154, netdev_test_t, + netdev); + netdev_test_set_send_cb(netdev_test, _mock_netdev_send); TEST_ASSERT(0 < gnrc_netapi_dispatch_send(GNRC_NETTYPE_SIXLOWPAN, GNRC_NETREG_DEMUX_CTX_ALL, diff --git a/tests/gnrc_sixlowpan_iphc_w_vrb/main.c b/tests/gnrc_sixlowpan_iphc_w_vrb/main.c index 42cf35899e..697ff1175c 100644 --- a/tests/gnrc_sixlowpan_iphc_w_vrb/main.c +++ b/tests/gnrc_sixlowpan_iphc_w_vrb/main.c @@ -311,7 +311,7 @@ static void _init_mock_netif(void) _get_netdev_addr_long); gnrc_netif_ieee802154_create(&_netif, _mock_netif_stack, THREAD_STACKSIZE_DEFAULT, GNRC_NETIF_PRIO, - "mock_netif", (netdev_t *)&_mock_dev); + "mock_netif", &_mock_dev.netdev.netdev); _mock_netif = &_netif; thread_yield_higher(); }