public void Test_KeyExchangeDhGroupExchangeRequest_GetBytes() { var m = new KeyExchangeDhGroupExchangeRequest(1024, 1024, 1204); var input = new byte[] { 0x22, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, }; var output = m.GetBytes(); // Skip first 17 bytes since 16 bytes are randomly generated Assert.IsTrue(input.SequenceEqual(output.Skip(17))); }
public void Load() { var request = new KeyExchangeDhGroupExchangeRequest(_minimum, _preferred, _maximum); var bytes = request.GetBytes(); var target = new KeyExchangeDhGroupExchangeRequest(0, 0, 0); target.Load(bytes, 1, bytes.Length - 1); Assert.AreEqual(_minimum, target.Minimum); Assert.AreEqual(_preferred, target.Preferred); Assert.AreEqual(_maximum, target.Maximum); }
public void Test_KeyExchangeDhGroupExchangeRequest_GetBytes() { var request = new KeyExchangeDhGroupExchangeRequest(_minimum, _preferred, _maximum); var bytes = request.GetBytes(); var expectedBytesLength = 0; expectedBytesLength += 1; // Type expectedBytesLength += 4; // Minimum expectedBytesLength += 4; // Preferred expectedBytesLength += 4; // Maximum Assert.AreEqual(expectedBytesLength, bytes.Length); var sshDataStream = new SshDataStream(bytes); Assert.AreEqual(KeyExchangeDhGroupExchangeRequest.MessageNumber, sshDataStream.ReadByte()); Assert.AreEqual(_minimum, sshDataStream.ReadUInt32()); Assert.AreEqual(_preferred, sshDataStream.ReadUInt32()); Assert.AreEqual(_maximum, sshDataStream.ReadUInt32()); Assert.IsTrue(sshDataStream.IsEndOfData); }