From 0e2e8e54ab85889d3c42cf8b0744c3253065983b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 3 Mar 2025 09:51:42 +0000 Subject: [chore]: Bump github.com/ncruces/go-sqlite3 from 0.23.0 to 0.24.0 (#3862) Bumps [github.com/ncruces/go-sqlite3](https://github.com/ncruces/go-sqlite3) from 0.23.0 to 0.24.0. - [Release notes](https://github.com/ncruces/go-sqlite3/releases) - [Commits](https://github.com/ncruces/go-sqlite3/compare/v0.23.0...v0.24.0) --- updated-dependencies: - dependency-name: github.com/ncruces/go-sqlite3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- vendor/github.com/ncruces/go-sqlite3/vfs/cksm.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'vendor/github.com/ncruces/go-sqlite3/vfs/cksm.go') diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/cksm.go b/vendor/github.com/ncruces/go-sqlite3/vfs/cksm.go index 39493df99..041defec3 100644 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/cksm.go +++ b/vendor/github.com/ncruces/go-sqlite3/vfs/cksm.go @@ -47,11 +47,12 @@ type cksmFlags struct { func (c cksmFile) ReadAt(p []byte, off int64) (n int, err error) { n, err = c.File.ReadAt(p, off) + p = p[:n] // SQLite is reading the header of a database file. if c.isDB && off == 0 && len(p) >= 100 && bytes.HasPrefix(p, []byte("SQLite format 3\000")) { - c.init(p) + c.init((*[100]byte)(p)) } // Verify checksums. @@ -69,7 +70,7 @@ func (c cksmFile) WriteAt(p []byte, off int64) (n int, err error) { // SQLite is writing the first page of a database file. if c.isDB && off == 0 && len(p) >= 100 && bytes.HasPrefix(p, []byte("SQLite format 3\000")) { - c.init(p) + c.init((*[100]byte)(p)) } // Compute checksums. @@ -122,12 +123,16 @@ func (c cksmFile) fileControl(ctx context.Context, mod api.Module, op _FcntlOpco return vfsFileControlImpl(ctx, mod, c.File, op, pArg) } -func (f *cksmFlags) init(header []byte) { +func (f *cksmFlags) init(header *[100]byte) { f.pageSize = 256 * int(binary.LittleEndian.Uint16(header[16:18])) if r := header[20] == 8; r != f.computeCksm { f.computeCksm = r f.verifyCksm = r } + if !sql3util.ValidPageSize(f.pageSize) { + f.computeCksm = false + f.verifyCksm = false + } } func cksmCompute(a []byte) (cksm [8]byte) { -- cgit v1.2.3