#if false
using System;
using Renci.SshNet.Common;
namespace Renci.SshNet.Messages.Transport
{
///
/// Represents SSH_MSG_KEXECDH_INIT message.
///
[Message("SSH_MSG_KEXECDH_INIT", 30)]
internal class KeyExchangeEcdhInitMessage : Message, IKeyExchangedAllowed
{
///
/// Gets the client's ephemeral contribution to the ECDH exchange, encoded as an octet string
///
public byte[] QC { get; private set; }
///
/// Gets the size of the message in bytes.
///
///
/// The size of the messages in bytes.
///
protected override int BufferCapacity
{
get
{
var capacity = base.BufferCapacity;
capacity += 4; // QC length
capacity += QC.Length; // QC
return capacity;
}
}
///
/// Initializes a new instance of the class.
///
public KeyExchangeEcdhInitMessage(BigInteger d, BigInteger q)
{
var dBytes = d.ToByteArray().Reverse();
var qBytes = q.ToByteArray().Reverse();
var data = new byte[dBytes.Length + qBytes.Length + 1];
data[0] = 0x04;
Buffer.BlockCopy(dBytes, 0, data, 1, dBytes.Length);
Buffer.BlockCopy(qBytes, 0, data, dBytes.Length + 1, qBytes.Length);
QC = data;
}
///
/// Called when type specific data need to be loaded.
///
protected override void LoadData()
{
QC = ReadBinary();
}
///
/// Called when type specific data need to be saved.
///
protected override void SaveData()
{
WriteBinaryString(QC);
}
}
}
#endif // false