RE: [reSIProcate] DUM: Cancelling client session in initial state
Derek,
Can you clarify why DUM change branch of CANCEL and
ACK message? Thanks.
kaiduan
--- Derek MacDonald <derek@xxxxxxxx> wrote:
> DialogUsageManager::send modifies the sip message
> in-place, so the CANCEL
> transaction id does match. Dmitry's reference vs
> copy explains you
> behaviour.
> >
> > I thought the reason was:
> >
> > In DialogUsageManager::send()
> >
> > if (msg.header(h_RequestLine).method() !=
> CANCEL &&
> > msg.header(h_RequestLine).method() != ACK
> &&
> > msg.exists(h_Vias))
> > {
> >
> >
> msg.header(h_Vias).front().param(p_branch).reset();
> > ^^^^^^^
> > }
> >
> > For example, if the initial DUM created INVITE's
> > branch is BranchA, after this function, the branch
> is
> > changed to BranchB and passed to transaction
> layer. In
> > transaction layer, the transaction ID is BranchB.
> But
> > for CANCEL message created in DUM, the branch is
> still
> > BranchA. So transaction layer cannot find the
> > corresponding INVITE transaciton!!!
> >
> > Can anyone explain why the branch parameter is
> reset
> > here? Thanks,
> >
> > kaiduan
> >
> >
> > --- Dmitry Semyonov <dsemyonov@xxxxxxx> wrote:
> > > On Fri, 5 Nov 2004, Dmitry Semyonov wrote:
> > >
> > > > DUM does not send CANCEL request when I call
> end()
> > > method of
> > > > ClientInviteSessionHandle. Also note the empty
> > > Contact AOR of the
> > > > scheduled CANCEL request. I use r3433 based
> > > reSIProcate, and
> > > > process(fdset).
> > > [...]
> > >
> > > Well the described behavior was caused by using
> > > SipMessage instance
> > > instead of reference to it:
> > >
> > > < SipMessage is_msg =
> > > m_pDum->makeInviteSession( dstAor, FromAddr,
> > > ---
> > > > // Warning! Using SipMessage instead
> of
> > > SipMessage& here will result
> > > > // in wrong transaction Id!
> > > > SipMessage &is_msg =
> > > m_pDum->makeInviteSession( dstAor, FromAddr,
> > >
> > > --
> > > ...Bye..Dmitry.
> > > _______________________________________________
> > > resiprocate-devel mailing list
> > > resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> > >
> >
>
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel
> > >
> >
> >
>
______________________________________________________________________
> > Post your free ad now! http://personals.yahoo.ca
> > _______________________________________________
> > resiprocate-devel mailing list
> > resiprocate-devel@xxxxxxxxxxxxxxxxxxx
> >
>
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel
>
>
>
______________________________________________________________________
Post your free ad now! http://personals.yahoo.ca