Giter VIP home page Giter VIP logo

Comments (3)

9swampy avatar 9swampy commented on June 1, 2024

Look at the code inside TryLoginAsync; it's just a wrapper for a few consecutive reads/writes. The CancellationToken/Timeout implementation I put in but used minimally and it served my purposes; clearly you've found something that isn't quite right.

from telnet.

GromitD90 avatar GromitD90 commented on June 1, 2024

After further digging I have found that it is not the TryLoginAsynch call that is the issue. It is the call to create a new telnetclient object.
If Telnet is not enabled on my R7000 the TCP session request is refused which I assume is sent by the call -
var telnetClient = new PrimS.Telnet.Client(IPaddress, 23, new CancellationToken());

So I assume the telnetClient object will not get created but I'm not savvy enough to understand why I don't get an exception in the subsequent code.

I have found a workaround. If I call the async method containing the code above with an await inside a try catch then I do catch an exception. so the following works:

public static async Task CheckTelnetCanConnect()
{
var telnetClient = new PrimS.Telnet.Client("XXX.XXX.XX.XX", 23, new CancellationToken());
var connection = await telnetClient.TryLoginAsync("root", "password", loginTimeoutMs: 10000);
if (telnetClient.IsConnected)
{
Console.WriteLine("Telnet is Connected");
Console.ReadLine();
telnetClient.Dispose();
return true;
}
else
{
Console.WriteLine("Telnet Connect Failed");
Console.ReadLine();
telnetClient.Dispose();
return false;
}
}

Called by -

try
{
await CheckTelnetCanConnect();
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
I get a Socket exception telling me the target machine actively refused the connection (TCP SYN) request.

If the await is not used on the call I see no exceptions or errors anywhere

Mike

from telnet.

9swampy avatar 9swampy commented on June 1, 2024

Thanks for coming back and documenting. You've got something that works now so I'll close.

from telnet.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.