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

Re: [reSIProcate-users] Assert error when received the OPTIONS


Hi Scott, excuse me, can I expect the fix ? Or just simply to remove the assert to fix it ?

Best regards,

On Wed, Sep 10, 2014 at 9:43 PM, Herbert Karajan <boost.regex@xxxxxxxxx> wrote:
Yes, this is a in-dialog OPTIONS, the call-ID is same to the INVITE.

BR,

On Wed, Sep 10, 2014 at 9:41 PM, Scott Godin <sgodin@xxxxxxxxxxxxxxx> wrote:
Actually it appears that the OPTIONS requests are part of the INVITE session dialog.  That is causing the assert when the 2nd request is received within the same dialog:
            // only can be one ServerOutOfDialogReq at a time
            assert(mServerOutOfDialogRequest == 0);

Although I've never run across an implementation that send in-dialog OPTIONS - it does appear to be allowed by RFC3261:
   An OPTIONS request MAY be sent as part of an established dialog to
   query the peer on capabilities that may be utilized later in the
   dialog.

It appears you have uncovered a bug in resip that needs to be fixed.
Scott

On Wed, Sep 10, 2014 at 9:29 AM, Herbert Karajan <boost.regex@xxxxxxxxx> wrote:
Maybe this is the wrong ? I respond the OPTIONS request as below:

void UserAgent::onReceivedRequest(ServerOutOfDialogReqHandle h, const SipMessage& request)
{
if (request.method() == OPTIONS)
{
mDum->send(h->answerOptions());
                return;
}
}

On Wed, Sep 10, 2014 at 9:24 PM, Herbert Karajan <boost.regex@xxxxxxxxx> wrote:
If you read the log, you will see that the stack is responded first OPTIONS correct, just failed after received a few OPTIONS.

On Wed, Sep 10, 2014 at 9:23 PM, Herbert Karajan <boost.regex@xxxxxxxxx> wrote:
Hi Scott, I really did that, here is my code:

mDum->addOutOfDialogHandler(OPTIONS, this);

mMasterProfile->addSupportedMethod(OPTIONS);

mMasterProfile->addSupportedMimeType(OPTIONS, Mime("application", "sdp"));
mMasterProfile->addSupportedMimeType(OPTIONS, Mime("multipart", "mixed"));  
mMasterProfile->addSupportedMimeType(OPTIONS, Mime("multipart", "signed"));  
mMasterProfile->addSupportedMimeType(OPTIONS, Mime("multipart", "alternative"));  


On Wed, Sep 10, 2014 at 9:13 PM, Scott Godin <sgodin@xxxxxxxxxxxxxxx> wrote:

On Wed, Sep 10, 2014 at 12:58 AM, Herbert Karajan <boost.regex@xxxxxxxxx> wrote:
I'm develop an app call with 2N device, but got assert error when received OPTIONS from 2N:

Assertion failed: (mServerOutOfDialogRequest == 0), function dispatch, resiprocate-1.9.7/resip/dum/DialogSet.cxx, line 630.


Attached the log in email.


BR

_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
List Archive: http://list.resiprocate.org/archive/resiprocate-users/





_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
List Archive: http://list.resiprocate.org/archive/resiprocate-users/