Hello,
thanks for the message. Please open a pull request against git master branch for easier review and possible discussion on our github tracker.
Cheers,
Henning
--
Henning Westerholt –
https://skalatan.de/blog/
Kamailio services –
https://gilawa.com
From: sr-dev <sr-dev-bounces@lists.kamailio.org>
On Behalf Of David Escartín
Sent: Monday, April 11, 2022 3:56 PM
To: Kamailio (SER) - Development Mailing List <sr-dev@lists.kamailio.org>; Javier Gallart <jgallart@sonoc.io>; Vicente Hernando <vhernando@sonoc.io>
Subject: [sr-dev] dlg_isflagset not working on CANCEL request
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
--
|
||||||||||||||||||||
|