From fdc1150da7dbd9c1094d8df7a4744fb917017ed2 Mon Sep 17 00:00:00 2001 From: djk Date: Sun, 20 Sep 1998 21:45:08 +0000 Subject: [PATCH] got some basic local user add and subtract database going --- perl/DXCommandmode.pm | 6 +++--- perl/DXProtout.pm | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/perl/DXCommandmode.pm b/perl/DXCommandmode.pm index d39af559..18dbf2ac 100644 --- a/perl/DXCommandmode.pm +++ b/perl/DXCommandmode.pm @@ -67,8 +67,8 @@ sub start # issue a pc16 to everybody interested my $nchan = DXChannel->get($main::mycall); - my $pc16 = $nchan->pc16($cuser); - DXProt::broadcast_ak1a($pc16); + my @pc16 = DXProt::pc16($nchan, $cuser); + DXProt::broadcast_ak1a(@pc16); } # @@ -153,7 +153,7 @@ sub finish # issue a pc17 to everybody interested my $nchan = DXChannel->get($main::mycall); - my $pc17 = $nchan->pc17($ref); + my $pc17 = $nchan->pc17($self); DXProt::broadcast_ak1a($pc17); $ref->del() if $ref; diff --git a/perl/DXProtout.pm b/perl/DXProtout.pm index 66252c7a..9fb0b711 100644 --- a/perl/DXProtout.pm +++ b/perl/DXProtout.pm @@ -69,11 +69,11 @@ sub pc16 my $self = shift; my @out; - while (@_) { + foreach (@_) { my $str = "PC16^$self->{call}"; my $i; - for ($i = 0; @_ && $i < $DXProt::pc16_max_users; $i++) { + for ($i = 0; @_ > 0 && $i < $DXProt::pc16_max_users; $i++) { my $ref = shift; $str .= sprintf "^%s %s %d", $ref->call, $ref->confmode ? '*' : '-', $ref->here; } @@ -86,9 +86,9 @@ sub pc16 # remove a local user sub pc17 { - my $self = shift; + my ($self, $ref) = @_; my $hops = get_hops(17); - return "PC17^$self->{call}^$main::mycall^$hops^"; + return "PC17^$self->{call}^$ref->{call}^$hops^"; } # Request init string -- 2.34.1