add show/connect
[spider.git] / cmd / show / connect.pl
1 #
2 # show active connections
3 #
4 # Copyright (c) 2001 Dirk Koopman G1TLH
5 #
6 # $Id$
7 #
8
9 my $self = shift;
10 return (1, $self->msg('e5')) if $self->priv < 1;
11 my @out;
12 my $count;
13
14 push @out, "Cnum Call      Address/Port              State  Type   Dir.";
15
16 foreach my $call (sort keys %Msg::conns) {
17         my $r = $Msg::conns{$call};
18         my $addr = "$r->{peerhost}/$r->{peerport}";
19         my $c = $call;
20         if ($c =~ /^Server\s+(\S+)$/) {
21                 $addr = $1;
22                 $c = "Server";
23         }
24         push @out,      sprintf(" %3d %-9s %-27.27s %3s %7s %8s", 
25                                                 $r->{cnum}, $c, 
26                                                 $addr, $r->{state}, 
27                                                 $r->{csort}, $r->{sort});
28
29         $count++;
30 }
31 push @out, "$count Connections";
32 return (1, @out);