-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Description
Some implementations of netdev_driver_t::recv(netdev_t *dev, void *buf, size_t len, void *info) do not implement the drop case ((buf == NULL) && (len != 0)). This issue should track the effort to provide the missing implementations.
In case the upper layer used for the driver never uses the drop feature of recv, an implementation of the drop feature is not required, if instead corresponding assert()s are added and this is documented properly.
Tracking
| Driver | State | Pull Request |
|---|---|---|
ata8520e |
Not affected (*) | - |
at86rf2xx |
Fixed, backport in progress | #10285 |
cc110x |
Rewrite contains fix | #10340 |
cc2420 |
Fix merged | #10416 |
cc2538_rf |
Not affected | |
enc28j60 |
Fix merged | #9806 |
encx24j600 |
Fix merged | #10415 |
esp32/esp-eth |
Not affected | - |
esp32/esp-now |
Not affected | - |
esp32/esp-wifi |
Not affected | - |
esp8266 |
Not affected | - |
ethos |
Not affected | - |
kw2xrf |
Fixed | 4ebcd7c |
kw41zrf (#7107) |
Not affected | - |
mrf24j40 |
Fixed, PR merged | #9562 |
netdev_tun |
Not affected | |
nrfble |
asserts present, doc requried | |
nrfmin |
Not affected | - |
rn2xx3 |
Not affected (*) | - |
slipdev |
Not affected | |
sx127x |
AFFECTED | |
socket_zep |
Fixed | fa2d9bd |
w5100 |
Fix merged | #10412 |
xbee |
Not affected | - |
(*) Driver does not use the netdev_driver_t API, so it cannot be affected.
Update 1: Fixed typo
Update 2: Updated state of mrf24j40
Update 3: Added kw41zrf
Update 4: Cleaned up legend
Update 5: Added link to PR for w5100 fix
Update 6: Added link to PR for encx24j600, updated state of encx24j600 & w5100
Update 7: Added link to PR for cc2420 and updated its state
Update 8: Added esp32 netdev_driver_t implementations
Update 9: Added esp8266, confirmed that ata8520e and rn2xx3 are not using the netdev_driver_t API (yet) and are, thus, unaffected
Update 10: Corrected state for at86rf2xx
Update 11: enc28j60 and cc2420 are now fixed
Update 12: w5100 is now fixed
Update 13: encx24j600 fix merged
Update 14: Added cc2538_rf and netdev_tun
Update 15: After looking more closely into cc2538_rf, the error handling in the drop case with pkt_len > CC2538_RF_MAX_DATA_LEN is just fine. So cc2538_rf is not affected