f1945c4daa
Force decode of encrypted files even if the integrity check fails, instead of failing with an IO error. Warning messages are still printed to syslog if corrupted files are encountered. It can be useful to recover files from disks with bad sectors or other corrupted media. Closes https://github.com/rfjakob/gocryptfs/pull/102 .
37 lines
732 B
Go
37 lines
732 B
Go
package cryptocore
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
// "New" should accept at least these param combinations
|
|
func TestCryptoCoreNew(t *testing.T) {
|
|
key := make([]byte, 32)
|
|
for _, useHKDF := range []bool{true, false} {
|
|
c := New(key, BackendOpenSSL, 128, useHKDF, false)
|
|
if c.IVLen != 16 {
|
|
t.Fail()
|
|
}
|
|
c = New(key, BackendGoGCM, 96, useHKDF, false)
|
|
if c.IVLen != 12 {
|
|
t.Fail()
|
|
}
|
|
c = New(key, BackendGoGCM, 128, useHKDF, false)
|
|
if c.IVLen != 16 {
|
|
t.Fail()
|
|
}
|
|
}
|
|
}
|
|
|
|
// "New" should panic on any key not 32 bytes long
|
|
func TestNewPanic(t *testing.T) {
|
|
defer func() {
|
|
if r := recover(); r == nil {
|
|
t.Errorf("The code did not panic")
|
|
}
|
|
}()
|
|
|
|
key := make([]byte, 16)
|
|
New(key, BackendOpenSSL, 128, true, false)
|
|
}
|