[OpenSIPS-Devel] [OpenSIPS/opensips] 6eb14f: acc: Do not dereference NULL dialog contexts
Liviu Chircu
liviu at opensips.org
Mon Nov 19 10:28:46 EST 2018
Branch: refs/heads/master
Home: https://github.com/OpenSIPS/opensips
Commit: 6eb14f6a3d23bb6a646aa414907755ea9b381511
https://github.com/OpenSIPS/opensips/commit/6eb14f6a3d23bb6a646aa414907755ea9b381511
Author: Liviu Chircu <liviu at opensips.org>
Date: 2018-11-19 (Mon, 19 Nov 2018)
Changed paths:
M modules/acc/acc_logic.c
Log Message:
-----------
acc: Do not dereference NULL dialog contexts
This bug could be triggered in failover scenarios, where the accounting
context would be created and cleaned up at least once before actually
calling do_accounting(). One way to trigger it would be:
* create_dialog();
* $acc_extra(foo) = "bar"; # create a dialog-stored acc context
* t_relay(); exit; # msg is relayed, but ctx is unused =>
the code frees it and leaves a NULL dialog value marker.
* inside failure_route, do: $acc_extra(foo) = "bar". We fetch the
NULL context stored inside dialog, dereference it and crash.
Many thanks to 46Labs for reporting this issue, as well as providing
extensive troubleshooting information.
**NOTE:** This service has been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/
Functionality will be removed from GitHub.com on January 31st, 2019.
More information about the Devel
mailing list