Re: [reSIProcate] Rejecting media negotiation in case of SDP-less reInvite
On 2011 September 16, Friday 11:56:59 Robert Szokovacs wrote:
> On 2011 September 15, Thursday 19:50:53 you wrote:
>
> Hi,
>
> Thanks for the answer.
>
> > I just tested what I think should produce the sequence you mention
> > (albeit I had reSIProcate on both sides) with the current mainline of
> > the code.
> >
> > When I call reject(code), the INVITE transaction is completed (an ACK
> > with no SDP is sent) then a BYE with the reason "Illegal Sdp
> > Negotiation" gets sent to B.
> >
> > This behavior is found in ClientInviteSession:reject(...):
> >
> > case UAC_Answered:{
> >
> > // We received an offer in a 2xx response, and we want to reject
> >
> > it // ACK with no body, then send bye
> >
> > sendAck();
> > SharedPtr<SipMessage> msg = sendBye();
> > transition(Terminated);
> > mDum.mInviteSessionHandler->onTerminated(getSessionHandle(),
> >
> > InviteSessionHandler::LocalBye, msg.get());
> >
> > break;
> >
> > }
> >
> > Could you retest with the latest release (1.7) and/or the mainline? It
> > should be working.
>
> It will take some time unfortunately, but yes, I will check it.
>
> However, as I look at the code in 1.7, I can't find similar mechanism in
> ServerInviteSession::reject and if you reverse the roles (as in my case it
> was), I expect you will see similar assert too.
Also, I forgot to mention that the actual scenario I encountered was reInvite,
so the state of the leg was SentReinviteAnswered, not UAC_Answered
br
Szo