/[secure-testing]/bin/checklist
ViewVC logotype

Diff of /bin/checklist

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 30 by joeyh, Wed Oct 27 21:07:41 2004 UTC revision 31 by joeyh, Thu Oct 28 21:39:00 2004 UTC
# Line 1  Line 1 
1  #!/usr/bin/perl  #!/usr/bin/perl
2  # Must run on a machine with madison.  # Must run on a machine with madison.
3    
4  my $list=shift;  if (! @ARGV) {
 if (! $list) {  
5          die "usage: $0 list\n";          die "usage: $0 list\n";
6  }  }
7    
8  open (IN, $list) || die "open $list: $!";  foreach my $list (@ARGV) {
9  while (<IN>) {          if (-d $list) {
10          chomp;                  $list="$list/list";
         if (/^\[/) {  
                 ($id)=m/(DSA-.*?) /;  
11          }          }
12          elsif (/^CAN-/) {  
13                  $id=$_;          open (IN, $list) || die "open $list: $!";
14          }          while (<IN>) {
15          elsif (/^\s+[!-]\s+(.*?)\s+(.*)$/) {                  chomp;
16                  my $package=$1;                  if (/^\[/) {
17                  my $version=$2;                          ($id)=m/(DSA-.*?) /;
18                  if ($version=~/unfixed/) {                  }
19                          print "$package $version for $id\n";                  elsif (/^(CAN|CVE)-/) {
20                          next;                          $id=$_;
21                  }                  }
22                  my $maddy=`madison -s testing '$package'`;                  elsif (/^\s+[!-]\s+(.*?)\s+(.*)$/) {
23                  if (length $maddy) {                          my $package=$1;
24                          my @fields = split(/\s*\|\s*/, $maddy);                          my $version=$2;
25                          my $cmp=system("dpkg --compare-versions '$fields[1]' '>=' '$version'");                          if ($version=~/unfixed/) {
26                          if ($cmp != 0) {                                  print "$package $version for $id\n";
27                                  print "$package $version needed, have $fields[1] for $id\n";                                  next;
28                            }
29                            my $maddy=`madison -s testing '$package'`;
30                            if (length $maddy) {
31                                    my @fields = split(/\s*\|\s*/, $maddy);
32                                    my $cmp=system("dpkg --compare-versions '$fields[1]' '>=' '$version'");
33                                    if ($cmp != 0) {
34                                            print "$package $version needed, have $fields[1] for $id\n";
35                                    }
36                          }                          }
37                  }                  }
38          }                  elsif (/HELP/) {
39          elsif (/HELP/) {                          print $_." ($id)\n";
40                  print $_." ($id)\n";                  }
41          }          }
42  }  }

Legend:
Removed from v.30  
changed lines
  Added in v.31

  ViewVC Help
Powered by ViewVC 1.1.5