summaryrefslogtreecommitdiffstats
path: root/bin/alogin.in
diff options
context:
space:
mode:
Diffstat (limited to 'bin/alogin.in')
-rw-r--r--bin/alogin.in32
1 files changed, 11 insertions, 21 deletions
diff --git a/bin/alogin.in b/bin/alogin.in
index c21b49f..a17bd2a 100644
--- a/bin/alogin.in
+++ b/bin/alogin.in
@@ -3,7 +3,7 @@
## $Id$
##
## @PACKAGE@ @VERSION@
-## Copyright (c) 1997-2007 by Terrapin Communications, Inc.
+## Copyright (c) 1997-2008 by Terrapin Communications, Inc.
## All rights reserved.
##
## This code is derived from software contributed to and maintained by
@@ -385,16 +385,16 @@ proc login { router user userpswd passwd prompt cmethod cyphertype } {
return 1 }
-re "$u_prompt" {
- send "$user\r"
+ send -- "$user\r"
set uprompt_seen 1
exp_continue
}
-re "$p_prompt" {
sleep 1
if {$uprompt_seen == 1} {
- send "$userpswd\r"
+ send -- "$userpswd\r"
} else {
- send "$passwd\r"
+ send -- "$passwd\r"
}
exp_continue
}
@@ -425,24 +425,14 @@ proc run_commands { prompt command } {
regsub -all "\[)(]" $prompt {\\&} reprompt
- # Is this a multi-command?
- if [ string match "*\;*" "$command" ] {
- set commands [split $command \;]
- set num_commands [llength $commands]
- for {set i 0} {$i < $num_commands} { incr i} {
- send "[subst -nocommands [lindex $commands $i]]\r"
- expect {
- -re "^\[^\n\r]*$reprompt" {}
- -re "^\[^\n\r ]*>>.*$reprompt" { exp_continue }
- -re "\[\n\r]+" { exp_continue }
- }
- }
- } else {
- send "[subst -nocommands $command]\r"
+ set commands [split $command \;]
+ set num_commands [llength $commands]
+ for {set i 0} {$i < $num_commands} { incr i} {
+ send -- "[subst -nocommands [lindex $commands $i]]\r"
expect {
- -re "^\[^\n\r]*$reprompt" {}
- -re "^\[^\n\r ]*>>.*$reprompt" { exp_continue }
- -re "\[\n\r]+" { exp_continue }
+ -re "^\[^\n\r]*$reprompt" {}
+ -re "^\[^\n\r ]*>>.*$reprompt" { exp_continue }
+ -re "\[\n\r]+" { exp_continue }
}
}
send "exit\r"