private int copyDataBlock(final Pipe<ServerResponseSchema> sourcePipe, int pipeIdx, int peekMsgId,
int myPipeIdx, int sequenceNo, long channelId, boolean beginningOfResponse) {
failureIterations = -1;
Pipe<NetPayloadSchema> outPipe = outgoingPipes[myPipeIdx];
assert(recordInputs(channelId, sequenceNo, pipeIdx));
if (!isTLS) {
} else {
finishHandshake(outPipe, channelId);
}
assert(Pipe.bytesReadBase(sourcePipe)>=0);
int responses = copyDataBlock(sourcePipe, peekMsgId, myPipeIdx, sequenceNo, channelId, beginningOfResponse);
assert(Pipe.bytesReadBase(sourcePipe)>=0);
return responses;
}