rclone/backend/local
Nick Craig-Wood 9bf78d0373 local: fix "Failed to read metadata: function not implemented" on old Linux kernels
Before this change rclone used statx() to read the metadata for files
from the local filesystem when `-M` was in use.

Unfortunately statx() was only introduced in kernel 4.11 which was
released in April 2017 so there are current systems (eg Centos 7)
still on kernel versions which don't support statx().

This patch checks to see if statx() is available and if it isn't, it
falls back to using fstatat() which was introduced in Linux 2.6.16
which is guaranteed for all Go versions.

See: https://forum.rclone.org/t/metadata-from-linux-local-s3-failed-to-copy-failed-to-read-metadata-from-source-object-function-not-implemented/33233/
2022-10-07 14:14:16 +01:00
..
about_unix.go Remove github.com/pkg/errors and replace with std library version 2021-11-07 11:53:30 +00:00
about_windows.go Fix lint issues reported by staticcheck 2022-06-13 21:13:50 +02:00
fadvise_other.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
fadvise_unix.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
lchtimes.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
lchtimes_unix.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
local.go filter: Fix incorrect filtering with UseFilter context flag and wrapping backends 2022-09-05 16:19:50 +01:00
local_internal_test.go filter: Fix incorrect filtering with UseFilter context flag and wrapping backends 2022-09-05 16:19:50 +01:00
local_test.go backend: allow wrapping backend tests to run in make quicktest 2022-06-29 17:30:37 +01:00
metadata.go local: add Metadata support #111 2022-06-29 14:29:36 +01:00
metadata_bsd.go local: add Metadata support #111 2022-06-29 14:29:36 +01:00
metadata_linux.go local: fix "Failed to read metadata: function not implemented" on old Linux kernels 2022-10-07 14:14:16 +01:00
metadata_other.go local: add Metadata support #111 2022-06-29 14:29:36 +01:00
metadata_unix.go local: add Metadata support #111 2022-06-29 14:29:36 +01:00
metadata_windows.go local: add Metadata support #111 2022-06-29 14:29:36 +01:00
read_device_other.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
read_device_unix.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
remove_other.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
remove_test.go local: retry remove on Windows sharing violation error #2202 2018-04-07 17:36:26 +01:00
remove_windows.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
setbtime.go all: fix spelling across the project 2022-08-30 11:16:26 +02:00
setbtime_windows.go all: fix spelling across the project 2022-08-30 11:16:26 +02:00
symlink.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
symlink_other.go build: apply gofmt from golang 1.17 2021-09-09 20:43:59 +03:00
tests_test.go local: refactor default os encoding out from local backend into shared encoder lib 2021-08-19 20:14:50 +02:00
xattr.go local: disable xattr support if the filesystems indicates it is not supported 2022-08-09 09:27:56 +01:00
xattr_unsupported.go local: add Metadata support #111 2022-06-29 14:29:36 +01:00