summaryrefslogtreecommitdiffstats
path: root/bin/check-new-issues
diff options
context:
space:
mode:
authorRaphael Geissert <geissert@debian.org>2017-10-18 14:45:39 +0000
committerRaphael Geissert <geissert@debian.org>2017-10-18 14:45:39 +0000
commite5e801f96cf2684760b2ff9acd7ad0544aea2611 (patch)
tree1a34740f706eddf832daa3ae50e55069f9075005 /bin/check-new-issues
parent9a49838094ccb8d281e31c4673c0c89746b92d76 (diff)
move the presenting/editing loop logic into its own function
git-svn-id: svn+ssh://svn.debian.org/svn/secure-testing@56822 e39458fd-73e7-0310-bf30-c45bca0a0e42
Diffstat (limited to 'bin/check-new-issues')
-rwxr-xr-xbin/check-new-issues62
1 files changed, 36 insertions, 26 deletions
diff --git a/bin/check-new-issues b/bin/check-new-issues
index ec906c7b06..0adf6457a2 100755
--- a/bin/check-new-issues
+++ b/bin/check-new-issues
@@ -269,26 +269,37 @@ sub initial_completion {
$attribs->{attempted_completion_function} = \&initial_completion;
-TODO: foreach my $todo (reverse sort @todos) {
- print ${$data->{$todo}->{CVE}} if $data->{$todo}->{CVE};
- print ${$data->{$todo}->{entry}};
+foreach my $todo (reverse sort @todos) {
+ last unless present_issue($todo);
+}
+
+open(my $fh, ">", $datafile);
+print $fh @{$entries};
+close($fh);
+
+sub present_issue {
+ my $name = shift;
+ my $quit = 0;
- if ($data->{$todo}->{CVE}) {
- my $nfu_entry = auto_nfu($todo);
+ print ${$data->{$name}->{CVE}} if $data->{$name}->{CVE};
+ print ${$data->{$name}->{entry}};
+
+ if ($data->{$name}->{CVE}) {
+ my $nfu_entry = auto_nfu($name);
if ($nfu_entry) {
- ${$data->{$todo}->{entry}} =~
+ ${$data->{$name}->{entry}} =~
s/^\s*TODO: check/\tNOT-FOR-US: $nfu_entry/m ;
- print "New entry auto set to set to:\n${$data->{$todo}->{entry}}";
- next TODO;
+ print "New entry auto set to set to:\n${$data->{$name}->{entry}}";
+ return 1;
}
}
- auto_search($todo);
+ auto_search($name);
READ: while (my $r=$term->readline(">") ) {
chomp $r;
if ($r =~ /^\s*$/) {
- next TODO;
+ last READ;
}
elsif ($r=~ /^\.c(.*)$/ ) {
my $s = $1;
@@ -333,18 +344,19 @@ TODO: foreach my $todo (reverse sort @todos) {
next READ;
}
elsif ($r=~ /^q\s?$/i ) {
- last TODO;
+ $quit = 1;
+ last READ;
}
elsif ($r=~ /^[ve]\s?$/i ) {
- my $newentry=edit_entry(${$data->{$todo}->{entry}});
- if ( $newentry eq ${$data->{$todo}->{entry}} ) {
+ my $newentry=edit_entry(${$data->{$name}->{entry}});
+ if ( $newentry eq ${$data->{$name}->{entry}} ) {
print "Not changed.\n";
next READ;
}
else {
- ${$data->{$todo}->{entry}}=$newentry;
+ ${$data->{$name}->{entry}}=$newentry;
print "New entry set to:\n$newentry";
- next TODO;
+ last READ;
}
}
elsif ($r=~ /^(\-\s+.+)$/ ) {
@@ -353,7 +365,7 @@ TODO: foreach my $todo (reverse sort @todos) {
unless (scalar(@comps)>2);
my $inputentry = join(' ', @comps);
- my $preventry=${$data->{$todo}->{entry}};
+ my $preventry=${$data->{$name}->{entry}};
$preventry =~
s/^\s+/\t$inputentry\n$&/m ;
@@ -363,30 +375,28 @@ TODO: foreach my $todo (reverse sort @todos) {
}
my $newentry=edit_entry($preventry);
- ${$data->{$todo}->{entry}}=$newentry;
+ ${$data->{$name}->{entry}}=$newentry;
print "New entry set to:\n$newentry";
- next TODO;
+ last READ;
}
elsif ($r=~ /^\.r(.*)$/ ) {
my $tmp=new File::Temp();
my $tmpname=$tmp->filename;
- system("$basedir/bin/report-vuln $1 $todo > $tmpname");
+ system("$basedir/bin/report-vuln $1 $name > $tmpname");
system("$editor $tmpname");
close($tmp);
next READ;
}
else {
- ${$data->{$todo}->{entry}} =~
+ ${$data->{$name}->{entry}} =~
s/^\s*TODO: check/\tNOT-FOR-US: $r/m ;
- print "New entry set to:\n${$data->{$todo}->{entry}}";
- next TODO;
+ print "New entry set to:\n${$data->{$name}->{entry}}";
+ last READ;
}
}
-}
-open(my $fh, ">", $datafile);
-print $fh @{$entries};
-close($fh);
+ return (!$quit);
+}
sub description {
my $name=shift;

© 2014-2024 Faster IT GmbH | imprint | privacy policy