]> err.no Git - dpkg/commitdiff
dpkg-gensymbols: skip directories during scan of package build dir
authorRaphael Hertzog <hertzog@debian.org>
Sat, 26 Jan 2008 18:25:31 +0000 (19:25 +0100)
committerRaphael Hertzog <hertzog@debian.org>
Sat, 26 Jan 2008 19:30:51 +0000 (20:30 +0100)
* scripts/dpkg-gensymbols: Don't scan directories which are
symlinks. They might point outside of the package build dir which
results in addition of libraries which are not in the package.
The libc6 package on amd64 is affected with a symlink "lib64" ->
"/lib".

ChangeLog
debian/changelog
scripts/dpkg-gensymbols.pl

index 9be877a2877f6d64f000be09f3b2a35feaf9e895..1ec4fe4016e9a67fc69166f08fabd9fd9b138e45 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-01-26  Raphael Hertzog  <hertzog@debian.org>
+
+       * scripts/dpkg-gensymbols: Don't scan directories which are
+       symlinks. They might point outside of the package build dir which
+       results in addition of libraries which are not in the package.
+       The libc6 package on amd64 is affected with a symlink "lib64" ->
+       "/lib".
+
 2008-01-24  Raphael Hertzog  <hertzog@debian.org>
 
        * configure.ac: Release 1.14.16.5.
index 749f9fab24c1dd03dce1f07d77bff4afb83fd7b6..9914ff2a676c54207b27fb8958d2e69dd16d57a2 100644 (file)
@@ -1,3 +1,10 @@
+dpkg (1.14.16.6) UNRELEASED; urgency=low
+
+  * Let dpkg-gensymbols skip directories which are just symlinks when scanning
+    the package build dir.
+
+ -- Raphael Hertzog <hertzog@debian.org>  Sat, 26 Jan 2008 19:20:40 +0100
+
 dpkg (1.14.16.5) unstable; urgency=low
 
   * Fix dpkg-gensymbols handling of #include so that one can include multiple
index 9b8515a9adbe67e6de1e0abc484a1dbd9f794d7a..58aaa0914bf51ce7ecea9a213a2096d2acd23dbd 100755 (executable)
@@ -140,7 +140,9 @@ if (not scalar @files) {
     foreach my $path (@librarypaths) {
        my $libdir = "$packagebuilddir$path";
        $libdir =~ s{/+}{/}g;
-       next if not -d $libdir;
+       lstat $libdir;
+       next if not -d _;
+       next if -l _; # Skip directories which are symlinks
        opendir(DIR, "$libdir") ||
            syserr(_g("Can't read directory %s: %s"), $libdir, $!);
        push @files, grep {