/// <summary> /// Wrtites a msg to the SSH stream /// </summary> /// <param name="msg">msg to send</param> /// <returns></returns> public uint Send(RSProtoBuffSSHMsg msg) { System.Diagnostics.Debug.WriteLineIf(DEBUG, "send: sending packet " + msg.ReqID + " MsgID: " + msg.MsgID + " body size: " + msg.BodySize); if (_stream.CanWrite) { try { _stream.Write(CreatePacketFromMsg(msg), 0, 16 + (int)msg.BodySize); _stream.Flush(); } catch (Exception e) { _parent.Error(e, RSRPC.ErrorFrom.ProtoBuf); } } else { System.Diagnostics.Debug.WriteLine("send: can't write stream"); _parent.Error(new IOException("send: can't write stream"), RSRPC.ErrorFrom.ProtoBuf); } return(msg.ReqID); }
private void SSHError(object sender, ExceptionEventArgs e) { _parent.Error(e.Exception, RSRPC.ErrorFrom.SSH); }