MCPcopy Create free account
hub / github.com/boyter/hashit / processReadFile

Function processReadFile

processor/workers.go:822–960  ·  view source on GitHub ↗
(filename string, content *[]byte)

Source from the content-addressed store, hash-verified

820}
821
822func processReadFile(filename string, content *[]byte) (Result, error) {
823 startTime := makeTimestampNano()
824
825 result := Result{}
826
827 if hasHash(HashNames.MD4) {
828 startTime = makeTimestampNano()
829 d := md4.New()
830 d.Write(*content)
831 result.MD4 = hex.EncodeToString(d.Sum(nil))
832
833 if Trace {
834 printTrace(fmt.Sprintf("nanoseconds processing md4: %s: %d", filename, makeTimestampNano()-startTime))
835 }
836 }
837
838 if hasHash(HashNames.MD5) {
839 startTime = makeTimestampNano()
840 d := md5.New()
841 d.Write(*content)
842 result.MD5 = hex.EncodeToString(d.Sum(nil))
843
844 if Trace {
845 printTrace(fmt.Sprintf("nanoseconds processing md5: %s: %d", filename, makeTimestampNano()-startTime))
846 }
847 }
848
849 if hasHash(HashNames.SHA1) {
850 startTime = makeTimestampNano()
851 d := sha1.New()
852 d.Write(*content)
853 result.SHA1 = hex.EncodeToString(d.Sum(nil))
854
855 if Trace {
856 printTrace(fmt.Sprintf("nanoseconds processing sha1: %s: %d", filename, makeTimestampNano()-startTime))
857 }
858 }
859
860 if hasHash(HashNames.SHA256) {
861 startTime = makeTimestampNano()
862 d := sha256.New()
863 d.Write(*content)
864 result.SHA256 = hex.EncodeToString(d.Sum(nil))
865
866 if Trace {
867 printTrace(fmt.Sprintf("nanoseconds processing sha256: %s: %d", filename, makeTimestampNano()-startTime))
868 }
869 }
870
871 if hasHash(HashNames.SHA512) {
872 startTime = makeTimestampNano()
873 d := sha512.New()
874 d.Write(*content)
875 result.SHA512 = hex.EncodeToString(d.Sum(nil))
876
877 if Trace {
878 printTrace(fmt.Sprintf("nanoseconds processing sha512: %s: %d", filename, makeTimestampNano()-startTime))
879 }

Calls 3

makeTimestampNanoFunction · 0.85
hasHashFunction · 0.85
printTraceFunction · 0.85