#97 Dialog termination with BYE w/o OK

closed
nobody
modules (91)
5
2012-07-02
2012-06-26
Anonymous
No

Example scenario:

UA1 - SIP-proxy - Opensips - UA2

Opensips acts as simple forwarder of requests/replies with dialog creation and topology hiding.
Sip-proxy do the authentication and registration of UAs.

UA1 initiate a session. -> .... -> session established
Now UA2 wants to leave the session and send BYE w/o auth header (cause it's first request from UA2)
Opensips sees this BYE, forward this in dialog request and terminate the dialog.
But SIP-proxy does not see auth header and respond with 407 error, this reply gets to UA2. UA2 resend BYE with auth header but Opensips can't forward it correctly because has no dialog for this request.
Result: Session hangs on UA1.

It seems to me that Opensips must terminate Dialog on timeout (i.e. one side hangs) or when OK reply is received.

Any ideas?

Regards,
Alexander

Discussion

  • Vladut-Stefan Paiu

    • status: open --> closed
     
  • Vladut-Stefan Paiu

    Hello,

    This can be handled from your OpenSIPS script.
    If you know your topology requires the authentication of sequential requests, then do that on the OpenSIPS side.
    The code would be something like :

    if (has_totag()) {
    if (!proxy_authorize("", "subscriber")) {
    proxy_challenge("", "0");
    exit;
    }

    # do not consume credentials, so they can reach Proxy
    loose_route()
    }

    Regards,
    Vlad

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks