|
@@ -153,6 +153,11 @@ namespace Renci.SshNet
|
|
|
/// </example>
|
|
/// </example>
|
|
|
public event EventHandler<HostKeyEventArgs> HostKeyReceived;
|
|
public event EventHandler<HostKeyEventArgs> HostKeyReceived;
|
|
|
|
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
|
+ /// Occurs when server identification received.
|
|
|
|
|
+ /// </summary>
|
|
|
|
|
+ public event EventHandler<SshIdentificationEventArgs> ServerIdentificationReceived;
|
|
|
|
|
+
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// Initializes a new instance of the <see cref="BaseClient"/> class.
|
|
/// Initializes a new instance of the <see cref="BaseClient"/> class.
|
|
|
/// </summary>
|
|
/// </summary>
|
|
@@ -390,6 +395,11 @@ namespace Renci.SshNet
|
|
|
HostKeyReceived?.Invoke(this, e);
|
|
HostKeyReceived?.Invoke(this, e);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ private void Session_ServerIdentificationReceived(object sender, SshIdentificationEventArgs e)
|
|
|
|
|
+ {
|
|
|
|
|
+ ServerIdentificationReceived?.Invoke(this, e);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
|
|
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
|
|
|
/// </summary>
|
|
/// </summary>
|
|
@@ -532,6 +542,7 @@ namespace Renci.SshNet
|
|
|
private ISession CreateAndConnectSession()
|
|
private ISession CreateAndConnectSession()
|
|
|
{
|
|
{
|
|
|
var session = _serviceFactory.CreateSession(ConnectionInfo, _serviceFactory.CreateSocketFactory());
|
|
var session = _serviceFactory.CreateSession(ConnectionInfo, _serviceFactory.CreateSocketFactory());
|
|
|
|
|
+ session.ServerIdentificationReceived += Session_ServerIdentificationReceived;
|
|
|
session.HostKeyReceived += Session_HostKeyReceived;
|
|
session.HostKeyReceived += Session_HostKeyReceived;
|
|
|
session.ErrorOccured += Session_ErrorOccured;
|
|
session.ErrorOccured += Session_ErrorOccured;
|
|
|
|
|
|
|
@@ -550,6 +561,7 @@ namespace Renci.SshNet
|
|
|
private async Task<ISession> CreateAndConnectSessionAsync(CancellationToken cancellationToken)
|
|
private async Task<ISession> CreateAndConnectSessionAsync(CancellationToken cancellationToken)
|
|
|
{
|
|
{
|
|
|
var session = _serviceFactory.CreateSession(ConnectionInfo, _serviceFactory.CreateSocketFactory());
|
|
var session = _serviceFactory.CreateSession(ConnectionInfo, _serviceFactory.CreateSocketFactory());
|
|
|
|
|
+ session.ServerIdentificationReceived += Session_ServerIdentificationReceived;
|
|
|
session.HostKeyReceived += Session_HostKeyReceived;
|
|
session.HostKeyReceived += Session_HostKeyReceived;
|
|
|
session.ErrorOccured += Session_ErrorOccured;
|
|
session.ErrorOccured += Session_ErrorOccured;
|
|
|
|
|
|
|
@@ -569,6 +581,7 @@ namespace Renci.SshNet
|
|
|
{
|
|
{
|
|
|
session.ErrorOccured -= Session_ErrorOccured;
|
|
session.ErrorOccured -= Session_ErrorOccured;
|
|
|
session.HostKeyReceived -= Session_HostKeyReceived;
|
|
session.HostKeyReceived -= Session_HostKeyReceived;
|
|
|
|
|
+ session.ServerIdentificationReceived -= Session_ServerIdentificationReceived;
|
|
|
session.Dispose();
|
|
session.Dispose();
|
|
|
}
|
|
}
|
|
|
|
|
|