From 3179489ad6498e3d8b2b7948d93cee4efa01049f Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 11 May 2022 12:34:18 -0600 Subject: move to pkg/btrfs, get CRC working --- pkg/btrfs/crc32c.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 pkg/btrfs/crc32c.go (limited to 'pkg/btrfs/crc32c.go') diff --git a/pkg/btrfs/crc32c.go b/pkg/btrfs/crc32c.go new file mode 100644 index 0000000..4ea4169 --- /dev/null +++ b/pkg/btrfs/crc32c.go @@ -0,0 +1,16 @@ +package btrfs + +import ( + "encoding/binary" + "hash/crc32" +) + +type CSum [0x20]byte + +func CRC32c(data []byte) CSum { + crc := crc32.Update(0, crc32.MakeTable(crc32.Castagnoli), data) + + var ret CSum + binary.LittleEndian.PutUint32(ret[:], crc) + return ret +} -- cgit v1.2.3-54-g00ecf