SSH.NET v2016.1.0-beta1 Release Notes

Release Date: 2016-12-14 // almost 6 years ago
  • ๐Ÿ†• New Features


    • A ForwardedPortDynamic now supports domain name addresses for SOCKS5 requests (issue #98).

    ๐Ÿ”„ Changes


    ๐Ÿ“ฆ The NuGet Package Manager in Visual Studio 2012 does not support packages in which a given dependency is defined for more than one TFM. Since a fix for this issue is not expected any time soon, we're reviving support for a binary distribution.

    This plain .zip file contains the SSH.NET assembly, and where applicable any dependencies, for all supported target frameworks.

    ๐Ÿ“ฆ For Visual Studio 2015 and higher, the SSH.NET NuGet package remains our primary distribution mechanism.


    • Data of an SSH_MSG_IGNORE server request is now ignored when the specified length is greater than the actual available bytes (issue #41).


    • ForwardedPort.Stop() no longer throws ObjectDisposedException when the port is disposed.

    ๐ŸŽ Performance

    • โฌ‡๏ธ Reduce overhead when invoking both Disconnect() and Dispose().
    • ๐Ÿ‘Œ Improve performance of SSH message processing by eliminating use of dynamic dispatching.

    ๐Ÿ›  Fixes


    • ๐Ÿ– Handle leak when connection to SSH server fails (issue #55).
    • Race condition when both server and client close channel (issue #84).
    • ๐Ÿ‘ป Suppressing a not-connected exception on socket shutdown (issue #86).
    • Race condition when both server and client disconnect (issue #80).
    • Do not consume request-specific data for SSH_MSG_GLOBAL_REQUEST (issue #58).
    • SocketAsyncEventArgs leak establishing socket connection (issue #133 and #87).


    • Uploads with a buffer size that is less than or greather than 32 Kb would corrupt (issue #70).


    • ๐Ÿ‘ป Dispose() throws exception when SSH session gets disconnected unexpectedly (issue #96).


    • ScpClient.Upload(DirectoryInfo, string) adds extra directory level (issue #128).
    • ScpClient.Upload(DirectoryInfo, string) applies timestamp of parent directory (issue #129).