Есть задача зайти телнетом на девайс, отправить команду, получить ответ, разпарсить его и извлечь нужную информацию. С двумя типами свичей процес проходит без проблем. Начал делать третий и наткнулся на проблему - не проходит пароль.
код
Код:
TN:=TTelnetSend.Create;
TN.TargetHost:=ipswitch;
TN.TargetPort:=cTelnetProtocol;
TN.Timeout:=5000;
TN.TermType:='dumb';
TN.Login;
TN.WaitFor('UserName:');
TN.Send(SwitchLogin+CRLF);
TN.WaitFor('PassWord:');
TN.Send(SwitchPassword+CRLF);
TN.WaitFor(waitfor);
TN.Send(Format('sh fdb port %d'+CRLF,[port]));
TN.WaitFor(waitfor);
TN.Send('logout'+CRLF);
Memo1.Lines.Text := TN.SessionLog;
TN.SessionLog
Код:
**** скип ****
All rights reserved.'#$A#$D'UserName:admin'#$A#$D'PassWord:**********'#$A#$D'Fail!'#$A#$D'UserName:'
так оно выглядит в обычном телнет клиенте
Код:
UserName:admin
PassWord:********
DES-3200-18:4#sh fdb port 6
Command: show fdb port 6
судя по всему мой клиент отсылает с пассвордом два лишних символа. длина пассворда 8 символов. С другими типами девайсов код работает без проблем.
Будут ли у кого соображения по теме?
Спасибо