Fix the length check for reinjected ICMP packets: sizeof(struct icmp) is 28 but an ICMP packet can be as small as 8 bytes (e.g. an ICMP echo request packet with no payload), so check against ICMP_MINLEN instead.
Fix the length check for reinjected ICMP packets: sizeof(struct icmp) is
28 but an ICMP packet can be as small as 8 bytes (e.g. an ICMP echo
request packet with no payload), so check against ICMP_MINLEN instead.

Prior to this fix, divert(4) would erroneously discard valid ICMP
packets that are shorter than 20 bytes.

ICMPv6 is not affected, so this change applies to ICMP over IPv4 only.

ok florian@ henning@

orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars