- release the dialog reference even for aar updates as the dialog was already referenced when issuing the aar request
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3104
-- Commit Summary --
* rx_aar: unreference dialog in case of aar update
-- File Changes --
M src/modules/ims_qos/rx_aar.c (3)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3104.patch https://github.com/kamailio/kamailio/pull/3104.diff
@atanasdb pushed 1 commit.
39286f99964f601ee2006a35fb8951b20fb9d531 rx_aar: unreference dialog in case of aar update
If we have multiple Rx_AAR in the script (e.g. for 183, then for UPDATEs) since the second AAR is considered an update, without that patch, the dialog is not unreferenced. That leads to dialog not being deleted since there is a dangling reference which leads to memory leak.
I confirm the PR broke the dialog as commented by @atanas-wg2
The commit message has to start with the component name, not with the file name, respectively ims_qos in this case.
@alexyosifov: is it something that you can check if it is ok?
Merged #3104 into master.
@atanas-wg2 @miconda I have checked locally the changes. The P-CSCF doesn't start correctly if trying to load the ims_qos module: `0(15988) DEBUG: <core> [core/sr_module.c:563]: load_module(): trying to load </usr/local/lib64/kamailio/modules/ims_qos.so>` `0(15988) ERROR: <core> [core/sr_module.c:570]: load_module(): could not open module </usr/local/lib64/kamailio/modules/ims_qos.so>: /usr/local/lib64/kamailio/modules/ims_qos.so: undefined symbol: unref_dlg` `0(15988) CRITICAL: <core> [core/cfg.y:3796]: yyerror_at(): parse error in config file /etc/kamailio_pcscf/kamailio.cfg, line 239, column 12-20: failed to load module`
Because of the following warning during compilation: `Warning: rx_aar.c:184:13: warning: implicit declaration of function 'unref_dlg'; did you mean 'unref_cell'? [-Wimplicit-function-declaration] 184 | unref_dlg(data->dlg, 1); | ^~~~~~~~~ `
ops sorry. @alexyosifov seems that include was missing: https://github.com/kamailio/kamailio/pull/3127