[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-tar] [PATCH] Bugfix - fix xattr exclude/include for archive cre
From: |
Pavel Raiskup |
Subject: |
Re: [Bug-tar] [PATCH] Bugfix - fix xattr exclude/include for archive create |
Date: |
Tue, 31 May 2016 07:19:42 +0200 |
User-agent: |
KMail/4.14.10 (Linux/4.4.9-300.fc23.x86_64; KDE/4.14.20; x86_64; ; ) |
Hi Ian, thanks for the update!
On Monday 30 of May 2016 17:23:33 Ian McLeod wrote:
> On 05/30/2016 02:10 AM, Pavel Raiskup wrote:
> > Could you please post smaller patch just having the important part:
> >
> > + if (!xattrs_masked_out(attr, true /* archiving */))
> > + xheader_xattr_add (st, attr, val, aret);
> >
> > (+ one prototype above). And could you please add one new testcase for
> > --xattrs-{exclude,include}?
>
> Done.
>
> Note that the added test only exercises exclude. As best I can tell,
> --xattrs-include can never actually be meaningful when doing a create.
> Any --xattrs-include implies --xattrs which, for create, starts with a
> default of saving all xattrs.
If there is occurrence of --xattrs-include, tar does not store all
xattrs but only those which are specified:
620 static bool
621 xattrs_kw_included (const char *kw, bool archiving)
622 {
623 if (xattrs_setup.incl.size)
624 return xattrs_matches_mask (kw, &xattrs_setup.incl);
^^^^^^
625 else if (archiving)
626 return true;
^^^^^^ default case for 'tar -c --xattrs'
627 else
628 return strncmp (kw, USER_DOT_PFX, sizeof (USER_DOT_PFX) - 1) == 0;
629 }
So the --xattrs-include is to some extent useful (and testable), too.
Pavel