#!/usr/bin/perl # # To use: ls -1 ~ftp/pub/FreeBSD/CERT/advisories/*.asc | perl mksecurityinp.pl # $Libpath = "/usr/home/jessem/bin/lib"; require "$Libpath/common/ctdb.pl"; foreach $fn (<>) { chop $fn; #print $fn; @file = &ctdb::getFile($fn); foreach $ln (@file) { if ($ln =~ /^Topic:\s+(.+)/) { $topic = $1; } #if ($ln =~ /^Announced:\s+(.+)/) { # $announced = $1; #} } if ($fn =~ m/NetBSD-S\w(\d\d\d\d)-(\d\d\d)\.txt\.asc/) { # NetBSD-SA1998-001.txt.asc $year = $1; $sequence = $2; #$appname = $3; #print "year = $year, sequence = $sequence, appname = $appname, FN = $fn \n"; $html_entry = ':/b ftp://ftp.svbug.com/pub/NetBSD/security/advisories/' . $fn . '|' . $fn . ' /; ' . $topic . "\n"; # '' . $announced . "\n"; #$key = $year . '-' . $sequence ; $key = $year . '-' . $sequence ; $entry{$key} = $html_entry; #print "key = $key, entry = " . $entry{$key} . "\n"; } else { #exit "error"; } } # the Last entry '1995' is just a filler #@y = ('2005', '2004', '2003', '2002', '2001', '2000', '1999', '1998', '1997', '1996', '1995'); @y = ('2004', '2003', '2002', '2001', '2000', '1999', '1998', '1997'); $i = 0; @keys = reverse sort keys %entry; print ':>w /usr/data/domains/svbug/infopedia/body.txt >;' . "\n"; print ':< >;' . "\n"; print ':<

' . $y[$i] . '

>;' . "\n"; #print ':<
filenameTopicAnnounced Date (yyyy-mm-dd) >;' . "\n"; print ':<
filenameTopic >;' . "\n"; $i++; foreach $k (@keys) { if ($k =~ /^$y[$i]/) { # print ':<

>;' . "\n\n"; # print ':< >;' . "\n"; print ':<

' . $y[$i] . '

>;' . "\n"; #print ':<
filenameTopicAnnounced Date (yyyy-mm-dd) >;' . "\n"; print ':<
filenameTopic >;' . "\n"; $i++; } print $entry{$k}; } print ':<
>;' . "\n";