Skip to content

Crypto errcheck

Christopher Schinnerl requested to merge VoidingWarranties:crypto-errcheck into master

Created by: VoidingWarranties

Used errcheck -blank github.com/NebulousLabs/Sia/crypto/... to find places where errors weren't being checked, and checked them.

The remaining unchecked errors are listed below. Other than the first three, all of the remaining unchecked errors are in tests and are calls to standard library packages that we can assume return nil on a working system, so they can be ignored.

The first three unchecked errors below assume that an error can not occur. See issue #883 (closed). For these cases tests were added to verify these assumptions.

/Users/jordan/Projects/Sia/crypto/encrypt.go:40:10  cipher, _ := twofish.NewCipher(key[:])
/Users/jordan/Projects/Sia/crypto/encrypt.go:50:8   aead, _ := cipher.NewGCM(key.NewCipher())
/Users/jordan/Projects/Sia/crypto/encrypt.go:69:8   aead, _ := cipher.NewGCM(key.NewCipher())
/Users/jordan/Projects/Sia/crypto/encrypt_test.go:101:26    key.NewWriter(buf).Write(plaintext)
/Users/jordan/Projects/Sia/crypto/encrypt_test.go:110:25    key.NewReader(buf).Read(decrypted)
/Users/jordan/Projects/Sia/crypto/encrypt_test.go:145:11    zip.Close()
/Users/jordan/Projects/Sia/crypto/hash_test.go:54:11    rand.Read(data)
/Users/jordan/Projects/Sia/crypto/merkle_test.go:50:11  rand.Read(data)
/Users/jordan/Projects/Sia/crypto/merkle_test.go:83:11  rand.Read(data)
/Users/jordan/Projects/Sia/crypto/merkle_test.go:105:11 rand.Read(data)
/Users/jordan/Projects/Sia/crypto/merkle_test.go:136:11 rand.Read(data)
/Users/jordan/Projects/Sia/crypto/signatures_test.go:156:11 rand.Read(signedData[:])
/Users/jordan/Projects/Sia/crypto/signatures_test.go:197:12 rand.Read(randData[:])

Merge request reports