From 4e6f299af0abec6e20f2b832a41f41da6344910c Mon Sep 17 00:00:00 2001 From: Jose Alamos Date: Tue, 22 Jun 2021 11:01:18 +0200 Subject: [PATCH] lwip: avoid explicit cast to netdev --- pkg/lwip/contrib/lwip.c | 18 +++++++++--------- pkg/lwip/contrib/netdev/lwip_netdev.c | 6 +++--- tests/lwip_sock_ip/stack.c | 10 +++++----- tests/lwip_sock_udp/stack.c | 10 +++++----- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/pkg/lwip/contrib/lwip.c b/pkg/lwip/contrib/lwip.c index 867186ca87..01bfcdf701 100644 --- a/pkg/lwip/contrib/lwip.c +++ b/pkg/lwip/contrib/lwip.c @@ -180,7 +180,7 @@ void lwip_bootstrap(void) #ifdef MODULE_NETDEV_TAP for (unsigned i = 0; i < LWIP_NETIF_NUMOF; i++) { netdev_tap_setup(&netdev_taps[i], &netdev_tap_params[i]); - if (netif_add_noaddr(&netif[i], &netdev_taps[i], lwip_netdev_init, + if (netif_add_noaddr(&netif[i], &netdev_taps[i].netdev, lwip_netdev_init, tcpip_input) == NULL) { DEBUG("Could not add netdev_tap device\n"); return; @@ -189,7 +189,7 @@ void lwip_bootstrap(void) #elif defined(MODULE_MRF24J40) for (unsigned i = 0; i < LWIP_NETIF_NUMOF; i++) { mrf24j40_setup(&mrf24j40_devs[i], &mrf24j40_params[i], i); - if (netif_add_noaddr(&netif[i], &mrf24j40_devs[i], lwip_netdev_init, + if (netif_add_noaddr(&netif[i], &mrf24j40_devs[i].netdev.netdev, lwip_netdev_init, tcpip_6lowpan_input) == NULL) { DEBUG("Could not add mrf24j40 device\n"); return; @@ -198,7 +198,7 @@ void lwip_bootstrap(void) #elif defined(MODULE_AT86RF2XX) for (unsigned i = 0; i < LWIP_NETIF_NUMOF; i++) { at86rf2xx_setup(&at86rf2xx_devs[i], &at86rf2xx_params[i], i); - if (netif_add_noaddr(&netif[i], &at86rf2xx_devs[i], lwip_netdev_init, + if (netif_add_noaddr(&netif[i], &at86rf2xx_devs[i].netdev.netdev, lwip_netdev_init, tcpip_6lowpan_input) == NULL) { DEBUG("Could not add at86rf2xx device\n"); return; @@ -207,7 +207,7 @@ void lwip_bootstrap(void) #elif defined(MODULE_ATWINC15X0) for (unsigned i = 0; i < LWIP_NETIF_NUMOF; i++) { atwinc15x0_setup(&atwinc15x0_devs[i], &atwinc15x0_params[i]); - if (netif_add_noaddr(&netif[0], &atwinc15x0_devs[i], lwip_netdev_init, + if (netif_add_noaddr(&netif[0], &atwinc15x0_devs[i].netdev, lwip_netdev_init, tcpip_input) == NULL) { DEBUG("Could not add atwinc15x0 device\n"); return; @@ -216,7 +216,7 @@ void lwip_bootstrap(void) #elif defined(MODULE_ENC28J60) for (unsigned i = 0; i < LWIP_NETIF_NUMOF; i++) { enc28j60_setup(&enc28j60_devs[i], &enc28j60_params[i], i); - if (netif_add_noaddr(&netif[0], &enc28j60_devs[i], lwip_netdev_init, + if (netif_add_noaddr(&netif[0], &enc28j60_devs[i].netdev, lwip_netdev_init, tcpip_input) == NULL) { DEBUG("Could not add enc28j60 device\n"); return; @@ -225,7 +225,7 @@ void lwip_bootstrap(void) #elif defined(MODULE_SOCKET_ZEP) for (unsigned i = 0; i < LWIP_NETIF_NUMOF; i++) { socket_zep_setup(&socket_zep_devs[i], &socket_zep_params[i], i); - if (netif_add_noaddr(&netif[i], &socket_zep_devs[i], lwip_netdev_init, + if (netif_add_noaddr(&netif[i], &socket_zep_devs[i].netdev.netdev, lwip_netdev_init, tcpip_6lowpan_input) == NULL) { DEBUG("Could not add socket_zep device\n"); return; @@ -234,7 +234,7 @@ void lwip_bootstrap(void) #elif (IS_USED(MODULE_ESP_ETH) || IS_USED(MODULE_ESP_WIFI)) #if IS_USED(MODULE_ESP_ETH) esp_eth_setup(&_esp_eth_dev); - if (netif_add_noaddr(&netif[0], &_esp_eth_dev, lwip_netdev_init, + if (netif_add_noaddr(&netif[0], &_esp_eth_dev.netdev, lwip_netdev_init, tcpip_input) == NULL) { DEBUG("Could not add esp_eth device\n"); return; @@ -242,7 +242,7 @@ void lwip_bootstrap(void) #endif #if IS_USED(MODULE_ESP_WIFI) esp_wifi_setup(&_esp_wifi_dev); - if (netif_add_noaddr(&netif[ESP_WIFI_INDEX], &_esp_wifi_dev, lwip_netdev_init, + if (netif_add_noaddr(&netif[ESP_WIFI_INDEX], &_esp_wifi_dev.netdev, lwip_netdev_init, tcpip_input) == NULL) { DEBUG("Could not add esp_wifi device\n"); return; @@ -264,7 +264,7 @@ void lwip_bootstrap(void) } #elif defined(MODULE_NRF802154) nrf802154_setup(&nrf802154_dev); - if (netif_add_noaddr(&netif[0], &nrf802154_dev, lwip_netdev_init, + if (netif_add_noaddr(&netif[0], &nrf802154_dev.netdev.dev.netdev, lwip_netdev_init, tcpip_6lowpan_input) == NULL) { DEBUG("Could not add nrf802154 device\n"); return; diff --git a/pkg/lwip/contrib/netdev/lwip_netdev.c b/pkg/lwip/contrib/netdev/lwip_netdev.c index 04daea7596..11d6040c4b 100644 --- a/pkg/lwip/contrib/netdev/lwip_netdev.c +++ b/pkg/lwip/contrib/netdev/lwip_netdev.c @@ -94,7 +94,7 @@ err_t lwip_netdev_init(struct netif *netif) } /* initialize netdev and netif */ - netdev = (netdev_t *)netif->state; + netdev = netif->state; netdev->driver->init(netdev); _configure_netdev(netdev); netdev->event_callback = _event_cb; @@ -203,7 +203,7 @@ err_t lwip_netdev_init(struct netif *netif) #ifdef MODULE_NETDEV_ETH static err_t _eth_link_output(struct netif *netif, struct pbuf *p) { - netdev_t *netdev = (netdev_t *)netif->state; + netdev_t *netdev = netif->state; struct pbuf *q; unsigned int count = 0; @@ -236,7 +236,7 @@ static err_t _eth_link_output(struct netif *netif, struct pbuf *p) static err_t _ieee802154_link_output(struct netif *netif, struct pbuf *p) { LWIP_ASSERT("p->next == NULL", p->next == NULL); - netdev_t *netdev = (netdev_t *)netif->state; + netdev_t *netdev = netif->state; iolist_t pkt = { .iol_base = p->payload, .iol_len = (p->len - IEEE802154_FCS_LEN), /* FCS is written by driver */ diff --git a/tests/lwip_sock_ip/stack.c b/tests/lwip_sock_ip/stack.c index a113da6899..11e0f4aac7 100644 --- a/tests/lwip_sock_ip/stack.c +++ b/tests/lwip_sock_ip/stack.c @@ -155,7 +155,7 @@ void _net_init(void) netdev_test_set_recv_cb(&netdev, _netdev_recv); netdev_test_set_isr_cb(&netdev, _netdev_isr); /* netdev needs to be set-up */ - expect(netdev.netdev.driver); + expect(netdev.netdev.netdev.driver); #if LWIP_IPV4 ip4_addr_t local4, mask4, gw4; local4.addr = _TEST_ADDR4_LOCAL; @@ -232,7 +232,7 @@ bool _inject_4packet(uint32_t src, uint32_t dst, uint8_t proto, void *data, uint8_t *payload = (uint8_t *)(ip_hdr + 1); (void)netif; - _get_addr((netdev_t *)&netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); + _get_addr(&netdev.netdev.netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); eth_hdr->type = byteorder_htons(ETHERTYPE_IPV4); IPH_VHL_SET(ip_hdr, 4, 5); IPH_TOS_SET(ip_hdr, 0); @@ -248,7 +248,7 @@ bool _inject_4packet(uint32_t src, uint32_t dst, uint8_t proto, void *data, _netdev_buffer_size = sizeof(ethernet_hdr_t) + sizeof(struct ip_hdr) + data_len; mutex_unlock(&_netdev_buffer_mutex); - netdev_trigger_event_isr((netdev_t *)&netdev); + netdev_trigger_event_isr(&netdev.netdev.netdev); return true; #else @@ -267,7 +267,7 @@ bool _inject_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst, uint8_t *payload = (uint8_t *)(ipv6_hdr + 1); (void)netif; - _get_addr((netdev_t *)&netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); + _get_addr(&netdev.netdev.netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); eth_hdr->type = byteorder_htons(ETHERTYPE_IPV6); ipv6_hdr_set_version(ipv6_hdr); ipv6_hdr->len = byteorder_htons(data_len); @@ -280,7 +280,7 @@ bool _inject_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst, _netdev_buffer_size = sizeof(ethernet_hdr_t) + sizeof(ipv6_hdr_t) + data_len; mutex_unlock(&_netdev_buffer_mutex); - netdev_trigger_event_isr((netdev_t *)&netdev); + netdev_trigger_event_isr(&netdev.netdev.netdev); return true; #else diff --git a/tests/lwip_sock_udp/stack.c b/tests/lwip_sock_udp/stack.c index 6f662f1728..1ce253f15b 100644 --- a/tests/lwip_sock_udp/stack.c +++ b/tests/lwip_sock_udp/stack.c @@ -158,7 +158,7 @@ void _net_init(void) netdev_test_set_recv_cb(&netdev, _netdev_recv); netdev_test_set_isr_cb(&netdev, _netdev_isr); /* netdev needs to be set-up */ - expect(netdev.netdev.driver); + expect(netdev.netdev.netdev.driver); #if LWIP_IPV4 ip4_addr_t local4, mask4, gw4; local4.addr = _TEST_ADDR4_LOCAL; @@ -238,7 +238,7 @@ bool _inject_4packet(uint32_t src, uint32_t dst, uint16_t src_port, const uint16_t udp_len = (uint16_t)(sizeof(udp_hdr_t) + data_len); (void)netif; - _get_addr((netdev_t *)&netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); + _get_addr(&netdev.netdev.netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); eth_hdr->type = byteorder_htons(ETHERTYPE_IPV4); IPH_VHL_SET(ip_hdr, 4, 5); IPH_TOS_SET(ip_hdr, 0); @@ -260,7 +260,7 @@ bool _inject_4packet(uint32_t src, uint32_t dst, uint16_t src_port, _netdev_buffer_size = sizeof(ethernet_hdr_t) + sizeof(struct ip_hdr) + sizeof(udp_hdr_t) + data_len; mutex_unlock(&_netdev_buffer_mutex); - netdev_trigger_event_isr((netdev_t *)&netdev); + netdev_trigger_event_isr(&netdev.netdev.netdev); return true; #else @@ -284,7 +284,7 @@ bool _inject_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst, uint16_t csum = 0; (void)netif; - _get_addr((netdev_t *)&netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); + _get_addr(&netdev.netdev.netdev, ð_hdr->dst, sizeof(eth_hdr->dst)); eth_hdr->type = byteorder_htons(ETHERTYPE_IPV6); ipv6_hdr_set_version(ipv6_hdr); ipv6_hdr->len = byteorder_htons(udp_len); @@ -309,7 +309,7 @@ bool _inject_6packet(const ipv6_addr_t *src, const ipv6_addr_t *dst, _netdev_buffer_size = sizeof(ethernet_hdr_t) + sizeof(ipv6_hdr_t) + sizeof(udp_hdr_t) + data_len; mutex_unlock(&_netdev_buffer_mutex); - netdev_trigger_event_isr((netdev_t *)&netdev); + netdev_trigger_event_isr(&netdev.netdev.netdev); return true; #else