package Kernel;
-use IO::Socket;
-use strict;
-
-### TODO: change this to http instead of finger?
-my $server = "ftp.kernel.org";
-my $port = 79;
-my $proto = getprotobyname('tcp');
-
-###local $SIG{ALRM} = sub { die "alarm\n" };
-
sub kernelGetInfo {
-### return unless &::loadPerlModule("IO::Socket");
-
- my $socket = new IO::Socket;
-
- socket($socket, PF_INET, SOCK_STREAM, $proto) or return "error: socket: $!";
- eval {
- alarm 15;
- connect($socket, sockaddr_in($port, inet_aton($server))) or return "error: connect: $!";
- alarm 0;
- };
-
- my @retval;
-
- if ($@ && $@ ne "alarm\n") { # failed.
- return;
- }
-
- $socket->autoflush(1); # required.
-
- print $socket "\n";
- while (<$socket>) {
- chop;
-
- s/\t//g;
- s/\s$//;
- s/\s+/ /g;
-
- next if ($_ eq "");
-
- push(@retval, $_);
- }
- close $socket;
-
- @retval;
+ return &getURL("http://www.kernel.org/kdist/finger_banner");
}
sub Kernel {