public int ForwardSingleLineToPeer( MyBinaryReader clientStreamReader, BinaryWriter webServerStreamWriter, Encoding contentCharsetEncoding, byte[] serverNewlineBytes, SniffedDataChunk sniffedDataChunk, bool mustBeProcessed) { int noBytesTransferred = 0; byte[] clientData = clientStreamReader.ReadBinaryLine(); if (clientData?.Length > 0) { // Forward received data packets to peer webServerStreamWriter.Write(clientData, 0, clientData.Length); noBytesTransferred += clientData.Length; // If a sniffer data chunk object is defined write application data to it if (sniffedDataChunk != null) { sniffedDataChunk.AppendData(clientData, clientData.Length); } Logging.Instance.LogMessage(this.requestObj.Id, this.requestObj.ProxyProtocol, Loglevel.Debug, "TcpClientRaw.ForwardSingleLineNonprocessedDataToPeer(): clientData.Length:{0}", clientData.Length); } else { Logging.Instance.LogMessage(this.requestObj.Id, this.requestObj.ProxyProtocol, Loglevel.Debug, "TcpClientRaw.ForwardSingleLineNonprocessedDataToPeer(): clientData:NULL"); } return(noBytesTransferred); }