wireguard: fix ipv6 handshake packet
IPv6 payload length should not include the size of the IPv6 header. Type: fix Change-Id: Iedcd17d0af8d72d9b5f8f9b605da7c99e151bc9d Signed-off-by: Benoît Ganne <bganne@cisco.com>
This commit is contained in:

committed by
Matthew Smith

parent
32b93d4800
commit
fa7441ffc2
@ -70,10 +70,8 @@ wg_buffer_prepend_rewrite (vlib_buffer_t *b0, const u8 *rewrite, u8 is_ip4)
|
||||
/* copy only ip6 and udp header; wireguard header not needed */
|
||||
clib_memcpy (hdr6, rewrite, sizeof (ip6_udp_header_t));
|
||||
|
||||
hdr6->udp.length =
|
||||
hdr6->ip6.payload_length = hdr6->udp.length =
|
||||
clib_host_to_net_u16 (b0->current_length - sizeof (ip6_header_t));
|
||||
|
||||
hdr6->ip6.payload_length = clib_host_to_net_u16 (b0->current_length);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user