/// <exception cref="IOException"></exception> public static byte[] CreateHeartbeatExtension(HeartbeatExtension heartbeatExtension) { if (heartbeatExtension == null) { throw new TlsFatalAlert(AlertDescription.internal_error); } MemoryStream buf = new MemoryStream(); heartbeatExtension.Encode(buf); return(buf.ToArray()); }
/// <exception cref="IOException"></exception> public static HeartbeatExtension ReadHeartbeatExtension(byte[] extensionData) { if (extensionData == null) { throw new ArgumentNullException("extensionData"); } MemoryStream buf = new MemoryStream(extensionData, false); HeartbeatExtension heartbeatExtension = HeartbeatExtension.Parse(buf); TlsProtocol.AssertEmpty(buf); return(heartbeatExtension); }
/// <exception cref="IOException"></exception> public static void AddHeartbeatExtension(IDictionary extensions, HeartbeatExtension heartbeatExtension) { extensions[ExtensionType.heartbeat] = CreateHeartbeatExtension(heartbeatExtension); }