uhub/tools/adc-redirector
Jan Vidar Krey 4812a5968b Added an ADC redirector script, which is useful to run from inetd, xinetd
or similar in case you move your hub to another machine.
It will accept ADC connections and redirect clients to the new hub
instead.
2009-05-28 01:33:23 +02:00

49 行
887 B
Perl
可执行文件

#!/usr/bin/perl -w
# Setup using inetd/xinetd or similar.
# In /etc/inetd.conf add:
# 1511 stream tcp nowait nobody /usr/bin/adc-redirector adc://target:port
#
# Change port to whatever you want.
# Make sure the path and the target:port is correct, then you should be good
# to go!
use strict;
use IO::Handle;
autoflush STDIN;
autoflush STDOUT;
my $target = $ARGV[0];
eval
{
local %SIG;
$SIG{ALRM}= sub { exit 0; };
alarm 30;
};
while (my $line = <STDIN>)
{
chomp($line);
if ($line =~ /^HSUP /)
{
print "ISUP ADBASE ADPING ADTIGR\n";
print "ISID AAAX\n";
print "IINF CT32 NIRedirector VEadc-redirector/0.1\n";
next;
}
if ($line =~ /^BINF /)
{
print "$line\n";
print "IMSG This\\sserver\\shas\\smoved\\sto:\\s" . $target . "\n";
print "IMSG You\\sare\\sbeing\\sredirected...\n";
print "IQUI AAAX RD" . $target . "\n";
alarm 5;
}
}
alarm 0;