mirror of
https://github.com/monitoring-plugins/monitoring-plugins.git
synced 2026-02-20 00:10:09 -05:00
Fix check_ircd binding to wrong interface (#668778)
This commit is contained in:
parent
e82b611840
commit
bc3c8c7cfb
2 changed files with 8 additions and 16 deletions
3
NEWS
3
NEWS
|
|
@ -1,5 +1,8 @@
|
|||
This file documents the major additions and syntax changes between releases.
|
||||
|
||||
1.4.15 ...
|
||||
Fix check_ircd binding to wrong interface (#668778)
|
||||
|
||||
1.4.14 16th September 2009
|
||||
check_http has options to specify the HTTP method (#2155152)
|
||||
check_users thresholds were not working exactly as documented (>= rather than >)
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ use utils qw($TIMEOUT %ERRORS &print_revision &support &usage);
|
|||
sub print_help ();
|
||||
sub print_usage ();
|
||||
sub connection ($$$$);
|
||||
sub bindRemote ($$$);
|
||||
sub bindRemote ($$);
|
||||
|
||||
# -------------------------------------------------------------[ Enviroment ]--
|
||||
|
||||
|
|
@ -141,28 +141,20 @@ Perl Check IRCD plugin for Nagios
|
|||
|
||||
# -------------------------------------------------------------[ bindRemote ]--
|
||||
|
||||
sub bindRemote ($$$)
|
||||
sub bindRemote ($$)
|
||||
{
|
||||
my ($in_remotehost, $in_remoteport, $in_hostname) = @_;
|
||||
my ($in_remotehost, $in_remoteport) = @_;
|
||||
my $proto = getprotobyname('tcp');
|
||||
my $sockaddr;
|
||||
my $this;
|
||||
my $thisaddr = gethostbyname($in_hostname);
|
||||
my $that;
|
||||
my ($name, $aliases,$type,$len,$thataddr) = gethostbyname($in_remotehost);
|
||||
# ($name,$aliases,$type,$len,$thisaddr) = gethostbyname($in_hostname);
|
||||
|
||||
if (!socket(ClientSocket,AF_INET, SOCK_STREAM, $proto)) {
|
||||
print "IRCD UNKNOWN: Could not start socket ($!)\n";
|
||||
exit $ERRORS{"UNKNOWN"};
|
||||
}
|
||||
$sockaddr = 'S n a4 x8';
|
||||
$this = pack($sockaddr, AF_INET, 0, $thisaddr);
|
||||
$that = pack($sockaddr, AF_INET, $in_remoteport, $thataddr);
|
||||
if (!bind(ClientSocket, $this)) {
|
||||
print "IRCD UNKNOWN: Could not bind socket ($!)\n";
|
||||
exit $ERRORS{"UNKNOWN"};
|
||||
}
|
||||
if (!connect(ClientSocket, $that)) {
|
||||
print "IRCD UNKNOWN: Could not connect socket ($!)\n";
|
||||
exit $ERRORS{"UNKNOWN"};
|
||||
|
|
@ -221,13 +213,10 @@ MAIN:
|
|||
|
||||
alarm($TIMEOUT);
|
||||
|
||||
chomp($hostname = `/bin/hostname`);
|
||||
$hostname = $1 if ($hostname =~ /([-.a-zA-Z0-9]+)/);
|
||||
my ($name, $alias, $proto) = getprotobyname('tcp');
|
||||
print "MAIN(debug): hostname = $hostname\n" if $verbose;
|
||||
|
||||
print "MAIN(debug): binding to remote host: $remotehost -> $remoteport -> $hostname\n" if $verbose;
|
||||
my $ClientSocket = &bindRemote($remotehost,$remoteport,$hostname);
|
||||
print "MAIN(debug): binding to remote host: $remotehost -> $remoteport\n" if $verbose;
|
||||
my $ClientSocket = &bindRemote($remotehost,$remoteport);
|
||||
|
||||
print ClientSocket "NICK $NICK\nUSER $USER_INFO\n";
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue