buildroot/support/download
Ricardo Martincoski 573ea2c7d4 download/git: fix basename for files inside tarballs
Commit "6d938bcb52 download: git: introduce cache feature" introduced a
typo that makes the tarball to contain files without the package
basename:
$ tar -tvf good-a238b1dfcd825d47d834af3c5223417c8411d90d.tar.gz
-rw-r--r-- 0/0               8 2017-10-14 02:10 ./file

Historically, all tarballs are generated with the basename:
$ tar -tvf good-a238b1dfcd825d47d834af3c5223417c8411d90d.tar.gz
-rw-r--r-- 0/0               8 2017-10-14 02:10 good-a238b1dfcd825d47d834af3c5223417c8411d90d/file

The hashes in the tree were calculated with the basename.

In the most common scenario, after the download ends the tarball is
generated, the hash mismatches and the download mechanism falls back to
use the tarball from http://sources.buildroot.net .

The problem can be reproduced by forcing the download of any git package
PKG that has a hash file to check against:
$ make defconfig
$ ./utils/config --set-str BR2_BACKUP_SITE ""
$ BR2_DL_DIR=$(mktemp -d) make PKG-dirclean PKG-source

Fix the typo so the basename is really added to the files, that was
clearly the intention of the code.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-04-05 08:15:45 +02:00
..
bzr core/pkg-download: change all helpers to use common options 2018-04-02 12:22:50 +02:00
check-hash support/download: fix check_one_hash description 2017-09-19 22:11:30 +02:00
cp core/pkg-download: change all helpers to use common options 2018-04-02 12:22:50 +02:00
cvs download: put most of the infra in dl-wrapper 2018-04-02 14:19:51 +02:00
dl-wrapper core/download: fix when the BR2_DL_DIR does not accept hardlinks 2018-04-03 22:45:00 +02:00
git download/git: fix basename for files inside tarballs 2018-04-05 08:15:45 +02:00
hg core/pkg-download: change all helpers to use common options 2018-04-02 12:22:50 +02:00
scp core/pkg-download: change all helpers to use common options 2018-04-02 12:22:50 +02:00
svn core/pkg-download: change all helpers to use common options 2018-04-02 12:22:50 +02:00
wget download: put most of the infra in dl-wrapper 2018-04-02 14:19:51 +02:00