MCPcopy
hub / github.com/FiloSottile/age / Read

Method Read

internal/stream/stream.go:278–299  ·  view source on GitHub ↗
(p []byte)

Source from the content-addressed store, hash-verified

276}
277
278func (r *EncryptReader) Read(p []byte) (int, error) {
279 if r.ready > 0 {
280 n, err := r.buf.Read(p[:min(len(p), r.ready)])
281 r.ready -= n
282 return n, err
283 }
284 if r.err != nil {
285 return 0, r.err
286 }
287 if len(p) == 0 {
288 return 0, nil
289 }
290
291 if err := r.feedBuffer(); err != nil {
292 r.err = err
293 return 0, err
294 }
295
296 n, err := r.buf.Read(p[:min(len(p), r.ready)])
297 r.ready -= n
298 return n, err
299}
300
301// feedBuffer reads and encrypts the next chunk from r.src and appends it to
302// r.buf. It sets r.ready to the number of newly available bytes in r.buf.

Callers 1

testRoundTripFunction · 0.95

Calls 2

feedBufferMethod · 0.95
ReadMethod · 0.45

Tested by 1

testRoundTripFunction · 0.76