The structure size used in grub_netbuff_pull to get the pointer to
option header is apparently wrong, which leads to subsequent range check
failed and therefore not responding to any neighbor solicit message in my
testing.
+2014-11-03 Michael Chang <mchang@suse.com>
+
+ * grub-core/net/icmp6.c (grub_net_recv_icmp6_packet): Fix size
+ of neighbor solicitation packet in grub_netbuff_pull.
+
2014-10-14 Andrei Borzenkov <arvidjaar@gmail.com>
* grub-core/loader/arm/linux.c: Use full initializer for initrd_ctx to
if (ttl != 0xff)
break;
nbh = (struct neighbour_solicit *) nb->data;
- err = grub_netbuff_pull (nb, sizeof (struct router_adv));
+ err = grub_netbuff_pull (nb, sizeof (*nbh));
if (err)
{
grub_netbuff_free (nb);