Module: kamailio
Branch: 5.5
Commit: 6d71c9399027f2ed41cd6eae576d862440bd4fd4
URL:
https://github.com/kamailio/kamailio/commit/6d71c9399027f2ed41cd6eae576d862…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2021-05-12T16:07:05+02:00
dialog: ignore 408 on keepalive with cseq 0
- some UAs do not reply at all
(cherry picked from commit 7aa8056a5e3a9804133cb9ff79640d8116be63da)
---
Modified: src/modules/dialog/dlg_req_within.c
---
Diff:
https://github.com/kamailio/kamailio/commit/6d71c9399027f2ed41cd6eae576d862…
Patch:
https://github.com/kamailio/kamailio/commit/6d71c9399027f2ed41cd6eae576d862…
---
diff --git a/src/modules/dialog/dlg_req_within.c b/src/modules/dialog/dlg_req_within.c
index d48d139965..809834527f 100644
--- a/src/modules/dialog/dlg_req_within.c
+++ b/src/modules/dialog/dlg_req_within.c
@@ -271,6 +271,12 @@ void dlg_ka_cb_all(struct cell* t, int type, struct tmcb_params* ps,
int dir)
LM_DBG("skip updating non-confirmed dialogs\n");
goto done;
}
+ if(ps->code==408 && (dlg->cseq[dir].len==0
+ || (dlg->cseq[dir].len==1 && dlg->cseq[dir].s[0]=='\0'))) {
+ LM_DBG("ignore 408 for %s cseq 0\n",
+ ((dir==DLG_CALLER_LEG)?"caller":"callee"));
+ goto done;
+ }
tend = 0;
if(dir==DLG_CALLER_LEG) {
dlg->ka_src_counter++;