internal void SendMsgChannelOpenFailure(SshChannel channel, SshChannelOpenFailureReason reason,
                                                string description, string language)
        {
            if (_isDisposed)
            {
                throw new ObjectDisposedException(this.GetType().FullName);
            }

            // Create message to send.
            using (var msgStream = new MemoryStream())
                using (var msgWriter = new SshStreamWriter(msgStream))
                {
                    msgWriter.Write((byte)SshConnectionMessage.ChannelOpenFailure);
                    msgWriter.Write(channel.ClientChannel);
                    msgWriter.Write((uint)reason);
                    msgWriter.WriteByteString(Encoding.UTF8.GetBytes(description));
                    msgWriter.Write(language);

                    _client.SendPacket <SshConnectionMessage>(msgStream.ToArray());
                }
        }
        internal void SendMsgChannelOpenFailure(SshChannel channel, SshChannelOpenFailureReason reason,
            string description, string language)
        {
            if (_isDisposed) throw new ObjectDisposedException(this.GetType().FullName);

            // Create message to send.
            using (var msgStream = new MemoryStream())
            using (var msgWriter = new SshStreamWriter(msgStream))
            {
                msgWriter.Write((byte)SshConnectionMessage.ChannelOpenFailure);
                msgWriter.Write(channel.ClientChannel);
                msgWriter.Write((uint)reason);
                msgWriter.WriteByteString(Encoding.UTF8.GetBytes(description));
                msgWriter.Write(language);

                _client.SendPacket<SshConnectionMessage>(msgStream.ToArray());
            }
        }