diff --git a/internal/pkg/archive.go b/internal/pkg/archive.go index ebda6dbf..8b5398fa 100644 --- a/internal/pkg/archive.go +++ b/internal/pkg/archive.go @@ -262,8 +262,8 @@ func Write(fsys fs.FS, root string, w io.Writer) error { return aw.Close() } -// HashFS returns a checksum produced by hashing the result of [Flatten]. -func HashFS(buf *Checksum, fsys fs.FS, root string) error { +// SumFS saves checksum of the archive of fsys to the value pointed to by buf. +func SumFS(buf *Checksum, fsys fs.FS, root string) error { h := sha512.New384() if err := Write(fsys, root, h); err != nil { return err @@ -272,7 +272,8 @@ func HashFS(buf *Checksum, fsys fs.FS, root string) error { return nil } -// HashDir returns a checksum produced by hashing the result of [Flatten]. -func HashDir(buf *Checksum, pathname *check.Absolute) error { - return HashFS(buf, os.DirFS(pathname.String()), ".") +// SumDir saves checksum of the archive of directory at pathname to the value +// pointed to by buf. +func SumDir(buf *Checksum, pathname *check.Absolute) error { + return SumFS(buf, os.DirFS(pathname.String()), ".") } diff --git a/internal/pkg/archive_test.go b/internal/pkg/archive_test.go index a51cfee5..e04f3a66 100644 --- a/internal/pkg/archive_test.go +++ b/internal/pkg/archive_test.go @@ -141,10 +141,10 @@ func TestArchive(t *testing.T) { t.Parallel() var got pkg.Checksum - if err := pkg.HashFS(&got, tc.fsys, "."); err != nil { - t.Fatalf("HashFS: error = %v", err) + if err := pkg.SumFS(&got, tc.fsys, "."); err != nil { + t.Fatalf("SumFS: error = %v", err) } else if got != tc.sum { - t.Fatalf("HashFS: %v", &pkg.ChecksumMismatchError{ + t.Fatalf("SumFS: %v", &pkg.ChecksumMismatchError{ Got: got, Want: tc.sum, }) diff --git a/internal/pkg/clean_test.go b/internal/pkg/clean_test.go index 4b2385a3..e9124ab4 100644 --- a/internal/pkg/clean_test.go +++ b/internal/pkg/clean_test.go @@ -283,8 +283,8 @@ func TestClean(t *testing.T) { want := tc.want.hash() var checksum pkg.Checksum - if err = pkg.HashDir(&checksum, base); err != nil { - t.Fatalf("HashDir: error = %v", err) + if err = pkg.SumDir(&checksum, base); err != nil { + t.Fatalf("SumDir: error = %v", err) } else if checksum != want { t.Error(expectsFrom(base.String())) } diff --git a/internal/pkg/pkg.go b/internal/pkg/pkg.go index d98b3753..8b022d1f 100644 --- a/internal/pkg/pkg.go +++ b/internal/pkg/pkg.go @@ -1007,7 +1007,7 @@ func (c *Cache) Scrub(checks int) error { pathname := dir.Append(ent.Name()) if ent.IsDir() { - if err := HashDir(got, pathname); err != nil { + if err := SumDir(got, pathname); err != nil { addErr(pathname, err) return true } @@ -2132,7 +2132,7 @@ func (c *Cache) cure(a Artifact, curesExempt bool) ( } var gotChecksum Checksum - if err = HashFS( + if err = SumFS( &gotChecksum, dotOverrideFS{os.DirFS(t.work.String()).(dirFS)}, ".", diff --git a/internal/pkg/pkg_test.go b/internal/pkg/pkg_test.go index 35f858a5..25deb95c 100644 --- a/internal/pkg/pkg_test.go +++ b/internal/pkg/pkg_test.go @@ -357,7 +357,7 @@ type expectsFS fstest.MapFS // hash computes the checksum of e. func (e expectsFS) hash() (checksum pkg.Checksum) { - if err := pkg.HashFS(&checksum, fstest.MapFS(e), "."); err != nil { + if err := pkg.SumFS(&checksum, fstest.MapFS(e), "."); err != nil { panic(err) } return @@ -561,8 +561,8 @@ func checkWithCache(t *testing.T, testCases []cacheTestCase) { want := tc.want.hash() var checksum pkg.Checksum - if err := pkg.HashDir(&checksum, base); err != nil { - t.Fatalf("HashDir: error = %v", err) + if err := pkg.SumDir(&checksum, base); err != nil { + t.Fatalf("SumDir: error = %v", err) } else if checksum != want { t.Fatal(expectsFrom(base.String())) } @@ -581,8 +581,8 @@ func checkWithCache(t *testing.T, testCases []cacheTestCase) { } // validate again to make sure scrub did not condemn anything - if err := pkg.HashDir(&checksum, base); err != nil { - t.Fatalf("HashDir: error = %v", err) + if err := pkg.SumDir(&checksum, base); err != nil { + t.Fatalf("SumDir: error = %v", err) } else if checksum != want { t.Fatalf("(scrubbed) %s", expectsFrom(base.String())) } diff --git a/internal/uevent/coldboot_test.go b/internal/uevent/coldboot_test.go index 4b38453a..0a50ead4 100644 --- a/internal/uevent/coldboot_test.go +++ b/internal/uevent/coldboot_test.go @@ -81,8 +81,8 @@ func TestColdboot(t *testing.T) { } var checksum pkg.Checksum - if err = pkg.HashDir(&checksum, check.MustAbs(d)); err != nil { - t.Fatalf("HashDir: error = %v", err) + if err = pkg.SumDir(&checksum, check.MustAbs(d)); err != nil { + t.Fatalf("SumDir: error = %v", err) } wantChecksum := pkg.MustDecode("mEy_Lf5KotThm7OwMx7yTKZh5HCCyaB41pVAvI9uDMgVQFM91iosBLYsRm8bDsX8")