sipStack.getStackLogger().logDebug(
"Dropping Prack -- ReliableResponse not found");
return false;
}
RAck rack = (RAck) prackRequest.getHeader(RAckHeader.NAME);
if (rack == null) {
if (sipStack.isLoggingEnabled(LogWriter.TRACE_DEBUG))
sipStack.getStackLogger().logDebug(
"Dropping Prack -- rack header not found");
return false;
}
if (!rack.getMethod().equals(
sipServerTransaction.getPendingReliableResponseMethod())) {
if (sipStack.isLoggingEnabled(LogWriter.TRACE_DEBUG))
sipStack.getStackLogger().logDebug(
"Dropping Prack -- CSeq Header does not match PRACK");
return false;
}
if (rack.getCSeqNumberLong() != sipServerTransaction
.getPendingReliableCSeqNumber()) {
if (sipStack.isLoggingEnabled(LogWriter.TRACE_DEBUG))
sipStack.getStackLogger().logDebug(
"Dropping Prack -- CSeq Header does not match PRACK");
return false;
}
if (rack.getRSequenceNumber() != sipServerTransaction
.getPendingReliableRSeqNumber()) {
if (sipStack.isLoggingEnabled(LogWriter.TRACE_DEBUG))
sipStack.getStackLogger().logDebug(
"Dropping Prack -- RSeq Header does not match PRACK");
return false;