Got the session, but can't get through the login.

Manual telnet would produce:

User Access Verification

Password:_


When I use the code below, I only get:

User Access Verification

(Can't get to the password prompt.)
#!perl
use warnings;
use strict;
use Net::Telnet;
 
my $Response;
 
my $telnet = Net::Telnet->new();
$telnet->open("172.20.1.254")
  or die "Could not open connection\n";
 
while ($Response = $telnet->getline){
        print $Response;
}

Open in new window

HilltownHealthCenterAsked:
Who is Participating?
 
Adam314Connect With a Mentor Commented:
The getline function will return the next line, and if one isn't available, it'll wait for one (or until it times out).  A line ends with "\n" (but this can be changed).  Since the password line doesn't have a "\n" on the end, it isn't yet a full line, so the getline function doesn't return it.

It sounds like you might want to use the waitfor function instead of getline:

You might want to read through the Net::Telnet documentation, as there are a lot of features of this module
...
my $telnet = Net::Telnet->new();
$telnet->open("172.20.1.254")
  or die "Could not open connection\n";
$telnet->waitfor('Password');

Open in new window

0
 
HilltownHealthCenterAuthor Commented:
More: after several seconds, this line appeared:

read timed-out at C:\test_ping.pl line 13

C:\>
0
 
HilltownHealthCenterAuthor Commented:
Got it to work. Fantastic!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.