From e6a3dc7bdc606fab515faae3c83ec9e9ad8f2dc9 Mon Sep 17 00:00:00 2001 From: fako1024 Date: Thu, 9 May 2024 11:50:44 +0200 Subject: [PATCH] Ensure port parsing is skipped for IP protocols other than TCP/UDP --- pkg/capture/flow.go | 4 ++-- pkg/e2etest/e2e_test.go | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/capture/flow.go b/pkg/capture/flow.go index 1abe7bfe..e45def3e 100644 --- a/pkg/capture/flow.go +++ b/pkg/capture/flow.go @@ -169,8 +169,8 @@ func ParsePacketV4(ipLayer capture.IPLayer) (epHash capturetypes.EPHashV4, auxIn } auxInfo = ipLayer[ipv4.HeaderLen] // store ICMP type - goto finalize } + goto finalize ports: dport = ipLayer[ipLayerV4DPortStart:ipLayerV4DPortEnd] @@ -236,8 +236,8 @@ func ParsePacketV6(ipLayer capture.IPLayer) (epHash capturetypes.EPHashV6, auxIn } auxInfo = ipLayer[ipv6.HeaderLen] // store ICMP type - goto finalize } + goto finalize ports: dport = ipLayer[ipLayerV6DPortStart:ipLayerV6DPortEnd] diff --git a/pkg/e2etest/e2e_test.go b/pkg/e2etest/e2e_test.go index 9a450fe5..0d09d60c 100644 --- a/pkg/e2etest/e2e_test.go +++ b/pkg/e2etest/e2e_test.go @@ -343,12 +343,12 @@ func testE2E(t *testing.T, valFilterDescriptor int, datasets ...[]byte) { for it := aggMap.PrimaryMap.Iter(); it.Next(); { compVal, exists := liveResults.PrimaryMap.Get(it.Key()) require.True(t, exists) - require.EqualValues(t, it.Val(), compVal) + require.EqualValuesf(t, it.Val(), compVal, "mismatching key: %v", types.Key(it.Key())) } for j, it := 0, aggMap.SecondaryMap.Iter(); it.Next(); j++ { compVal, exists := liveResults.SecondaryMap.Get(it.Key()) require.True(t, exists) - require.EqualValues(t, it.Val(), compVal) + require.EqualValuesf(t, it.Val(), compVal, "mismatching key: %v", types.Key(it.Key())) } }