summaryrefslogtreecommitdiff
path: root/pkg/btrfs/btrfsitem/item_extentcsum.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/btrfs/btrfsitem/item_extentcsum.go')
-rw-r--r--pkg/btrfs/btrfsitem/item_extentcsum.go39
1 files changed, 0 insertions, 39 deletions
diff --git a/pkg/btrfs/btrfsitem/item_extentcsum.go b/pkg/btrfs/btrfsitem/item_extentcsum.go
deleted file mode 100644
index 27c7c9b..0000000
--- a/pkg/btrfs/btrfsitem/item_extentcsum.go
+++ /dev/null
@@ -1,39 +0,0 @@
-package btrfsitem
-
-import (
- "fmt"
-
- "lukeshu.com/btrfs-tools/pkg/btrfs/btrfssum"
-)
-
-// key.objectid = BTRFS_EXTENT_CSUM_OBJECTID
-// key.offset = laddr of checksummed region
-type ExtentCSum struct { // EXTENT_CSUM=128
- ChecksumSize int
- // Checksum of each sector starting at key.offset
- Sums []btrfssum.CSum
-}
-
-func (o *ExtentCSum) UnmarshalBinary(dat []byte) (int, error) {
- if o.ChecksumSize == 0 {
- return 0, fmt.Errorf("btrfs.ExtentCSum.UnmarshalBinary: .ChecksumSize must be set")
- }
- for len(dat) >= o.ChecksumSize {
- var csum btrfssum.CSum
- copy(csum[:], dat[:o.ChecksumSize])
- dat = dat[o.ChecksumSize:]
- o.Sums = append(o.Sums, csum)
- }
- return len(o.Sums) * o.ChecksumSize, nil
-}
-
-func (o ExtentCSum) MarshalBinary() ([]byte, error) {
- if o.ChecksumSize == 0 {
- return nil, fmt.Errorf("btrfs.ExtentCSum.MarshalBinary: .ChecksumSize must be set")
- }
- var dat []byte
- for _, csum := range o.Sums {
- dat = append(dat, csum[:o.ChecksumSize]...)
- }
- return dat, nil
-}