aboutsummaryrefslogtreecommitdiff
path: root/Tools/scripts/consistency-check
diff options
context:
space:
mode:
Diffstat (limited to 'Tools/scripts/consistency-check')
-rwxr-xr-xTools/scripts/consistency-check143
1 files changed, 0 insertions, 143 deletions
diff --git a/Tools/scripts/consistency-check b/Tools/scripts/consistency-check
deleted file mode 100755
index 9d1e404990e6..000000000000
--- a/Tools/scripts/consistency-check
+++ /dev/null
@@ -1,143 +0,0 @@
-#!/usr/bin/env perl
-#
-# Copyright (c) 1999 Neil Blakey-Milner
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-# SUCH DAMAGE.
-#
-# $FreeBSD$
-#
-
-#my($path) = "/var/qmail";
-my($path) = "/usr/local/bin";
-my($pkgdir) = "/var/db/pkg";
-
-$do_md5 = 1;
-$do_fs = 1;
-
-my(@fsfiles);
-my(%files);
-my(%fsmd5);
-my(%pkgmd5);
-my(%pkgname);
-
-if ($do_fs) {
- @fsfiles = `find $path ! -type d`;
- foreach (@fsfiles) {
- chomp;
- s#\Q$path\E/?##;
- $files{$_} = 1;
- chomp($fsmd5{$_} = `md5 -q $path/$_ 2> /dev/null`) if $do_md5 == 1;
- }
-}
-
-require "find.pl";
-&find('/var/db/pkg');
-# Traverse desired filesystems
-
-foreach (sort keys %files) {
- $file = $_;
- $pkgname{$_} =~ s/,$//;
- $files{$_} == 1 && do {
- print "Only on filesystem - $_\n";
- next;
- };
- $files{$_} == 2 && do {
- if ($do_fs == 1) {
- printf "Not on filesystem - $_ from %s\n", $pkgname{$_};
- next;
- }
- };
- if ($do_fs != 1) {
- if (-e "$path/$_") {
- chomp($fsmd5{$_} = `md5 -q $path/$_ 2> /dev/null`) if $do_md5 == 1;
- } else {
- printf "Not on filesystem - $_ from %s\n", $pkgname{$_};
- }
- }
- $files{$_} > 3 && do {
- printf "File $_ owned by multiple packages %s\n", $pkgname{$_};
- };
-
- if ($do_md5) {
- $pkgmd5tmp = $pkgmd5{$_};
- $fsmd5tmp = $fsmd5{$_};
- if ($fsmd5tmp =~ /^ *$/) {
- $msg = "";
- $msg = ", but it exists" if (-e "$path/$_");
- printf "No filesystem md5 available for $_%s\n", $msg;
- next;
- }
- if ($pkgmd5tmp =~ /^ *$/) {
- print "No package md5 available for $_\n";
- next;
- }
- foreach (split /,/, $pkgmd5tmp) {
- #print "Comparing: $fsmd5tmp $_\n";
- if ($fsmd5tmp !~ /\Q$_\E/) {
- print "For $file, package md5 $_ is " .
- "DIFFERENT from fs md5 of $fsmd5tmp!\n";
- }
- }
- }
-}
-
-exit;
-
-sub wanted {
- my($dev, $ino, $mode, $nlink, $uid, $gid);
- my($cwd, $tmp);
- (($dev,$ino,$mode,$nlink,$uid,$gid) = lstat($_)) &&
- -f _ &&
- /^\+CONTENTS$/ || return;
- open(CNT, "$name");
- chomp($pkg = `dirname $name`);
- chomp($pkg = `basename $pkg`);
- $cwd = "";
- $lastfile = "";
- while(<CNT>) {
- chomp;
- /^\@cwd (.*)$/ && do {
- $cwd = $1;
- next;
- };
- s#^\@comment MD5:## && do {
- return if $cwd =~ /^\.?$/;
- $tmp = "$cwd/$lastfile";
- if ($tmp =~ s#^\Q$path\E/?##) {
- $pkgmd5{$tmp} .= "$_,";
- }
- next;
- };
- /^[^@]/ && do {
- $lastfile = $_;
- return if $cwd =~ /^\.?$/;
- $tmp = "$cwd/$_";
- if ($tmp =~ s#^\Q$path\E/?##) {
- $files{$tmp} += 2;
- $pkgname{$tmp} .= "$pkg,";
- }
- };
- }
- close(CNT);
-}
-