-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3128/
-----------------------------------------------------------

(Updated Jan. 24, 2014, 5:30 p.m.)


Status
------

This change has been marked as submitted.


Review request for Asterisk Developers.


Bugs: AST-1253
    https://issues.asterisk.org/jira/browse/AST-1253


Repository: Asterisk


Description
-------

This is the Asterisk v12 version of the 
https://reviewboard.asterisk.org/r/3127/ review.

The CEL data structures need to be protected during a configuration reload and 
shutdown.  Asterisk crashed during a shutdown because CEL events were still in 
flight and the CEL data structures were already destroyed.

* Protected the cel_backends, cel_dialstatus_store, and cel_linkedids ao2 
containers with a global ao2 object wrapper.

* Added NULL checks before use of the cel_backends, cel_dialstatus_store, and 
cel_linkedids ao2 containers in case the CEL module is already shutdown.

* Fixed overloading of the cel_linkedids held objects reference count.  During 
shutdown any held objects would be leaked.

* Fixed memory leak of cel_linkedids held objects if the LINKEDID_END is not 
being tracked.  The objects in the cel_linkedids container were not removed if 
the LINKEDID_END event is not used.

* Added access protection to the cel_backends container during the CLI "cel 
show status" command.

* Made cel_backends, cel_dialstatus_store, and cel_linkedids use the standard 
ao2 callback templates for the hash and cmp functions.

* Eliminated unnecessary uses of RAII_VAR().

* Made ast_cel_engine_init() cleanup alocated resources on failure.


Diffs
-----

  /branches/12/main/cel.c 405542 

Diff: https://reviewboard.asterisk.org/r/3128/diff/


Testing
-------

* Checked CLI "cel show status" output was as expected.
* Checked CEL logs for APP_START/APP_END/LINKEDID_END events after a call.
* Shutdown asterisk with "core stop now" and "core stop gracefully" without any 
crashes.


Thanks,

rmudgett

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to