[RFC] vfs_fruit uses wrong xattr name for Mac metadata on FreeBSD

Ralph Böhme slow at samba.org
Sun Feb 12 08:12:25 UTC 2017


On Thu, Feb 09, 2017 at 04:53:42PM -0800, Jeremy Allison wrote:
> On Sat, Feb 04, 2017 at 10:17:17AM +0100, Ralph Böhme wrote:
> > On Sun, Jan 22, 2017 at 05:08:08PM +0100, Ralph Böhme wrote:
> > > On Sun, Jan 22, 2017 at 06:48:03AM +0800, Evan Champion wrote:
> > > > Another way would be to change the default xattr name in 4.6.0 and provide a
> > > > conversion tool.
> > > 
> > > hm...
> > 
> > and here's the patchset that does this.
> > 
> > 1. It renames the Netatalk metadata xattr name.
> > 
> > 2. Adds a tool mvxattr to rename xattrs. The name seems not to be in use, so
> > hopefully it doesn't clash with anything. It uses nftw under the hood for the
> > directory traversal, it's in POSIX.1-2001, available on FreeBSD (which this is
> > all about, Linux has it as well) and I'd like to avoid reinventing the wheel.
> > 
> > 3. Fixes our libreplace xattr implementation on FreeBSD to validata xattr
> > names. This is a prerequisite for 2, otherwise users might call the mvxattr tool
> > with xattr name like "org.netatalk.Metadata" without a namespace prefix leading
> > to unexpected results: the xattr name on the fs would be "netatalk.Metadata" as
> > the "org" part gets stripped.
> > 
> > Once this is in master, I'll prepare a backport for 4.6 with an update for
> > WHATSNEW.
> > 
> > Please review & push if happy. Thanks!
> 
> That's a really nice patchset Ralph, I really like the mvxattr
> utility !

thanks Jeremy! Unfortunately the cleanup path 2/4 was broken as it changes the
define for the rsrc xattr to use the metadata string. Sorry!

Attached patch would fix that, can we just push it on top with the same
bugnumber or shall I create a new one?

Cheerio!
-slow
-------------- next part --------------
From 9ccee25a6ae3f16e44a1b258ed07e2d6b0ddd5fe Mon Sep 17 00:00:00 2001
From: Ralph Boehme <slow at samba.org>
Date: Sun, 12 Feb 2017 09:05:50 +0100
Subject: [PATCH] vfs_fruit: fix resource fork xattr name

Fix resource fork xattr name broken in
e4d1f8354f97ab9007e4c5f7d164937bdc5cd6f1.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=12490

Signed-off-by: Ralph Boehme <slow at samba.org>
---
 source3/modules/vfs_fruit.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/source3/modules/vfs_fruit.c b/source3/modules/vfs_fruit.c
index 8cd1559..db30359 100644
--- a/source3/modules/vfs_fruit.c
+++ b/source3/modules/vfs_fruit.c
@@ -101,7 +101,7 @@ static int vfs_fruit_debug_level = DBGC_VFS;
 #define ADOUBLE_NAME_PREFIX "._"
 
 #define NETATALK_META_XATTR "org.netatalk.Metadata"
-#define NETATALK_RSRC_XATTR "org.netatalk.Metadata"
+#define NETATALK_RSRC_XATTR "org.netatalk.ResourceFork"
 
 #if defined(HAVE_ATTROPEN)
 #define AFPINFO_EA_NETATALK NETATALK_META_XATTR
-- 
2.9.3



More information about the samba-technical mailing list