bug-tar
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]