MCPcopy Create free account
hub / github.com/bodgit/sevenzip / coderReader

Method coderReader

struct.go:93–112  ·  view source on GitHub ↗
(readers []io.ReadCloser, coder uint64, password string)

Source from the content-addressed store, hash-verified

91}
92
93func (f *folder) coderReader(readers []io.ReadCloser, coder uint64, password string) (io.ReadCloser, bool, error) {
94 dcomp := decompressor(f.coder[coder].id)
95 if dcomp == nil {
96 return nil, false, errAlgorithm
97 }
98
99 cr, err := dcomp(f.coder[coder].properties, f.size[coder], readers)
100 if err != nil {
101 return nil, false, err
102 }
103
104 crc, ok := cr.(CryptoReadCloser)
105 if ok {
106 if err = crc.Password(password); err != nil {
107 return nil, true, fmt.Errorf("sevenzip: error setting password: %w", err)
108 }
109 }
110
111 return plumbing.LimitReadCloser(cr, int64(f.size[coder])), ok, nil //nolint:gosec
112}
113
114type folderReadCloser struct {
115 io.ReadCloser

Callers 1

folderReaderMethod · 0.80

Calls 2

decompressorFunction · 0.85
PasswordMethod · 0.65

Tested by

no test coverage detected