diff options
author | Luke Shumaker <lukeshu@lukeshu.com> | 2022-05-11 12:34:18 -0600 |
---|---|---|
committer | Luke Shumaker <lukeshu@lukeshu.com> | 2022-05-11 12:34:18 -0600 |
commit | 3179489ad6498e3d8b2b7948d93cee4efa01049f (patch) | |
tree | d999166ab0c19c1e0485afe08e345989f6c4f672 /pkg/btrfs/crc32c.go | |
parent | 7e9213c75b9361c174f4662ff3feb4104d2c8f07 (diff) |
move to pkg/btrfs, get CRC working
Diffstat (limited to 'pkg/btrfs/crc32c.go')
-rw-r--r-- | pkg/btrfs/crc32c.go | 16 |
1 files changed, 16 insertions, 0 deletions
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 +} |