//public override void Close() //{ // // Send EOF message first when channel need to be closed // this.SendMessage(new ChannelEofMessage(this.RemoteChannelNumber)); // base.Close(); //} /// <summary> /// Called when channel data is received. /// </summary> /// <param name="data">The data.</param> protected override void OnData(byte[] data) { base.OnData(data); if (this.dataBuffer.Length == 0) { this.dataBuffer = data; } else { int oldLength = this.dataBuffer.Length; Array.Resize <byte>(ref this.dataBuffer, this.dataBuffer.Length + data.Length); Array.Copy(data, 0, this.dataBuffer, oldLength, data.Length); } do { try { PrivateKeyAgentMessage message = this.LoadPrivateKeyAgentMessage(); if (message == null) { break; } this.HandlePrivateKeyAgentMessage((dynamic)message); } catch (Exception ex) { this.SendPrivateKeyAgentMessage(new FailureMessage()); } }while (true); }
private void HandlePrivateKeyAgentMessage(PrivateKeyAgentMessage message) { this.SendPrivateKeyAgentMessage(new FailureMessage()); }
protected void SendPrivateKeyAgentMessage(PrivateKeyAgentMessage message) { this.SendData(message.GetBytes()); }