| ||||||||||
spawning telnet from a procedure Posted by geno976 (geno976), 29 January 2006 Hello,I'm having trouble spawning telnet(s) from a proc. If I spawn the telnet directly from the main program the telnet connection is made and the rest of the script works, but if I spawn from the procedure call it fails as I never see the Trying 172.145.1.1 Connected to 172.145.1.1 Escape character is '^]'. Here are some code snippets.. proc login_dut { {login "admin"} {passwd ""} } { expect * send "\r" expect { "Username:" { send "$login\r" expect "assword:" send "$passwd\r" expect ">" .. .... proc multi_telnet { ipaddr } { for { set i 1 } { $i <= 2 } { incr i } { spawn telnet $ipaddr login_dut set t($i) $spawn_id } .. .... any help is greatly appreciated! TIA! Posted by geno976 (geno976), 29 January 2006 some more info.. if i change Quote:
to Quote:
then it also works... i don't see why the behviour is any different. any clues? Thanks, Posted by admin (Graham Ellis), 29 January 2006 Have you looked at what's in your spawn_id? I suspect that both spawn and expect use (internally) an uplev command to access that variable in their calling code. In the example that you've provided that was having problems, that would mean that they were different variables and so with multiple processes spawned at the same time you will indeed have problems. Posted by geno976 (geno976), 31 January 2006 Thanks for the quick reply Graham. You da man!I changed Quote:
to Quote:
and it now works ... Thanks again! This page is a thread posted to the opentalk forum
at www.opentalk.org.uk and
archived here for reference. To jump to the archive index please
follow this link.
| ||||||||||
PH: 01144 1225 708225 • FAX: 01144 1225 793803 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho |