diff --git a/internal/checksum_test/sum_bench_test.go b/internal/checksum_test/sum_bench_test.go index bfc0752..35ee021 100644 --- a/internal/checksum_test/sum_bench_test.go +++ b/internal/checksum_test/sum_bench_test.go @@ -28,6 +28,6 @@ func BenchmarkGChecksum(b *testing.B) { } b.ResetTimer() for i := 0; i < b.N; i++ { - checksum.Checksum(packet[i%1000], 0) + checksum.ChecksumDefault(packet[i%1000], 0) } } diff --git a/internal/gtcpip/checksum/checksum.go b/internal/gtcpip/checksum/checksum.go index dfb4dd7..db03e64 100644 --- a/internal/gtcpip/checksum/checksum.go +++ b/internal/gtcpip/checksum/checksum.go @@ -38,3 +38,8 @@ func Combine(a, b uint16) uint16 { v := uint32(a) + uint32(b) return uint16(v + v>>16) } + +func ChecksumDefault(buf []byte, initial uint16) uint16 { + s, _ := calculateChecksum(buf, false, initial) + return s +} diff --git a/internal/gtcpip/checksum/checksum_default.go b/internal/gtcpip/checksum/checksum_default.go index ea4585e..99a2d75 100644 --- a/internal/gtcpip/checksum/checksum_default.go +++ b/internal/gtcpip/checksum/checksum_default.go @@ -8,6 +8,5 @@ package checksum // // The initial checksum must have been computed on an even number of bytes. func Checksum(buf []byte, initial uint16) uint16 { - s, _ := calculateChecksum(buf, false, initial) - return s + return ChecksumDefault(buf, initial) } diff --git a/internal/gtcpip/checksum/checksum_unsafe.go b/internal/gtcpip/checksum/checksum_unsafe.go index 83f35c8..66b7ab6 100644 --- a/internal/gtcpip/checksum/checksum_unsafe.go +++ b/internal/gtcpip/checksum/checksum_unsafe.go @@ -1,5 +1,3 @@ -//go:build !amd64 - // Copyright 2023 The gVisor Authors. // // Licensed under the Apache License, Version 2.0 (the "License");