|
|
@@ -0,0 +1,33 @@
|
|
|
+From f42cbe1a91a3a6f79d1eec594ce7c72aec79179b Mon Sep 17 00:00:00 2001
|
|
|
+From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <[email protected]>
|
|
|
+Date: Wed, 9 Nov 2022 05:08:22 +0100
|
|
|
+Subject: [PATCH] don't fail hard on EACCES when copying xattrs
|
|
|
+
|
|
|
+On btrfs the xattr "btrfs.compressed" requires privileges to set,
|
|
|
+otherwise EACCES is returned.
|
|
|
+When patch tries to do copy this attribute it receives the error and
|
|
|
+aborts.
|
|
|
+---
|
|
|
+ src/util.c | 4 ++--
|
|
|
+ 1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
+
|
|
|
+--- a/src/util.c
|
|
|
++++ b/src/util.c
|
|
|
+@@ -182,7 +182,7 @@ copy_attr_error (struct error_context *c
|
|
|
+ int err = errno;
|
|
|
+ va_list ap;
|
|
|
+
|
|
|
+- if (err != ENOSYS && err != ENOTSUP && err != EPERM)
|
|
|
++ if (err != ENOSYS && err != ENOTSUP && err != EPERM && err != EACCES)
|
|
|
+ {
|
|
|
+ /* use verror module to print error message */
|
|
|
+ va_start (ap, fmt);
|
|
|
+@@ -284,7 +284,7 @@ set_file_attributes (char const *to, enu
|
|
|
+ }
|
|
|
+ if (attr & FA_XATTRS)
|
|
|
+ if (copy_attr (from, to) != 0
|
|
|
+- && errno != ENOSYS && errno != ENOTSUP && errno != EPERM)
|
|
|
++ && errno != ENOSYS && errno != ENOTSUP && errno != EPERM && errno != EACCES)
|
|
|
+ fatal_exit (0);
|
|
|
+ if (attr & FA_MODE)
|
|
|
+ {
|