[sr-dev] dlg_isflagset not working on CANCEL request

David Escartín descartin at sonoc.io
Mon Apr 11 15:55:31 CEST 2022


hello all

Using kamailio 5.4 version, we have seen that dlg_isflagset is not
detecting a dialog flag set in the request route for the initial INVITE,
when a CANCEL request arrives.
We have applied this change to set the dialog context unique ide for this
request. Since it's done on dlg_onreply, dlg_onroute and dlg_ontimeout
functions. This way, dlg_get_by_iuid(&dctx->iuid) in the
function ki_dlg_isflagset is not NULL and dialog flags are detected.
Is this change correct? Or can it generate any kind of issues?

diff --git a/src/modules/dialog/dlg_handlers.c
b/src/modules/dialog/dlg_handlers.c
index 3f8adefb79..f1df4a76c5 100644
--- a/src/modules/dialog/dlg_handlers.c
+++ b/src/modules/dialog/dlg_handlers.c
@@ -1255,6 +1255,9 @@ dlg_cell_t *dlg_lookup_msg_dialog(sip_msg_t *msg,
unsigned int *dir)
                                msg->callid->body.len, msg->callid->body.s);
                return NULL;
        }
+        if(msg->first_line.u.request.method_value == METHOD_CANCEL) {
+                dlg_set_ctx_iuid(dlg);
+        }
        if(dir) *dir = vdir;
        return dlg;
 }

thanks a lot and regards
David


-- 
<http://www.sonoc.io/>
David Escartín
NOC engineer
*www.sonoc.io* <http://www.sonoc.io/>
[image: LinkedIn] <https://www.linkedin.com/company/sonoc>
[image: Twitter] <https://twitter.com/sonoc_>
[image: Facebook] <https://www.facebook.com/SONOCio/>
This e-mail is for the exclusive use of its recipients and may contain
business secrets or other confidential or privileged information. Any
unauthorised use, copying, publication or distribution of this e-mail is
strictly prohibited. If you are not the intended recipient, please inform
us immediately by replying to this e-mail and delete it, including any
attachments or copies on your system.

In accordance with the GDPR (EU) 2016/679 and the LOPDGDD 3/2018, we inform
you that this e-mail address and/or any other personal data you have
provided us with will be treated by SONOC with absolute confidentiality and
with the only purpose of providing you with the requested services, due to
your condition as a client, supplier or because you have requested
information from us at any time. These data will only be kept for as long
as required to comply with legal obligations. You can exercise your rights
at any time by sending an e-mail to: *dataprotection at sonoc.io*
<dataprotection at sonoc.io>*.* <dataprotection at sonoc.io>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-dev/attachments/20220411/05753036/attachment.htm>


More information about the sr-dev mailing list