Author: neilm Date: 2005-08-31 16:53:15 +0000 (Wed, 31 Aug 2005) New Revision: 1750 Modified: bin/checklist Log: Added DTSA checking Modified: bin/checklist ==================================================================--- bin/checklist 2005-08-31 15:22:38 UTC (rev 1749) +++ bin/checklist 2005-08-31 16:53:15 UTC (rev 1750) @@ -17,7 +17,7 @@ "suite=s" => \$suite, "output=s", \$output) || ! @ARGV) { - die "usage: $0 [--suite suite] [--html] [--output=file] [--debug] list ...\n"; + die "usage: $0 [--suite suite] [--html] [--output=file] [--debug] advisorylist dtsalist...\n"; } if (defined $output) { @@ -72,7 +72,9 @@ push @{$data{$package}{$condition}}, {item => $item, urgency => $urgency}; } -foreach my $list (@ARGV) { +die ("No DTSA list specified") if (! length @ARGV[1]); +my $dtsalist = @ARGV[1]; +foreach my $list (@ARGV[0]) { if (-d $list) { $list="$list/list"; } @@ -153,10 +155,22 @@ my @fields = split(/\s*\|\s*/, $maddy); my $havver=$fields[1]; my $arches=$fields[3]; + my $dtsacmp=1; $version=~s/\s+//; # strip whitespace $arches=~s/\s+$//; my $cmp=system("dpkg --compare-versions ''$havver'' ''>='' ''$version''"); - if ($cmp != 0) { + + my $dtsaver = `grep "\\- $package" $dtsalist|awk ''{print \$3}''`; + chomp $dtsaver; + if (length($dtsaver)) { + my $hdcmp=system("dpkg --compare-versions ''$havver'' ''>='' ''$dtsaver''"); + if ($hdcmp != 0 && $vdcmp == 0) { + record($package, "have $dtsaver in secure-testing archive, but $havver is in main archive",$id, $urgency); + } + $dtsacmp = 0; + } + + if ($cmp != 0 && $dtsacmp !=0) { if ($html && $suite eq ''testing'') { $havver=''<a href="http://bjorn.haxx.se/debian/testing.pl?package=''.uri_escape($package).''">''.$havver.''</a>''; }