From de3a2c189578f7636c39fde44fbe1da9c78b367e Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 4 Nov 2018 21:29:17 +0100 Subject: fusefrontend: mark a few more functions as symlink-safe / unsafe --- internal/fusefrontend/names.go | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'internal/fusefrontend/names.go') diff --git a/internal/fusefrontend/names.go b/internal/fusefrontend/names.go index 5ec252b..6997177 100644 --- a/internal/fusefrontend/names.go +++ b/internal/fusefrontend/names.go @@ -33,6 +33,8 @@ func (fs *FS) isFiltered(path string) bool { // GetBackingPath - get the absolute encrypted path of the backing file // from the relative plaintext path "relPath" +// +// TODO: this function is NOT symlink-safe. func (fs *FS) getBackingPath(relPath string) (string, error) { cPath, err := fs.encryptPath(relPath) if err != nil { @@ -96,6 +98,9 @@ func (fs *FS) openBackingDir(relPath string) (dirfd int, cName string, err error } // encryptPath - encrypt relative plaintext path +// +// TODO: this function is NOT symlink-safe because EncryptPathDirIV is not +// symlink-safe. func (fs *FS) encryptPath(plainPath string) (string, error) { if plainPath != "" { // Empty path gets encrypted all the time without actual file accesses. fs.AccessedSinceLastCheck = 1 -- cgit v1.2.3