libgocryptfs/internal/nametransform
Jakob Unterwurzacher 932efbd459 fusefrontend: make openBackingDir() symlink-safe
openBackingDir() used encryptPath(), which is not symlink-safe
itself. Drop encryptPath() and implement our own directory walk.

Adds three seconds to untar and two seconds to rm:

$ ./benchmark.bash
Testing gocryptfs at /tmp/benchmark.bash.MzG: gocryptfs v1.6-36-g8fb3c2f-dirty; go-fuse v20170619-66-g6df8ddc; 2018-10-14 go1.11
WRITE: 262144000 bytes (262 MB, 250 MiB) copied, 1.25078 s, 210 MB/s
READ:  262144000 bytes (262 MB, 250 MiB) copied, 1.0318 s, 254 MB/s
UNTAR: 20.941
MD5:   11.568
LS:    1.638
RM:    5.337
2019-01-01 16:24:09 +01:00
..
dirivcache Assorted spelling fixes. 2018-12-27 15:19:55 +01:00
diriv.go fusefrontend: make openBackingDir() symlink-safe 2019-01-01 16:24:09 +01:00
longnames_test.go longnames: fix fsstress failure, use dirfd 2016-04-10 21:31:08 +02:00
longnames.go fusefrontend: make DecryptPath() symlink-safe 2019-01-01 16:24:09 +01:00
names_test.go nametransform: harden name decryption against invalid input 2017-05-23 21:26:38 +02:00
names.go Assorted spelling fixes. 2018-12-27 15:19:55 +01:00
pad16.go nametransform: harden name decryption against invalid input 2017-05-23 21:26:38 +02:00