diff options
author | Jakob Unterwurzacher | 2016-09-25 18:01:24 +0200 |
---|---|---|
committer | Jakob Unterwurzacher | 2016-09-25 18:01:24 +0200 |
commit | b883dd10a62eb8d7ddf589e2878d8e0f65a90e83 (patch) | |
tree | bd500c18f8c7bd8095617011eb0ea3dace11ac5c /internal/fusefrontend_reverse/rpath.go | |
parent | 12808138ef105824de97924a585ad66bacb3a18b (diff) |
reverse: add symlink encryption and Readlink support
Diffstat (limited to 'internal/fusefrontend_reverse/rpath.go')
-rw-r--r-- | internal/fusefrontend_reverse/rpath.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/internal/fusefrontend_reverse/rpath.go b/internal/fusefrontend_reverse/rpath.go index c603cad..6d418e0 100644 --- a/internal/fusefrontend_reverse/rpath.go +++ b/internal/fusefrontend_reverse/rpath.go @@ -47,6 +47,12 @@ func (rfs *reverseFS) decryptPath(relPath string) (string, error) { if _, ok := err.(base64.CorruptInputError); ok { return "", syscall.ENOENT } + // Stat attempts on the link target of encrypted symlinks. + // These are always valid base64 but the length is not a + // multiple of 16. + if err == syscall.EINVAL { + return "", syscall.ENOENT + } return "", err } } else if nameType == nametransform.LongNameContent { |