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

[SCM] Debian package checker branch, master, updated. 2.2.5-18-gf8064af



The following commit has been merged in the master branch:
commit 375eb8ce8f12a1e61a3814881e19d660a2881d65
Author: Raphael Geissert <atomo64@gmail.com>
Date:   Thu Feb 5 20:17:33 2009 -0600

    Collect strings -a output for ELF binaries
    
    Collect the output of strings -a of each ELF binary in binary packages.
    Also generate an index that lists only ELF binaries in the package, which
    is currently unused but may be useful for future checks.

diff --git a/collection/init.d b/collection/strings
similarity index 56%
copy from collection/init.d
copy to collection/strings
index 16f7cf9..bba6706 100755
--- a/collection/init.d
+++ b/collection/strings
@@ -1,44 +1,34 @@
-#!/usr/bin/perl -w
-# init.d -- lintian collector script
+#!/bin/sh -e
+# strings -- lintian collection script
 
-# Copyright (C) 1998 Richard Braakman
-# 
+# Copyright (C) 2009 Raphael Geissert <atomo64@gmail.com>
+#
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 2 of the License, or
 # (at your option) any later version.
-# 
+#
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
-# 
+#
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, you can find it on the World Wide
 # Web at http://www.gnu.org/copyleft/gpl.html, or write to the Free
 # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
 # MA 02110-1301, USA.
 
-use strict;
-
-($#ARGV == 1) or fail("syntax: init.d <pkg> <type>");
-my $pkg = shift;
-my $type = shift;
-
--f "fields/package" or fail("init.d invoked in wrong directory");
-
-use lib "$ENV{'LINTIAN_ROOT'}/lib";
-use Util;
-
-if (-e "init.d") {
-    delete_dir("init.d")
-	or fail("cannot rm old init.d directory");
+[ $# -eq 2 ] || {
+    echo "Syntax: strings <pkg> <type>"
+    exit 1
 }
 
-if (-d "unpacked/etc/init.d") {
-    copy_dir('unpacked/etc/init.d', 'init.d')
-	or fail("cannot copy init.d directory");
-} else {
-    # no etc/init.d
-    mkdir("init.d", 0777) or fail("cannot mkdir init.d: $!");
-}
+[ ! -f elf-index ] || rm -f elf-index
+exec >elf-index
+
+for bin in $(grep ELF file-info | cut -d: -f1); do
+    echo "$bin"
+    mkdir -p "strings/$(dirname "$bin")"
+    strings "unpacked/$bin" > "strings/$bin"
+done
diff --git a/collection/strings.desc b/collection/strings.desc
new file mode 100644
index 0000000..9219486
--- /dev/null
+++ b/collection/strings.desc
@@ -0,0 +1,9 @@
+Collector-Script: strings
+Author: Raphael Geissert <atomo64@gmail.com>
+Info: This script runs the "strings -a" command over all files of a binary
+ package.
+Type: binary, udeb
+Unpack-Level: 2
+Output: elf-index
+Order: 2
+Needs-Info: file-info

-- 
Debian package checker


Reply to: