X-Git-Url: http://vcs.maemo.org/git/?a=blobdiff_plain;f=checks%2Fconffiles;fp=checks%2Fconffiles;h=d3f9851bc5ed127a84bfedea7f601116a233bc49;hb=1960326d487467271f731ff6a62830404a4947af;hp=0000000000000000000000000000000000000000;hpb=ce31209d7230201c69f8f234032a774fbbbc43cd;p=maemian diff --git a/checks/conffiles b/checks/conffiles new file mode 100644 index 0000000..d3f9851 --- /dev/null +++ b/checks/conffiles @@ -0,0 +1,69 @@ +# conffiles -- lintian check script -*- perl -*- + +# Copyright (C) 1998 Christian Schwarz +# +# 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. + +package Maemian::conffiles; +use strict; +use Tags; +use Util; + +sub run { + +my $pkg = shift; +my $type = shift; + +my $cf = "control/conffiles"; + +# conffiles? +unless (-f $cf) { + return 0; +} + +my %conffiles = (); + +open(IN, '<', $cf) or fail("cannot open $cf for reading: $!"); +while () { + chop; + next if m/^\s*$/; + + unless (m,^/,) { + tag "relative-conffile", $_; + $_ = '/' . $_; + } + + $conffiles{$_}++; + + if ($conffiles{$_} > 1) { + tag "duplicate-conffile", $_; + } + + if (m,^/usr/,) { + tag "file-in-usr-marked-as-conffile", $_; + } else { + unless (m,^/etc/,) { + tag "non-etc-file-marked-as-conffile", $_; + } + } + +} +close(IN); + +} + +1;