You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When ICMPv6 packets get parsed, the IPv6 packet field gets parsed as if it were a regular IPv6 packet. However, since ICMPv6 packets are usually sent with length of 1280 bytes to ensure it gets delivered, and also because of the ICMP protocol overhead, quite a bit of the original packet payload can get truncated, but the original payload length is sent anyway. Nonetheless, smoltcp attempts to parse and validate the packet, and fails, since the transmitted payload length is smaller than its advertised length.
This especially prevents it being used for e.g. path mtu discovery.
The text was updated successfully, but these errors were encountered:
chayleaf
changed the title
ICMPv6 packets that don't transmit the entire payload get rejected
ICMPv6 packets that don't transmit the entire payload can't get parsed
Jul 4, 2022
(c) Every ICMPv6 error message (type < 128) MUST include as much of
the IPv6 offending (invoking) packet (the packet that caused the
error) as possible without making the error message packet exceed
the minimum IPv6 MTU [IPv6].
When ICMPv6 packets get parsed, the IPv6 packet field gets parsed as if it were a regular IPv6 packet. However, since ICMPv6 packets are usually sent with length of 1280 bytes to ensure it gets delivered, and also because of the ICMP protocol overhead, quite a bit of the original packet payload can get truncated, but the original payload length is sent anyway. Nonetheless, smoltcp attempts to parse and validate the packet, and fails, since the transmitted payload length is smaller than its advertised length.
This especially prevents it being used for e.g. path mtu discovery.
The text was updated successfully, but these errors were encountered: