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

RE: [reSIProcate] bug in Dialog.cxx?


I suspect this is the correct behavior.

An Out-of-Dialog (OOD) Refer with no subscription (ReferSub) is picked
off by DialogSet.cxx - so only OOD refers requiring subscriptions are
passed on to Dialog.cxx.  Such OOD refer requests do require a subscribe
dialog for Notify processing.

Scott

> -----Original Message-----
> From: resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx
> [mailto:resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of
> Byron Campen
> Sent: Tuesday, July 25, 2006 3:24 PM
> To: resiprocate-devel
> Subject: [reSIProcate] bug in Dialog.cxx?
> 
>       I noticed something that looks incorrect in Dialog.cxx around
> line 600.
> 
> *snip*
>                case REFER:
>              if(mInviteSession)
>              {
>                 mInviteSession->mSentRefer = false;
> 
>                 if (code >= 300)
>                 {
>                    mDum.mInviteSessionHandler->onReferRejected
> (mInviteSession->getSessionHandle(), msg);
>                 }
>                 else
>                 {
>                    //!dys! the OR condition below is not draft
> compliant.
>                    if (!mInviteSession->mReferSub &&
>                        ((msg.exists(h_ReferSub) && msg.header
> (h_ReferSub).value()=="false") ||
>                         !msg.exists(h_ReferSub)))
>                    {
>                       DebugLog(<< "refer accepted with norefersub");
>                       mDum.mInviteSessionHandler->onReferAccepted
> (mInviteSession->getSessionHandle(),
> ClientSubscriptionHandle::NotValid(), msg);
>                    }
>                    // else no need for action - first Notify will
cause
> onReferAccepted to be called
>                 }
>                 break;
>              }
>              // fall through, out of dialog refer was sent.
>           case SUBSCRIBE:
> 
> *snip*
> 
>       Something tells me that we don't really want to fall into case
> SUBSCRIBE here if mInviteSession is NULL.
> 
> Best regards,
> Byron Campen