< Previous by Date Date Index Next by Date >
  Thread Index  

[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?