private void ReadBody(NetworkStream stream, FPData peek) { int diff = peek.GetPkgLen() - peek.Bytes.Length; if (diff <= 0) { this.BuildBody(stream, peek, null); return; } int rlen = 0; byte[] buffer = new byte[diff]; this.ReadBytes(stream, peek, buffer, rlen, BuildBody); }
private FPData CryptoPeekHead(byte[] bytes) { if (bytes != null && bytes.Length >= 4) { FPData data = new FPData(); data.SetPkgLen((int)BitConverter.ToUInt32(this._pkg.GetByteArrayRange(bytes, 0, 3), 0)); data.Bytes = this._pkg.GetByteArrayRange(bytes, 4, bytes.Length - 1); if (data.GetPkgLen() > 8 * 1024 * 1024) { return(null); } return(data); } return(null); }