[reSIProcate] Client non-INVITE transaction question (1xx responses)
The following is the current behavior when a 1xx is received in a UAC for
non-INVITE transaction:
if (code >= 100 && code < 200) // 1XX
{
if (mState == Trying || mState == Proceeding)
{
mState = Proceeding;
if (!mIsReliable)
{
mController.mTimers.add(Timer::TimerE2, mId, Timer::T2 );
}
sendToTU(msg); // don't delete
}
else
{
// ignore
delete msg;
}
}
Since 1xx only really makes sense on an INVITE transaction, what should we
do in these cases? Should we deliver every 1xx to the TU as the code above
implements?