using a file a JSON source did not work (wrong file handler) (#979)

This commit is contained in:
omercier 2018-07-20 16:51:37 +02:00 committed by Colin Gagnaire
parent daf087e8bf
commit 4d4531cde6

View File

@ -126,20 +126,21 @@ sub load_request {
if (defined($self->{option_results}->{data}) && $self->{option_results}->{data} ne '') { if (defined($self->{option_results}->{data}) && $self->{option_results}->{data} ne '') {
$self->{method} = 'POST'; $self->{method} = 'POST';
if (-f $self->{option_results}->{data} and -r $self->{option_results}->{data}) { if (-f $self->{option_results}->{data} and -r $self->{option_results}->{data}) {
$self->{json_request} = do { local $/ = undef;
local $/; my $fh;
my $fh; if (!open($fh, "<:encoding(UTF-8)", $self->{option_results}->{data})) {
if (!open($fh, "<:encoding(UTF-8)", $self->{option_results}->{data})) { $self->{output}->output_add(severity => 'UNKNOWN',
$self->{output}->output_add(severity => 'UNKNOWN', short_msg => sprintf("Could not read file '%s': %s", $self->{option_results}->{data}, $!));
short_msg => sprintf("Could not read file '%s': %s", $self->{option_results}->{data}, $!)); $self->{output}->display();
$self->{output}->display(); $self->{output}->exit();
$self->{output}->exit(); }
} my $file_content = <$fh>;
}; close $fh;
$self->{json_request} = <FILE>; $/ = "\n";
close FILE; chomp $file_content;
$self->{json_request} = $file_content;
} else { } else {
$self->{json_request} = $self->{option_results}->{data}; $self->{json_request} = $self->{option_results}->{data};
} }
} }
} }