Skip to content

freebsd 12 FUSE xattr issues #3952

@ThomasWaldmann

Description

@ThomasWaldmann

The xattrs in the native freebsd filesystem are set like this, then backed up with borg:

   xattr.setxattr(os.path.join(self.input_path, 'fusexattr'), 'user.foo', b'bar')
   xattr.setxattr(os.path.join(self.input_path, 'fusexattr'), 'user.empty', b'')

Then the archive is fuse mounted and test_fuse executed:

freebsd 12 amd64 VM (see Vagrantfile), current master branch, no fakeroot:

freebsd64: >           assert sorted(no_selinux(xattr.listxattr(out_fn))) == ['user.empty', 'user.foo', ]
freebsd64: E           AssertionError: assert ['empty', 'foo'] == ['user.empty', 'user.foo']
freebsd64: E             At index 0 diff: 'empty' != 'user.empty'

borg 1.2.0.dev569+g23bd2345.d20180704


freebsd 12 amd64 VM (see Vagrantfile), current platform-xattr branch, no fakeroot:

borg 1.2.0.dev560+gadb298d1

behaves the same after setting borg.xattr.XATTR_FAKEROOT = False so that same test code is executed.


So it seems that something is stripping away the "user." from the xattr keys.

Metadata

Metadata

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions