mirror of
https://github.com/containers/skopeo.git
synced 2025-09-22 10:27:08 +00:00
Bump github.com/containers/storage from 1.40.2 to 1.41.0
Bumps [github.com/containers/storage](https://github.com/containers/storage) from 1.40.2 to 1.41.0. - [Release notes](https://github.com/containers/storage/releases) - [Changelog](https://github.com/containers/storage/blob/main/docs/containers-storage-changes.md) - [Commits](https://github.com/containers/storage/compare/v1.40.2...v1.41.0) --- updated-dependencies: - dependency-name: github.com/containers/storage dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
This commit is contained in:
14
vendor/github.com/klauspost/compress/zstd/decoder.go
generated
vendored
14
vendor/github.com/klauspost/compress/zstd/decoder.go
generated
vendored
@@ -439,7 +439,7 @@ func (d *Decoder) nextBlock(blocking bool) (ok bool) {
|
||||
println("got", len(d.current.b), "bytes, error:", d.current.err, "data crc:", tmp)
|
||||
}
|
||||
|
||||
if len(next.b) > 0 {
|
||||
if !d.o.ignoreChecksum && len(next.b) > 0 {
|
||||
n, err := d.current.crc.Write(next.b)
|
||||
if err == nil {
|
||||
if n != len(next.b) {
|
||||
@@ -451,7 +451,7 @@ func (d *Decoder) nextBlock(blocking bool) (ok bool) {
|
||||
got := d.current.crc.Sum64()
|
||||
var tmp [4]byte
|
||||
binary.LittleEndian.PutUint32(tmp[:], uint32(got))
|
||||
if !bytes.Equal(tmp[:], next.d.checkCRC) && !ignoreCRC {
|
||||
if !d.o.ignoreChecksum && !bytes.Equal(tmp[:], next.d.checkCRC) {
|
||||
if debugDecoder {
|
||||
println("CRC Check Failed:", tmp[:], " (got) !=", next.d.checkCRC, "(on stream)")
|
||||
}
|
||||
@@ -535,9 +535,15 @@ func (d *Decoder) nextBlockSync() (ok bool) {
|
||||
|
||||
// Update/Check CRC
|
||||
if d.frame.HasCheckSum {
|
||||
d.frame.crc.Write(d.current.b)
|
||||
if !d.o.ignoreChecksum {
|
||||
d.frame.crc.Write(d.current.b)
|
||||
}
|
||||
if d.current.d.Last {
|
||||
d.current.err = d.frame.checkCRC()
|
||||
if !d.o.ignoreChecksum {
|
||||
d.current.err = d.frame.checkCRC()
|
||||
} else {
|
||||
d.current.err = d.frame.consumeCRC()
|
||||
}
|
||||
if d.current.err != nil {
|
||||
println("CRC error:", d.current.err)
|
||||
return false
|
||||
|
9
vendor/github.com/klauspost/compress/zstd/decoder_options.go
generated
vendored
9
vendor/github.com/klauspost/compress/zstd/decoder_options.go
generated
vendored
@@ -19,6 +19,7 @@ type decoderOptions struct {
|
||||
maxDecodedSize uint64
|
||||
maxWindowSize uint64
|
||||
dicts []dict
|
||||
ignoreChecksum bool
|
||||
}
|
||||
|
||||
func (o *decoderOptions) setDefault() {
|
||||
@@ -112,3 +113,11 @@ func WithDecoderMaxWindow(size uint64) DOption {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// IgnoreChecksum allows to forcibly ignore checksum checking.
|
||||
func IgnoreChecksum(b bool) DOption {
|
||||
return func(o *decoderOptions) error {
|
||||
o.ignoreChecksum = b
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
52
vendor/github.com/klauspost/compress/zstd/framedec.go
generated
vendored
52
vendor/github.com/klauspost/compress/zstd/framedec.go
generated
vendored
@@ -290,13 +290,6 @@ func (d *frameDec) checkCRC() error {
|
||||
if !d.HasCheckSum {
|
||||
return nil
|
||||
}
|
||||
var tmp [4]byte
|
||||
got := d.crc.Sum64()
|
||||
// Flip to match file order.
|
||||
tmp[0] = byte(got >> 0)
|
||||
tmp[1] = byte(got >> 8)
|
||||
tmp[2] = byte(got >> 16)
|
||||
tmp[3] = byte(got >> 24)
|
||||
|
||||
// We can overwrite upper tmp now
|
||||
want, err := d.rawInput.readSmall(4)
|
||||
@@ -305,7 +298,19 @@ func (d *frameDec) checkCRC() error {
|
||||
return err
|
||||
}
|
||||
|
||||
if !bytes.Equal(tmp[:], want) && !ignoreCRC {
|
||||
if d.o.ignoreChecksum {
|
||||
return nil
|
||||
}
|
||||
|
||||
var tmp [4]byte
|
||||
got := d.crc.Sum64()
|
||||
// Flip to match file order.
|
||||
tmp[0] = byte(got >> 0)
|
||||
tmp[1] = byte(got >> 8)
|
||||
tmp[2] = byte(got >> 16)
|
||||
tmp[3] = byte(got >> 24)
|
||||
|
||||
if !bytes.Equal(tmp[:], want) {
|
||||
if debugDecoder {
|
||||
println("CRC Check Failed:", tmp[:], "!=", want)
|
||||
}
|
||||
@@ -317,6 +322,19 @@ func (d *frameDec) checkCRC() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// consumeCRC reads the checksum data if the frame has one.
|
||||
func (d *frameDec) consumeCRC() error {
|
||||
if d.HasCheckSum {
|
||||
_, err := d.rawInput.readSmall(4)
|
||||
if err != nil {
|
||||
println("CRC missing?", err)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// runDecoder will create a sync decoder that will decode a block of data.
|
||||
func (d *frameDec) runDecoder(dst []byte, dec *blockDec) ([]byte, error) {
|
||||
saved := d.history.b
|
||||
@@ -373,13 +391,17 @@ func (d *frameDec) runDecoder(dst []byte, dec *blockDec) ([]byte, error) {
|
||||
if d.FrameContentSize != fcsUnknown && uint64(len(d.history.b)-crcStart) != d.FrameContentSize {
|
||||
err = ErrFrameSizeMismatch
|
||||
} else if d.HasCheckSum {
|
||||
var n int
|
||||
n, err = d.crc.Write(dst[crcStart:])
|
||||
if err == nil {
|
||||
if n != len(dst)-crcStart {
|
||||
err = io.ErrShortWrite
|
||||
} else {
|
||||
err = d.checkCRC()
|
||||
if d.o.ignoreChecksum {
|
||||
err = d.consumeCRC()
|
||||
} else {
|
||||
var n int
|
||||
n, err = d.crc.Write(dst[crcStart:])
|
||||
if err == nil {
|
||||
if n != len(dst)-crcStart {
|
||||
err = io.ErrShortWrite
|
||||
} else {
|
||||
err = d.checkCRC()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
11
vendor/github.com/klauspost/compress/zstd/fuzz.go
generated
vendored
11
vendor/github.com/klauspost/compress/zstd/fuzz.go
generated
vendored
@@ -1,11 +0,0 @@
|
||||
//go:build ignorecrc
|
||||
// +build ignorecrc
|
||||
|
||||
// Copyright 2019+ Klaus Post. All rights reserved.
|
||||
// License information can be found in the LICENSE file.
|
||||
// Based on work by Yann Collet, released under BSD License.
|
||||
|
||||
package zstd
|
||||
|
||||
// ignoreCRC can be used for fuzz testing to ignore CRC values...
|
||||
const ignoreCRC = true
|
11
vendor/github.com/klauspost/compress/zstd/fuzz_none.go
generated
vendored
11
vendor/github.com/klauspost/compress/zstd/fuzz_none.go
generated
vendored
@@ -1,11 +0,0 @@
|
||||
//go:build !ignorecrc
|
||||
// +build !ignorecrc
|
||||
|
||||
// Copyright 2019+ Klaus Post. All rights reserved.
|
||||
// License information can be found in the LICENSE file.
|
||||
// Based on work by Yann Collet, released under BSD License.
|
||||
|
||||
package zstd
|
||||
|
||||
// ignoreCRC can be used for fuzz testing to ignore CRC values...
|
||||
const ignoreCRC = false
|
124
vendor/github.com/klauspost/compress/zstd/seqdec_amd64.s
generated
vendored
124
vendor/github.com/klauspost/compress/zstd/seqdec_amd64.s
generated
vendored
@@ -1326,30 +1326,30 @@ copy_match:
|
||||
JA copy_overlapping_match
|
||||
|
||||
// Copy non-overlapping match
|
||||
XORQ R12, R12
|
||||
ADDQ R13, DI
|
||||
MOVQ BX, R12
|
||||
ADDQ R13, BX
|
||||
|
||||
copy_2:
|
||||
MOVUPS (R11)(R12*1), X0
|
||||
MOVUPS X0, (BX)(R12*1)
|
||||
MOVUPS (R11), X0
|
||||
MOVUPS X0, (R12)
|
||||
ADDQ $0x10, R11
|
||||
ADDQ $0x10, R12
|
||||
CMPQ R12, R13
|
||||
JB copy_2
|
||||
ADDQ R13, BX
|
||||
ADDQ R13, DI
|
||||
SUBQ $0x10, R13
|
||||
JHI copy_2
|
||||
JMP handle_loop
|
||||
|
||||
// Copy overlapping match
|
||||
copy_overlapping_match:
|
||||
XORQ R12, R12
|
||||
ADDQ R13, DI
|
||||
|
||||
copy_slow_3:
|
||||
MOVB (R11)(R12*1), R14
|
||||
MOVB R14, (BX)(R12*1)
|
||||
INCQ R12
|
||||
CMPQ R12, R13
|
||||
JB copy_slow_3
|
||||
ADDQ R13, BX
|
||||
ADDQ R13, DI
|
||||
MOVB (R11), R12
|
||||
MOVB R12, (BX)
|
||||
INCQ R11
|
||||
INCQ BX
|
||||
DECQ R13
|
||||
JNZ copy_slow_3
|
||||
|
||||
handle_loop:
|
||||
ADDQ $0x18, AX
|
||||
@@ -1826,30 +1826,30 @@ copy_match:
|
||||
JA copy_overlapping_match
|
||||
|
||||
// Copy non-overlapping match
|
||||
XORQ CX, CX
|
||||
ADDQ R13, R12
|
||||
MOVQ R10, CX
|
||||
ADDQ R13, R10
|
||||
|
||||
copy_2:
|
||||
MOVUPS (AX)(CX*1), X0
|
||||
MOVUPS X0, (R10)(CX*1)
|
||||
MOVUPS (AX), X0
|
||||
MOVUPS X0, (CX)
|
||||
ADDQ $0x10, AX
|
||||
ADDQ $0x10, CX
|
||||
CMPQ CX, R13
|
||||
JB copy_2
|
||||
ADDQ R13, R10
|
||||
ADDQ R13, R12
|
||||
SUBQ $0x10, R13
|
||||
JHI copy_2
|
||||
JMP handle_loop
|
||||
|
||||
// Copy overlapping match
|
||||
copy_overlapping_match:
|
||||
XORQ CX, CX
|
||||
ADDQ R13, R12
|
||||
|
||||
copy_slow_3:
|
||||
MOVB (AX)(CX*1), R14
|
||||
MOVB R14, (R10)(CX*1)
|
||||
INCQ CX
|
||||
CMPQ CX, R13
|
||||
JB copy_slow_3
|
||||
ADDQ R13, R10
|
||||
ADDQ R13, R12
|
||||
MOVB (AX), CL
|
||||
MOVB CL, (R10)
|
||||
INCQ AX
|
||||
INCQ R10
|
||||
DECQ R13
|
||||
JNZ copy_slow_3
|
||||
|
||||
handle_loop:
|
||||
MOVQ ctx+16(FP), AX
|
||||
@@ -2333,30 +2333,30 @@ copy_match:
|
||||
JA copy_overlapping_match
|
||||
|
||||
// Copy non-overlapping match
|
||||
XORQ R12, R12
|
||||
ADDQ R13, R11
|
||||
MOVQ R9, R12
|
||||
ADDQ R13, R9
|
||||
|
||||
copy_2:
|
||||
MOVUPS (CX)(R12*1), X0
|
||||
MOVUPS X0, (R9)(R12*1)
|
||||
MOVUPS (CX), X0
|
||||
MOVUPS X0, (R12)
|
||||
ADDQ $0x10, CX
|
||||
ADDQ $0x10, R12
|
||||
CMPQ R12, R13
|
||||
JB copy_2
|
||||
ADDQ R13, R9
|
||||
ADDQ R13, R11
|
||||
SUBQ $0x10, R13
|
||||
JHI copy_2
|
||||
JMP handle_loop
|
||||
|
||||
// Copy overlapping match
|
||||
copy_overlapping_match:
|
||||
XORQ R12, R12
|
||||
ADDQ R13, R11
|
||||
|
||||
copy_slow_3:
|
||||
MOVB (CX)(R12*1), R14
|
||||
MOVB R14, (R9)(R12*1)
|
||||
INCQ R12
|
||||
CMPQ R12, R13
|
||||
JB copy_slow_3
|
||||
ADDQ R13, R9
|
||||
ADDQ R13, R11
|
||||
MOVB (CX), R12
|
||||
MOVB R12, (R9)
|
||||
INCQ CX
|
||||
INCQ R9
|
||||
DECQ R13
|
||||
JNZ copy_slow_3
|
||||
|
||||
handle_loop:
|
||||
MOVQ ctx+16(FP), CX
|
||||
@@ -2862,6 +2862,7 @@ copy_match:
|
||||
JA copy_overlapping_match
|
||||
|
||||
// Copy non-overlapping match
|
||||
ADDQ R13, R12
|
||||
XORQ CX, CX
|
||||
TESTQ $0x00000001, R13
|
||||
JZ copy_2_word
|
||||
@@ -2900,21 +2901,19 @@ copy_2_test:
|
||||
CMPQ CX, R13
|
||||
JB copy_2
|
||||
ADDQ R13, R10
|
||||
ADDQ R13, R12
|
||||
JMP handle_loop
|
||||
|
||||
// Copy overlapping match
|
||||
copy_overlapping_match:
|
||||
XORQ CX, CX
|
||||
ADDQ R13, R12
|
||||
|
||||
copy_slow_3:
|
||||
MOVB (AX)(CX*1), R14
|
||||
MOVB R14, (R10)(CX*1)
|
||||
INCQ CX
|
||||
CMPQ CX, R13
|
||||
JB copy_slow_3
|
||||
ADDQ R13, R10
|
||||
ADDQ R13, R12
|
||||
MOVB (AX), CL
|
||||
MOVB CL, (R10)
|
||||
INCQ AX
|
||||
INCQ R10
|
||||
DECQ R13
|
||||
JNZ copy_slow_3
|
||||
|
||||
handle_loop:
|
||||
MOVQ ctx+16(FP), AX
|
||||
@@ -3398,6 +3397,7 @@ copy_match:
|
||||
JA copy_overlapping_match
|
||||
|
||||
// Copy non-overlapping match
|
||||
ADDQ R13, R11
|
||||
XORQ R12, R12
|
||||
TESTQ $0x00000001, R13
|
||||
JZ copy_2_word
|
||||
@@ -3436,21 +3436,19 @@ copy_2_test:
|
||||
CMPQ R12, R13
|
||||
JB copy_2
|
||||
ADDQ R13, R9
|
||||
ADDQ R13, R11
|
||||
JMP handle_loop
|
||||
|
||||
// Copy overlapping match
|
||||
copy_overlapping_match:
|
||||
XORQ R12, R12
|
||||
ADDQ R13, R11
|
||||
|
||||
copy_slow_3:
|
||||
MOVB (CX)(R12*1), R14
|
||||
MOVB R14, (R9)(R12*1)
|
||||
INCQ R12
|
||||
CMPQ R12, R13
|
||||
JB copy_slow_3
|
||||
ADDQ R13, R9
|
||||
ADDQ R13, R11
|
||||
MOVB (CX), R12
|
||||
MOVB R12, (R9)
|
||||
INCQ CX
|
||||
INCQ R9
|
||||
DECQ R13
|
||||
JNZ copy_slow_3
|
||||
|
||||
handle_loop:
|
||||
MOVQ ctx+16(FP), CX
|
||||
|
Reference in New Issue
Block a user