added examples
authordjk <djk>
Mon, 21 Dec 1998 11:01:38 +0000 (11:01 +0000)
committerdjk <djk>
Mon, 21 Dec 1998 11:01:38 +0000 (11:01 +0000)
added data/issue to login clients

examples/djk [new file with mode: 0644]
examples/gb7djk [new file with mode: 0644]
examples/gb7tlh [new file with mode: 0644]
examples/hop_table.pl [new file with mode: 0644]
perl/client.pl

diff --git a/examples/djk b/examples/djk
new file mode 100644 (file)
index 0000000..8e6a0cf
--- /dev/null
@@ -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 (file)
index 0000000..e2e20cd
--- /dev/null
@@ -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 (file)
index 0000000..83046c6
--- /dev/null
@@ -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 (file)
index 0000000..7bb647f
--- /dev/null
@@ -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,
+                  }
+);
index cc185a17838622f4c2631464ca4ea5554947b39a..8d2d683b1ac68974a80c2935c352380794766639 100755 (executable)
@@ -348,28 +348,48 @@ if ($loginreq) {
        my $user;
        my $s;
 
+       if (-e "$data/issue") {
+               open(I, "$data/issue") or die;
+               local $/ = undef;
+               $issue = <I>;
+               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);
+                       }
                }
        }
 }