Module: kamailio
Branch: master
Commit: 7aa8056a5e3a9804133cb9ff79640d8116be63da
URL:
https://github.com/kamailio/kamailio/commit/7aa8056a5e3a9804133cb9ff79640d8…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2021-05-06T12:27:05+02:00
dialog: ignore 408 on keepalive with cseq 0
- some UAs do not reply at all
---
Modified: src/modules/dialog/dlg_req_within.c
---
Diff:
https://github.com/kamailio/kamailio/commit/7aa8056a5e3a9804133cb9ff79640d8…
Patch:
https://github.com/kamailio/kamailio/commit/7aa8056a5e3a9804133cb9ff79640d8…
---
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++;