RequestMessage
Represents SSH_MSG_USERAUTH_REQUEST message. Server as a base message for other user authentication requests.
using Renci.SshNet.Common;
using Renci.SshNet.Common;
namespace Renci.SshNet.Messages.Authentication
{
internal sealed class RequestMessageHost : RequestMessage
{
public byte[] PublicKeyAlgorithm { get; } = SshData.Ascii.GetBytes(publicKeyAlgorithm);
public byte[] PublicHostKey { get; } = publicHostKey;
public byte[] ClientHostName { get; } = SshData.Ascii.GetBytes(clientHostName);
public byte[] ClientUsername { get; } = SshData.Utf8.GetBytes(clientUsername);
public byte[] Signature { get; } = signature;
protected override int BufferCapacity => base.BufferCapacity + 4 + PublicKeyAlgorithm.Length + 4 + PublicHostKey.Length + 4 + ClientHostName.Length + 4 + ClientUsername.Length + 4 + Signature.Length;
public RequestMessageHost(ServiceName serviceName, string username, string publicKeyAlgorithm, byte[] publicHostKey, string clientHostName, string clientUsername, byte[] signature)
: base(serviceName, username, "hostbased")
{
}
protected override void SaveData()
{
base.SaveData();
WriteBinaryString(PublicKeyAlgorithm);
WriteBinaryString(PublicHostKey);
WriteBinaryString(ClientHostName);
WriteBinaryString(ClientUsername);
WriteBinaryString(Signature);
}
}
}