Bug 12263: Fix startup issues blocking response to HUP

If you do a kill -s HUP sipserver_pid the server process
should restart its children.
This was not happening although it was logging the commencement
of the process.

Removed traces of Exporter usage this was always incorrect
this program inherits from Net::Server 'use base' to make inheritance
clearer. Removed unnecessary begin block

made file executable so it can run

added a shebang line so OS knows to invoke perl to compile and run
the file.

I've removed the debug code dumping the config to STDOUT,
it should not have gone into the production version.
One of the first things this program does is close stdout etc and
reopens the sip sockets to them. Assuming you can print to them other
than as part of the sip dialogue is not always safe.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
This commit is contained in:
Colin Campbell 2014-05-15 12:24:57 +01:00 committed by Tomas Cohen Arazi
parent d9749756ca
commit 499ff3618c

16
C4/SIP/SIPServer.pm Normal file → Executable file
View file

@ -1,32 +1,25 @@
#!/usr/bin/perl
package SIPServer;
use strict;
use warnings;
use FindBin qw($Bin);
use lib "$Bin";
# use Exporter;
use Sys::Syslog qw(syslog);
use Net::Server::PreFork;
use IO::Socket::INET;
use Socket qw(:DEFAULT :crlf);
use Data::Dumper; # For debugging
require UNIVERSAL::require;
#use Sip qw(readline);
use Sip::Constants qw(:all);
use Sip::Configuration;
use Sip::Checksum qw(checksum verify_cksum);
use Sip::MsgType;
use base qw(Net::Server::PreFork);
use constant LOG_SIP => "local6"; # Local alias for the logging facility
use vars qw(@ISA $VERSION);
BEGIN {
$VERSION = 3.07.00.049;
@ISA = qw(Net::Server::PreFork);
}
#
# Main # not really, since package SIPServer
#
@ -43,7 +36,6 @@ my %transports = (
# Read configuration
#
my $config = new Sip::Configuration $ARGV[0];
print STDERR "SIPServer config: \n" . Dumper($config) . "\nEND SIPServer config.\n";
my @parms;
#
@ -75,8 +67,6 @@ if (defined($config->{'server-params'})) {
}
}
print scalar(localtime), " -- startup -- procid:$$\n";
print "Params for Net::Server::PreFork : \n" . Dumper(\@parms);
#
# This is the main event.