From 2b9ccbe76c6975fe7cd09a3260ba459d59b9970a Mon Sep 17 00:00:00 2001 From: Emiliano Ciavatta Date: Wed, 1 Apr 2020 14:21:58 +0200 Subject: Initial commit --- utils.go | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 utils.go (limited to 'utils.go') diff --git a/utils.go b/utils.go new file mode 100644 index 0000000..cc99d93 --- /dev/null +++ b/utils.go @@ -0,0 +1,30 @@ +package main + +import ( + "crypto/sha256" + "io" + "log" + "os" +) + +const invalidHashString = "invalid" + +func Sha256Sum(fileName string) (string, error) { + f, err := os.Open(fileName) + if err != nil { + return invalidHashString, err + } + defer func() { + err = f.Close() + if err != nil { + log.Println("Cannot close file " + fileName) + } + }() + + h := sha256.New() + if _, err := io.Copy(h, f); err != nil { + return invalidHashString, err + } + + return string(h.Sum(nil)), nil +} -- cgit v1.2.3-70-g09d2