Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2] Restrict tar transform to regular files Without this
Date: Sat, 27 Apr 2019 11:24:56 +0200	[thread overview]
Message-ID: <20190427092456.GF30214@scaer> (raw)
In-Reply-To: <1249281217.2131518.1556354602146.JavaMail.zimbra@raptorengineeringinc.com>

Timothy, All,

On 2019-04-27 03:43 -0500, Timothy Pearson spake thusly:
> restriction, symlinks are rewritten and corrupted.

Your commit message is still incorrectly formatted. It should be:

    support/download/git: don't ttransform target of symlinks

    Currently, the git download backend mangles the path of members, as
    well as the target of symlinks, for example:
        package-githash/link -> ./file1
    is transformed into:
        package-githash/link -> package-githash/file1

    Fix that by using so-called "transformation scope flags" to tell tar
    to not transform the target of symlinks.

    Signed-off-by: Your Name <your@mail>
    Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>

Usually, I like to be Cc-ed on resend when I reviewed previous
iteatrions. Additionally, since this would be a v2 (and the next one
a v3), you'd put a changleog below the --- line, like so:

    ---
    Changes v2 -> v3:
      - fix ommit log and title  (Yann)
      - use flags at the end of expression rather than changing the
        defaults  (Yann)

    Changes v1 -> v2:
      - add missing SoB line  (Yann)


(The name between parenthesis is to identiofy who requested the change,
in case further reviewers wonder why it's done the way you di, and so
they can blame me not you. ;-) )

> Example without the restriction:
> 
> Input tree (valid):
> package-githash/file1
> package-githash/link -> ./file1
> 
> Output tree (broken):
> package-githash/file1
> package-githash/link -> package-githash/file1
> 
> Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
> ---
>  support/download/git | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/support/download/git b/support/download/git
> index 17ca04eb98..1acb795c81 100755
> --- a/support/download/git
> +++ b/support/download/git
> @@ -190,7 +190,7 @@ LC_ALL=C sort <"${output}.list" >"${output}.list.sorted"
>  
>  # Create GNU-format tarballs, since that's the format of the tarballs on
>  # sources.buildroot.org and used in the *.hash files
> -tar cf - --transform="s#^\./#${basename}/#" \
> +tar cf - --transform="flags=r;s#^\./#${basename}/#" \

Since you did not apply my suggestion, I take it that it did not work?
If so, they they so in the post --- line.

By the way, we might need to do something similar for the SDK:

    https://git.buildroot.org/buildroot/tree/Makefile#n610

Care to handle it as well? (if so, in a separate patch, please.)

Regards,
Yann E. MORIN.

>           --numeric-owner --owner=0 --group=0 --mtime="${date}" --format=gnu \
>           -T "${output}.list.sorted" >"${output}.tar"
>  gzip -6 -n <"${output}.tar" >"${output}"
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

      reply	other threads:[~2019-04-27  9:24 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-27  8:43 [Buildroot] [PATCH v2] Restrict tar transform to regular files Without this Timothy Pearson
2019-04-27  9:24 ` Yann E. MORIN [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190427092456.GF30214@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox