| Age | Commit message (Collapse) | Author | 
|---|
|  | Copy-paste error.
https://github.com/rfjakob/gocryptfs/issues/308 | 
|  | * listxattr is fixed via the /proc/self/fd trick
* setxattr,removexattr are fixed by opening the file O_WRONLY
Fixes https://github.com/rfjakob/gocryptfs/issues/308 | 
|  | Darwin now also has these functions, use them. Simplifies
the code and makes it symlink-safe on Darwin as well. | 
|  | Uses /proc/self/fd. | 
|  | Uses /proc/self/fd on Linux. | 
|  | Uses the /proc/self/fd trick. | 
|  | Uses the /proc/self/fd trick, which does not work
on Darwin. | 
|  | No changes needed. | 
|  | And also rename DeleteLongName() -> DeleteLongNameAt(). The
naming follow the names open the openat() etc syscalls. | 
|  |  | 
|  | Document which FUSE calls are already symlink-safe in
the function comment. | 
|  | Make it clear that this channel is only used to report corruptions
that are transparently mitigated and do not return an error to
the user. | 
|  | We are clean again.
Warnings were:
internal/fusefrontend/fs.go:443:14: should omit type string from declaration
of var cTarget; it will be inferred from the right-hand side
internal/fusefrontend/xattr.go:26:1: comment on exported method FS.GetXAttr
should be of the form "GetXAttr ..."
internal/syscallcompat/sys_common.go:9:7: exported const PATH_MAX should have
comment or be unexported | 
|  | Reading system.posix_acl_access and system.posix_acl_default
should return EOPNOTSUPP to inform user-space that we do not
support ACLs.
xftestest essientially does
	chacl -l | grep "Operation not supported"
to determine if the filesystem supports ACLs, and used to
wrongly believe that gocryptfs does. | 
|  | Support has been merged into the xattr package
( https://github.com/pkg/xattr/pull/29 ), use it. | 
|  | mv is unhappy when we return EPERM when it tries to set
system.posix_acl_access:
   mv: preserving permissions for ‘b/x’: Operation not permitted
Now we return EOPNOTSUPP like tmpfs does and mv seems happy. | 
|  | Values a binary-safe, there is no need to base64-encode them.
Old, base64-encoded values are supported transparently
on reading. Writing xattr values now always writes them binary. | 
|  | Pass the "flags" parameter to the lower layer syscall.
This makes Apple applications being able to successfully save data. | 
|  | We previously returned EPERM to prevent the kernel from
blacklisting our xattr support once we get an unsupported
flag, but this causes lots of trouble on MacOS:
Cannot save files from GUI apps, see
https://github.com/rfjakob/gocryptfs/issues/229
Returning ENOSYS triggers the dotfiles fallback on MacOS
and fixes the issue. | 
|  | * Fixed xattr filtering for MacOS. "system." and "user." prefixes are only relevant for Linux.
* Small cleanup and additional tests. | 
|  | OpenDir and ListXAttr skip over corrupt entries,
readFileID treats files the are too small as empty.
This improves usability in the face of corruption,
but hides the problem in a log message instead of
putting it in the return code.
Create a channel to report these corruptions to fsck
so it can report them to the user.
Also update the manpage and the changelog with the -fsck option.
Closes https://github.com/rfjakob/gocryptfs/issues/191 | 
|  | "ls -l" queries security.selinux, system.posix_acl_access, system.posix_acl_default
and throws error messages if it gets something else than ENODATA. | 
|  | Now that https://github.com/pkg/xattr/pull/24
has been merged there is no reason to keep
our private copy.
Switch to the upstream version. | 
|  | At the moment, only for reverse mode.
https://github.com/rfjakob/gocryptfs/issues/217 |