Module: kamailio Branch: master Commit: 04410aef38f5ed40c8f4a6796d95658407e1597c URL: https://github.com/kamailio/kamailio/commit/04410aef38f5ed40c8f4a6796d956584...
Author: Daniel-Constantin Mierla miconda@gmail.com Committer: Daniel-Constantin Mierla miconda@gmail.com Date: 2015-05-07T13:24:21+02:00
dialog: check if dialog is still in confirmed state when processing keepalive reply
---
Modified: modules/dialog/dlg_req_within.c
---
Diff: https://github.com/kamailio/kamailio/commit/04410aef38f5ed40c8f4a6796d956584... Patch: https://github.com/kamailio/kamailio/commit/04410aef38f5ed40c8f4a6796d956584...
---
diff --git a/modules/dialog/dlg_req_within.c b/modules/dialog/dlg_req_within.c index 9473938..f862ab2 100644 --- a/modules/dialog/dlg_req_within.c +++ b/modules/dialog/dlg_req_within.c @@ -264,6 +264,10 @@ void dlg_ka_cb(struct cell* t, int type, struct tmcb_params* ps){ }
if(ps->code==408 || ps->code==481) { + if (dlg->state != DLG_STATE_CONFIRMED) { + LM_DBG("skip updating non-confirmed dialogs\n"); + goto done; + } if(update_dlg_timer(&dlg->tl, 10)<0) { LM_ERR("failed to update dialog lifetime\n"); goto done;