diff options
-rw-r--r-- | src/plugins/wireguard/wireguard_output_tun.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/plugins/wireguard/wireguard_output_tun.c b/src/plugins/wireguard/wireguard_output_tun.c index 5449c498db2..d1b1d6bb8f0 100644 --- a/src/plugins/wireguard/wireguard_output_tun.c +++ b/src/plugins/wireguard/wireguard_output_tun.c @@ -504,12 +504,11 @@ wg_output_tun_inline (vlib_main_t *vm, vlib_node_runtime_t *node, else { hdr6_out->wg.header.type = MESSAGE_DATA; - hdr6_out->udp.length = clib_host_to_net_u16 (encrypted_packet_len + - sizeof (udp_header_t)); + hdr6_out->ip6.payload_length = hdr6_out->udp.length = + clib_host_to_net_u16 (encrypted_packet_len + + sizeof (udp_header_t)); b[0]->current_length = (encrypted_packet_len + sizeof (ip6_udp_header_t)); - hdr6_out->ip6.payload_length = - clib_host_to_net_u16 (b[0]->current_length); } out: |