Module: kamailio Branch: master Commit: 7aa8056a5e3a9804133cb9ff79640d8116be63da URL: https://github.com/kamailio/kamailio/commit/7aa8056a5e3a9804133cb9ff79640d81...
Author: Daniel-Constantin Mierla miconda@gmail.com Committer: Daniel-Constantin Mierla miconda@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/7aa8056a5e3a9804133cb9ff79640d81... Patch: https://github.com/kamailio/kamailio/commit/7aa8056a5e3a9804133cb9ff79640d81...
---
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++;