Skip to content

cpu/esp32: esp_eth is not working correctly for packet size > 255 octets #10594

@gschorcht

Description

@gschorcht

Description

ping6 from an ESP32 board does not work as expected when different payload lengths are used. Following behavior could be observed:

ping6 fe80::345b:6598:1369:5bf4
ping6 fe80::345b:6598:1369:5bf4 189
ping6 2003:c1:e72f:6c40:203b:b247:a518:3c7b

work as expected.

But

ping6 fe80::345b:6598:1369:5bf4 190

gives a timeout while

ping6 2003:c1:e72f:6c40:203b:b247:a518:3c7b 1

gives the error message error: malformed address.

It seems that there is a buffer problem that may also be related to the length of the destination address.

Steps to reproduce the issue

Use an ESP32 board and compile it with esp_eth netdev, e.g.:

USEMODULE=esp_eth make BOARD=esp32-olimex-evb -C examples/gnrc_networking flash

Execute ping commands to another host in the same LAN with the commands shown above.

Expected results

ping6 works for different address lengths and different payload sizes.

Actual results

Timeout or malformed address errors when ping6 is used for global unicast addresses used with the size argument or link local addresses are used with more than 189 byte payload length.

Metadata

Metadata

Assignees

Labels

Area: networkArea: NetworkingPlatform: ESPPlatform: This PR/issue effects ESP-based platformsType: bugThe issue reports a bug / The PR fixes a bug (including spelling errors)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions