public void SendText(string text) { var encryptedInfo = MakeEncryptedInfo(); var memStream = new MemoryStream(); Encrypt(memStream, text); var encryptedText = memStream.ToArray(); var headObj = new Utils.DataHead() { Password = (uint)this.password, InfoLen = (UInt64)encryptedInfo.Length, DataLen = (UInt64)encryptedText.Length }; // Send exit flag this.socket.Send(new byte[1]); // Send head SendJson(headObj); // Send info this.socket.Send(encryptedInfo); // Send data this.socket.Send(encryptedText); }
public void SendStream(Stream stream, string fileName = "") { var encryptedInfo = MakeEncryptedInfo(fileName); var encryptedDataLen = (long)Math.Ceiling(stream.Length / 16.0) * 16; var headObj = new Utils.DataHead() { Password = (uint)this.password, InfoLen = (UInt64)encryptedInfo.Length, DataLen = (UInt64)encryptedDataLen }; // Send exit flag this.socket.Send(new byte[1]); // Send head SendJson(headObj); // Send info this.socket.Send(encryptedInfo); // Send stream using var socketStream = new NetworkStream(this.socket); Encrypt(outStream: socketStream, inStream: stream); }