mirror of
https://github.com/borgbackup/borg.git
synced 2025-02-22 14:11:27 +00:00
ignore security.selinux xattrs, fixes #1735
they fail the FUSE tests on centos7.
This commit is contained in:
parent
ca357a2b38
commit
ade405eae0
2 changed files with 13 additions and 4 deletions
|
@ -35,6 +35,15 @@
|
|||
setup_logging()
|
||||
|
||||
|
||||
def no_selinux(x):
|
||||
# selinux fails our FUSE tests, thus ignore selinux xattrs
|
||||
SELINUX_KEY = 'security.selinux'
|
||||
if isinstance(x, dict):
|
||||
return {k: v for k, v in x.items() if k != SELINUX_KEY}
|
||||
if isinstance(x, list):
|
||||
return [k for k in x if k != SELINUX_KEY]
|
||||
|
||||
|
||||
class BaseTestCase(unittest.TestCase):
|
||||
"""
|
||||
"""
|
||||
|
@ -87,8 +96,8 @@ def _assert_dirs_equal_cmp(self, diff):
|
|||
else:
|
||||
d1.append(round(s1.st_mtime_ns, st_mtime_ns_round))
|
||||
d2.append(round(s2.st_mtime_ns, st_mtime_ns_round))
|
||||
d1.append(get_all(path1, follow_symlinks=False))
|
||||
d2.append(get_all(path2, follow_symlinks=False))
|
||||
d1.append(no_selinux(get_all(path1, follow_symlinks=False)))
|
||||
d2.append(no_selinux(get_all(path2, follow_symlinks=False)))
|
||||
self.assert_equal(d1, d2)
|
||||
for sub_diff in diff.subdirs.values():
|
||||
self._assert_dirs_equal_cmp(sub_diff)
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
from ..keymanager import RepoIdMismatch, NotABorgKeyFile
|
||||
from ..remote import RemoteRepository, PathNotAllowed
|
||||
from ..repository import Repository
|
||||
from . import BaseTestCase, changedir, environment_variable
|
||||
from . import BaseTestCase, changedir, environment_variable, no_selinux
|
||||
|
||||
try:
|
||||
import llfuse
|
||||
|
@ -1067,7 +1067,7 @@ def has_noatime(some_file):
|
|||
in_fn = 'input/fusexattr'
|
||||
out_fn = os.path.join(mountpoint, 'input', 'fusexattr')
|
||||
if not xattr.XATTR_FAKEROOT and xattr.is_enabled(self.input_path):
|
||||
assert xattr.listxattr(out_fn) == ['user.foo', ]
|
||||
assert no_selinux(xattr.listxattr(out_fn)) == ['user.foo', ]
|
||||
assert xattr.getxattr(out_fn, 'user.foo') == b'bar'
|
||||
else:
|
||||
assert xattr.listxattr(out_fn) == []
|
||||
|
|
Loading…
Reference in a new issue