forked from TrueCloudLab/distribution
Use resumable hash in digest package
Vendored resumable sha256/sha512 library. Digest package new exports a resumable variant of the Digester. Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
This commit is contained in:
parent
da9d49d186
commit
60b6748c95
24 changed files with 2285 additions and 32 deletions
|
@ -2,7 +2,6 @@ package digest
|
|||
|
||||
import (
|
||||
"bytes"
|
||||
"crypto/sha256"
|
||||
"fmt"
|
||||
"hash"
|
||||
"io"
|
||||
|
@ -72,13 +71,13 @@ func ParseDigest(s string) (Digest, error) {
|
|||
|
||||
// FromReader returns the most valid digest for the underlying content.
|
||||
func FromReader(rd io.Reader) (Digest, error) {
|
||||
h := sha256.New()
|
||||
digester := NewCanonicalDigester()
|
||||
|
||||
if _, err := io.Copy(h, rd); err != nil {
|
||||
if _, err := io.Copy(digester, rd); err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return NewDigest("sha256", h), nil
|
||||
return digester.Digest(), nil
|
||||
}
|
||||
|
||||
// FromTarArchive produces a tarsum digest from reader rd.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue