#!/usr/bin/perl -w
# chkdups - look for duplicate mibs files.

my $file = shift || 'mib_index.txt';
die "Usage: $0 mib_index.txt\n" unless -r $file;

open (FILE,"<$file") or die "can't open file : $file. $!\n";

$dir = '';
while (<FILE>){
    chomp;
    if ($_ =~ /^\.\/(.*)\/\.index/){ 
        $dir = "$1/";    
    }
    elsif ($_ =~ /^(.*)\s+(.*)$/){
        my $mib = $1; my $file = $2;
        push @{$MIBS{$mib}},"$dir$file";
    }
}

foreach my $mib (keys %MIBS){
    next unless scalar(@{$MIBS{$mib}} > 1);
    print "Duplicate $mib seen in : ",
        join(',',@{$MIBS{$mib}}), "\n";
    my $diff_cmd = "diff -b -B $MIBS{$mib}->[0] $MIBS{$mib}->[1]";
    my $diff = `$diff_cmd`;
    if ($diff !~ /^\s*$/){
        print "$diff_cmd\n";
        $diff =~ s/^/    /gm;
        print $diff;
    }
}
