diff options
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/nametransform/names_test.go | 24 | ||||
| -rw-r--r-- | internal/nametransform/noiv.go | 63 | 
2 files changed, 0 insertions, 87 deletions
| diff --git a/internal/nametransform/names_test.go b/internal/nametransform/names_test.go index f996860..d772af2 100644 --- a/internal/nametransform/names_test.go +++ b/internal/nametransform/names_test.go @@ -3,32 +3,8 @@ package nametransform  import (  	"bytes"  	"testing" - -	"github.com/rfjakob/gocryptfs/internal/cryptocore"  ) -func TestEncryptPathNoIV(t *testing.T) { -	var s []string -	s = append(s, "foo") -	s = append(s, "foo12312312312312312313123123123") -	s = append(s, "123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890") - -	key := make([]byte, cryptocore.KeyLen) -	cc := cryptocore.New(key, true, true) -	fs := New(cc, true, false) - -	for _, n := range s { -		c := fs.EncryptPathNoIV(n) -		d, err := fs.DecryptPathNoIV(c) -		if err != nil { -			t.Errorf("Got error from DecryptPathNoIV: %s", err) -		} -		if d != n { -			t.Errorf("Content mismatch, n != d: n=%s c=%s d=%s", n, c, d) -		} -	} -} -  func TestPad16(t *testing.T) {  	var s [][]byte  	s = append(s, []byte("foo")) diff --git a/internal/nametransform/noiv.go b/internal/nametransform/noiv.go deleted file mode 100644 index f1009e4..0000000 --- a/internal/nametransform/noiv.go +++ /dev/null @@ -1,63 +0,0 @@ -package nametransform - -import ( -	"strings" -) - -const ( -	OpEncrypt = iota -	OpDecrypt -) - -// DecryptPathNoIV - decrypt path using CBC without any IV. -// This function is deprecated by the the more secure DirIV variant and only retained -// for compatability with old filesystems. -func (be *NameTransform) DecryptPathNoIV(cipherPath string) (plainPath string, err error) { -	plainPath, err = be.translatePathNoIV(cipherPath, OpDecrypt) -	return plainPath, err -} - -// EncryptPathNoIV - decrypt path using CBC without any IV. -// This function is deprecated by the the more secure DirIV variant and only retained -// for compatability with old filesystems. -func (be *NameTransform) EncryptPathNoIV(plainPath string) (cipherPath string) { -	cipherPath, _ = be.translatePathNoIV(plainPath, OpEncrypt) -	return cipherPath -} - -// translatePathZeroIV - encrypt or decrypt path using CBC with an all-zero IV. -// Just splits the string on "/" and hands the parts to encryptName() / decryptName() -func (be *NameTransform) translatePathNoIV(path string, op int) (string, error) { -	var err error - -	// Empty string means root directory -	if path == "" { -		return path, err -	} - -	zeroIV := make([]byte, dirIVLen) - -	// Run operation on each path component -	var translatedParts []string -	parts := strings.Split(path, "/") -	for _, part := range parts { -		if part == "" { -			// This happens on "/foo/bar/" on the front and on the end. -			// Don't panic. -			translatedParts = append(translatedParts, "") -			continue -		} -		var newPart string -		if op == OpEncrypt { -			newPart = be.EncryptName(part, zeroIV) -		} else { -			newPart, err = be.DecryptName(part, zeroIV) -			if err != nil { -				return "", err -			} -		} -		translatedParts = append(translatedParts, newPart) -	} - -	return strings.Join(translatedParts, "/"), err -} | 
