mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 10:18:54 +00:00
Our NAT table uses TCP & UDP ports for its entries. To correctly handle ICMP requests and responses, we use the ICMP identifier in those packets. All other ICMP messages are currently unsupported. The errors paths for accessing these fields, i.e. ports for UDP/TCP and identifier for ICMP currently conflate two different errors: - Unsupported IP payload: it is neither TCP, UDP or ICMP - Unsupported ICMP type: it is not an ICMP request or response This makes certain logs look worse than they are because we say "Unsupported IP protocol: Icmpv6". To avoid this, we create a dedicated error variant that calls out the unsupported ICMP type. Fixes: #5594.