restic/internal/fuse
Andrew Gunnerson 8c02ebb029
Add support for extended attributes on symlinks
Linux allows the use of non-`user.` extended attributes on symlinks. One
of the main users of this functionality is SELinux's `security.selinux`
xattr for storing a path's label. By storing symlink xattrs, restic is
now suitable for backing up the root filesystem on Linux distributions
that use SELinux.

This commit adds support for symlink xattrs when backing up data,
restoring data, and mounting snapshots via a fuse mount. All calls to
the xattr library have been updated to the use `L` variants of the
various functions, which always operate on the path given, without
following symlinks.

Fixes: #4375

Signed-off-by: Andrew Gunnerson <accounts+github@chiller3.com>
2023-06-19 14:37:31 -04:00
..
dir.go Use _ as parameter name for unused Context 2023-05-18 21:15:45 +02:00
file.go Replace lots of unused parameters with _ 2023-05-18 21:17:53 +02:00
fuse_test.go Merge pull request #4255 from greatroar/fuse-hash 2023-04-07 12:56:57 +02:00
inode.go fuse: Mix inode hashes in a non-symmetric way 2023-03-21 17:33:18 +01:00
link.go Add support for extended attributes on symlinks 2023-06-19 14:37:31 -04:00
other.go Replace lots of unused parameters with _ 2023-05-18 21:17:53 +02:00
root.go cmd, restic: Refactor and fix snapshot filtering 2023-02-19 15:04:25 +01:00
snapshots_dir.go Replace lots of unused parameters with _ 2023-05-18 21:17:53 +02:00
snapshots_dirstruct.go cmd, restic: Refactor and fix snapshot filtering 2023-02-19 15:04:25 +01:00
snapshots_dirstruct_test.go mount: Map slashes in tags to underscores 2022-08-19 18:17:57 +02:00