mirror of
git://sourceware.org/git/libabigail.git
synced 2025-02-02 06:41:40 +00:00
bad389f01a
Some symlinks in some RPMs resolve to binaries outside of the package. In those cases, avoid considering them. * src/abg-tools-utils.cc (maybe_get_symlink_target_file_path): Do not require that the file path points to a symlink. A file path can point to a file that is not a symlink and yet the whole path can be in parent directory that is a symlink. In this case, realpath will correctly resolve to the correct target file. * tools/abipkgdiff.cc (maybe_update_package_content): A path to a binary that is not inside the RPM (because a symlink resolved to a file outside of the RPM) should not be added to the set of binaries to be analyzed. * tests/data/test-diff-pkg/symlink-dir-test1-report1.txt: Add new test file. * tests/data/test-diff-pkg-ctf/symlink-dir-test1-report1.txt: Likewise. * tests/data/Makefile.am: Add new test file to source distribution. * tests/test-diff-pkg.cc (in_out_specs): for the data/test-diff-pkg/symlink-dir-test1/dir{1,2}/symlinks test, the root dir of the package is data/test-diff-pkg/symlink-dir-test1/dir{1,2}. Use that to test that the symlinks are properly handled. Also, use the data/test-diff-pkg/symlink-dir-test1/dir{1,2}/symlinks as a root of an alternative package for which the symlinks resolve outside the package, under data/test-diff-pkg/symlink-dir-test1/dir{1,2}/targets. In this later case, the symlinked files should be ignored in the comparison. Likewise for data/test-diff-pkg-ctf/symlink-dir-test1/dir1/symlinks. Signed-off-by: Dodji Seketeli <dodji@redhat.com> |
||
---|---|---|
.. | ||
dirpkg-0-dir1 | ||
dirpkg-0-dir2 | ||
dirpkg-1-dir1 | ||
dirpkg-1-dir2 | ||
dirpkg-2-dir1 | ||
dirpkg-2-dir2 | ||
dirpkg-3-dir1 | ||
dirpkg-3-dir2 | ||
symlink-dir-test1 | ||
cracklib-2.9.6-15-ol8.x86_64-report-0.txt | ||
cracklib-2.9.6-15-ol8u0.x86_64.rpm | ||
cracklib-2.9.6-15-ol8u6.x86_64.rpm | ||
dirpkg-0-report-0.txt | ||
dirpkg-1-report-0.txt | ||
dirpkg-1-report-1.txt | ||
dirpkg-2-report-0.txt | ||
dirpkg-3-report-0.txt | ||
dirpkg-3-report-1.txt | ||
dirpkg-3-report-2.txt | ||
dirpkg-3.suppr | ||
elfutils-libelf-0.186-1.x86_64.rpm | ||
elfutils-libelf-0.186-2.x86_64.rpm | ||
elfutils-libelf-0.186-report-0.txt | ||
elfutils-libelf-0.186-report-1.txt | ||
gmp-6.1.2-8-ol8u0.x86_64.rpm | ||
gmp-6.2.0-10-ol9u0.x86_64.rpm | ||
gmp-6.x.x86_64-report-0.txt | ||
isl-0.16.1-6.x86_64.rpm | ||
isl-0.16.1-7.x86_64.rpm | ||
isl-0.16.1-report-0.txt | ||
isl-debuginfo-0.16.1-6.x86_64.rpm | ||
isl-debuginfo-0.16.1-7.x86_64.rpm | ||
libdwarf-20180129-4-no-ctf.x86_64.rpm | ||
libdwarf-20180129-4.x86_64.rpm | ||
libdwarf-20180129-5-no-ctf.x86_64.rpm | ||
libdwarf-20180129-5.x86_64.rpm | ||
symlink-dir-test1-report0.txt | ||
symlink-dir-test1-report1.txt | ||
tarpkg-0-dir1.ta | ||
tarpkg-0-dir1.tar | ||
tarpkg-0-dir1.tar.bz2 | ||
tarpkg-0-dir1.tar.gz | ||
tarpkg-0-dir2.ta | ||
tarpkg-0-dir2.tar | ||
tarpkg-0-dir2.tar.bz2 | ||
tarpkg-0-dir2.tar.gz | ||
tarpkg-0-report-0.txt | ||
tarpkg-1-dir1.tar.gz | ||
tarpkg-1-dir2.tar.gz | ||
tarpkg-1-report-0.txt | ||
test-rpm-report-0.txt | ||
test-rpm-report-1.txt | ||
test-rpm-report-2.txt | ||
test-rpm-report-3.txt | ||
test-rpm-report-4.txt | ||
test-rpm-report-5.txt |