mirror of
https://github.com/centreon/centreon-plugins.git
synced 2025-07-27 07:34:35 +02:00
Fix #1836
This commit is contained in:
parent
b0af945571
commit
69ed1e62a4
@ -44,29 +44,36 @@ sub message {
|
|||||||
|
|
||||||
my $result;
|
my $result;
|
||||||
eval {
|
eval {
|
||||||
local $SIG{ALRM} = sub { die 'timeout' };
|
local $SIG{ALRM} = sub { die 'timeout' };
|
||||||
alarm($self->{option_results}->{timeout});
|
alarm($self->{option_results}->{timeout});
|
||||||
$result = $smtp_handle->send(-to => $self->{option_results}->{smtp_to},
|
$result = $smtp_handle->send(
|
||||||
-from => $self->{option_results}->{smtp_from},
|
-to => $self->{option_results}->{smtp_to},
|
||||||
%smtp_options);
|
-from => $self->{option_results}->{smtp_from},
|
||||||
|
%smtp_options
|
||||||
alarm(0);
|
);
|
||||||
|
alarm(0);
|
||||||
};
|
};
|
||||||
if ($@) {
|
if ($@) {
|
||||||
$self->{output}->output_add(severity => 'unknown',
|
$self->{output}->output_add(
|
||||||
short_msg => 'Unable to send message: ' . $@);
|
severity => 'unknown',
|
||||||
|
short_msg => 'Unable to send message: ' . $@
|
||||||
|
);
|
||||||
$self->{output}->display();
|
$self->{output}->display();
|
||||||
$self->{output}->exit();
|
$self->{output}->exit();
|
||||||
}
|
}
|
||||||
if ($result == -1) {
|
if ($result == -1) {
|
||||||
$self->{output}->output_add(severity => 'critical',
|
$self->{output}->output_add(
|
||||||
short_msg => 'Unable to send message.');
|
severity => 'critical',
|
||||||
|
short_msg => 'Unable to send message.'
|
||||||
|
);
|
||||||
$self->{output}->display();
|
$self->{output}->display();
|
||||||
$self->{output}->exit();
|
$self->{output}->exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
$self->{output}->output_add(severity => 'ok',
|
$self->{output}->output_add(
|
||||||
short_msg => 'Message sent');
|
severity => 'ok',
|
||||||
|
short_msg => 'Message sent'
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
sub connect {
|
sub connect {
|
||||||
@ -98,30 +105,37 @@ sub connect {
|
|||||||
my ($stdout, $error_msg);
|
my ($stdout, $error_msg);
|
||||||
{
|
{
|
||||||
eval {
|
eval {
|
||||||
local $SIG{ALRM} = sub { die 'timeout' };
|
local $SIG{ALRM} = sub { die "timeout\n" };
|
||||||
local *STDOUT;
|
local *STDOUT;
|
||||||
open STDOUT, '>', \$stdout;
|
open STDOUT, '>', \$stdout;
|
||||||
alarm($self->{option_results}->{timeout});
|
alarm($self->{option_results}->{timeout});
|
||||||
($smtp_handle, $error_msg) = Email::Send::SMTP::Gmail->new(-smtp=> $self->{option_results}->{hostname},
|
($smtp_handle, $error_msg) = Email::Send::SMTP::Gmail->new(
|
||||||
%smtp_options);
|
-smtp=> $self->{option_results}->{hostname},
|
||||||
|
%smtp_options
|
||||||
|
);
|
||||||
alarm(0);
|
alarm(0);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($@) {
|
if ($@) {
|
||||||
$self->{output}->output_add(severity => $connection_exit,
|
chomp $@;
|
||||||
short_msg => 'Unable to connect to SMTP: ' . $@);
|
$self->{output}->output_add(
|
||||||
|
severity => $connection_exit,
|
||||||
|
short_msg => 'Unable to connect to SMTP: ' . $@
|
||||||
|
);
|
||||||
$self->{output}->display();
|
$self->{output}->display();
|
||||||
$self->{output}->exit();
|
$self->{output}->exit();
|
||||||
}
|
}
|
||||||
if ($smtp_handle == -1) {
|
if ($smtp_handle == -1) {
|
||||||
chomp $stdout;
|
chomp $stdout;
|
||||||
$self->{output}->output_add(severity => $connection_exit,
|
$self->{output}->output_add(
|
||||||
short_msg => 'Unable to connect to SMTP: ' . (defined($stdout) ? $stdout : $error_msg));
|
severity => $connection_exit,
|
||||||
|
short_msg => 'Unable to connect to SMTP: ' . (defined($stdout) ? $stdout : $error_msg)
|
||||||
|
);
|
||||||
$self->{output}->display();
|
$self->{output}->display();
|
||||||
$self->{output}->exit();
|
$self->{output}->exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
$connected = 1;
|
$connected = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user