[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

lintian: r599 - in trunk: checks collection debian



Author: rra
Date: 2006-04-03 00:40:48 +0200 (Mon, 03 Apr 2006)
New Revision: 599

Modified:
   trunk/checks/binaries
   trunk/collection/objdump-info
   trunk/debian/changelog
Log:
  * checks/binaries:
    + [RA] Detect klibc binaries from their requested interpreter and
      allow them to appear static.  (Closes: #328850)
  * collection/objdump-info:
    + [RA] Run readelf -l to collect interpreter information.


Modified: trunk/checks/binaries
===================================================================
--- trunk/checks/binaries	2006-04-01 06:46:55 UTC (rev 598)
+++ trunk/checks/binaries	2006-04-02 22:40:48 UTC (rev 599)
@@ -39,6 +39,7 @@
 my %CXXABI;
 my %OCAML;
 my %SONAME;
+my %KLIBC;
 
 # read architecture file
 if (open(IN,"fields/architecture")) {
@@ -110,6 +111,8 @@
 	    tag "binary-with-bad-dynamic-table", "$file" unless $file =~ m%^\./usr/lib/debug/%;
 	} elsif (m/CXXABI/) {
 	    $CXXABI{$file} = 1;
+	} elsif (m%Requesting program interpreter:\s+/lib/klibc-\S+\.so%) {
+	    $KLIBC{$file} = 1;
 	}
     }
 }
@@ -227,6 +230,8 @@
 	    # Some exceptions: files in /boot, /usr/lib/debug/*, named *-static or
 	    # *.static, or *-static as package-name.
 	    next if ($file =~ m#^./boot/#);
+	    # klibc binaries appear to be static.
+	    next if ($KLIBC{$file});
 	    # Location of debugging symbols:
 	    next if ($file =~ m#^./usr/lib/debug/#);
 	    next if ($file =~ /(\.|-)static$/);

Modified: trunk/collection/objdump-info
===================================================================
--- trunk/collection/objdump-info	2006-04-01 06:46:55 UTC (rev 598)
+++ trunk/collection/objdump-info	2006-04-02 22:40:48 UTC (rev 599)
@@ -47,6 +47,10 @@
     if head $bin | grep -q 'packed.*with.*UPX'; then
 	echo "objdump: $bin: Packed with UPX" >> ../objdump-info
     else
+	# readelf is for interpreter information only; ignore failure.
+	readelf -l "$bin" >> ../objdump-info 2>&1 || true
+
+	# The main data of interest.
 	if objdump --headers --private-headers -T $bin >> ../objdump-info 2>&1 ; then
 	    # everything is ok
 	    :

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2006-04-01 06:46:55 UTC (rev 598)
+++ trunk/debian/changelog	2006-04-02 22:40:48 UTC (rev 599)
@@ -1,5 +1,8 @@
 lintian (1.23.17) UNRELEASED; urgency=low
 
+  * checks/binaries:
+    + [RA] Detect klibc binaries from their requested interpreter and
+      allow them to appear static.  (Closes: #328850)
   * checks/common_data.pm:
     + [RA] Include all combinations of cpu and os from the dpkg cputable
       and ostable files (as of dpkg 1.13.16).  (Closes: #337034, #357433)
@@ -30,11 +33,12 @@
   * collection/objdump-info:
     + [RA] Unset CDPATH before running cd to avoid strange effects from
       the user's environment.
+    + [RA] Run readelf -l to collect interpreter information.
 
   * lib/Util.pm:
     + [RA] Add system_env, like system but sanitizing the environment.
 
- -- Russ Allbery <rra@debian.org>  Fri, 31 Mar 2006 22:40:32 -0800
+ -- Russ Allbery <rra@debian.org>  Sun,  2 Apr 2006 15:40:00 -0700
 
 lintian (1.23.16) unstable; urgency=low
 



Reply to: