From: djk Date: Mon, 21 Dec 1998 11:01:38 +0000 (+0000) Subject: added examples X-Git-Tag: R_1_13~3 X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?p=spider.git;a=commitdiff_plain;h=0565e35bbb112b94c89f693dcb74ac7efa9e424a added examples added data/issue to login clients --- diff --git a/examples/djk b/examples/djk new file mode 100644 index 00000000..8e6a0cfb --- /dev/null +++ b/examples/djk @@ -0,0 +1,7 @@ +timeout 15 +connect telnet dirk1 +'login' 'djk' +'word' 'xxxxx' +'\$ ' 'cd spider/perl' +'\$ ' 'client.pl gb7djk-1 telnet' +client gb7djk telnet diff --git a/examples/gb7djk b/examples/gb7djk new file mode 100644 index 00000000..e2e20cd0 --- /dev/null +++ b/examples/gb7djk @@ -0,0 +1,6 @@ +timeout 15 +# don't forget to chmod 4775 netrom_call! +connect ax25 /usr/sbin/netrom_call bbs gb7djk-1 gb7djk-0 +'Connect' '' +'Connect' +client gb7djk ax25 diff --git a/examples/gb7tlh b/examples/gb7tlh new file mode 100644 index 00000000..83046c6b --- /dev/null +++ b/examples/gb7tlh @@ -0,0 +1,7 @@ +timeout 15 +# don't forget to chmod 4775 netrom_call! +connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh-0 +'Connect' '' +'Connect' 'cluster' +'Connect' +client gb7tlh ax25 diff --git a/examples/hop_table.pl b/examples/hop_table.pl new file mode 100644 index 00000000..7bb647ff --- /dev/null +++ b/examples/hop_table.pl @@ -0,0 +1,36 @@ +# +# hop table construction +# + +package DXProt; + +# default hopcount to use +$def_hopcount = 15; + +# some variable hop counts based on message type +%hopcount = +( + 11 => 10, + 16 => 10, + 17 => 10, + 19 => 10, + 21 => 10, +); + +# +# the per node hop control thingy +# + +%nodehops = +( + GB7DJK => { + 16 => 23, + 17 => 23, + }, + GB7TLH => { + 19 => 99, + 21 => 99, + 16 => 99, + 17 => 99, + } +); diff --git a/perl/client.pl b/perl/client.pl index cc185a17..8d2d683b 100755 --- a/perl/client.pl +++ b/perl/client.pl @@ -348,28 +348,48 @@ if ($loginreq) { my $user; my $s; + if (-e "$data/issue") { + open(I, "$data/issue") or die; + local $/ = undef; + $issue = ; + close(I); + $issue = s/\n/\r/og if $mode == 1; + local $/ = $nl; + $stdout->print($issue) if issue; + } + + DXUser->init($userfn); + # allow a login from an existing user. I could create a user but + # I want to check for valid callsigns and I don't have the + # necessary info / regular expression yet for ($state = 0; $state < 2; ) { alarm($timeout); if ($state == 0) { $stdout->print('login: '); $stdout->flush(); - local $/ = $mode == 1 ? "\r" : "\n"; + local $\ = $nl; $s = $stdin->getline(); chomp $s; + $s =~ s/\s+//og; + $s =~ s/-\d+$//o; # no ssids! + cease(0) unless $s gt ' '; $call = uc $s; $user = DXUser->get($call); $state = 1; } elsif ($state == 1) { $stdout->print('password: '); $stdout->flush(); - local $/ = $mode == 1 ? "\r" : "\n"; + local $\ = $nl; $s = $stdin->getline(); chomp $s; $state = 2; - cease(0) if !$user || ($user->passwd && $user->passwd ne $s); + if (!$user || ($user->passwd && $user->passwd ne $s)) { + $stdout->print("sorry...$nl"); + cease(0); + } } } }