[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: