selftests: mlxsw: devlink_trap_tunnel_vxlan: Fix 'decap_error' case

Change the case that sends packets with "too short inner packet" to
include part of ethernet header, to make the trap to be triggered due to
the correct reason.

According to ASIC arch, the trap is triggered if overlay packet length is
less than 18B, and the minimum inner packet should include source MAC and
destination MAC.

Till now the case passed because one of the reserved bits in VxLAN
header was used. This issue was found while adding an equivalent test
for IPv6.

Signed-off-by: Amit Cohen <amcohen@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Amit Cohen 2021-12-23 09:30:02 +02:00 committed by David S. Miller
parent c777d72626
commit 810ef9552d
1 changed files with 5 additions and 2 deletions

View File

@ -217,9 +217,11 @@ short_payload_get()
dest_mac=$(mac_get $h1)
p=$(:
)"08:"$( : VXLAN flags
)"01:00:00:"$( : VXLAN reserved
)"00:00:00:"$( : VXLAN reserved
)"00:03:e8:"$( : VXLAN VNI : 1000
)"00:"$( : VXLAN reserved
)"$dest_mac:"$( : ETH daddr
)"00:00:00:00:00:00:"$( : ETH saddr
)
echo $p
}
@ -263,7 +265,8 @@ decap_error_test()
corrupted_packet_test "Decap error: Reserved bits in use" \
"reserved_bits_payload_get"
corrupted_packet_test "Decap error: No L2 header" "short_payload_get"
corrupted_packet_test "Decap error: Too short inner packet" \
"short_payload_get"
}
mc_smac_payload_get()