icmpv6 packets with wrong checksum are not discarded
ICMPv6 packets should check for checksum correctness (at least if the checksum is active), and upon finding a wrong checksum they should be discarded.
The same goes for TCP, IPv4, UDP, and so on - but I haven't checked that part of the code.