Files
asterisk/main
Richard Mudgett 3037924c69 CEL: Protect data structures during reload and shutdown.
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.

(closes issue AST-1253)
Reported by: Guenther Kelleter

Review: https://reviewboard.asterisk.org/r/3128/
........

Merged revisions 406417 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 406418 from http://svn.asterisk.org/svn/asterisk/branches/11


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@406465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-01-24 23:29:57 +00:00
..
2013-11-23 17:14:22 +00:00
2013-08-01 17:07:52 +00:00
2013-08-20 15:36:10 +00:00
2013-07-25 04:06:32 +00:00
2013-12-20 21:23:24 +00:00
2013-07-04 13:06:15 +00:00
2013-06-29 00:18:57 +00:00
2013-12-19 16:31:57 +00:00
2013-11-23 17:38:29 +00:00
2013-07-14 02:05:04 +00:00
2013-09-10 18:03:45 +00:00
2014-01-17 21:32:18 +00:00
2014-01-17 21:32:18 +00:00
2013-08-16 16:26:11 +00:00
2013-09-10 18:03:45 +00:00
2013-11-22 20:01:26 +00:00
2013-08-23 21:49:47 +00:00
2013-08-30 19:20:47 +00:00
2013-10-04 21:40:33 +00:00
2013-10-04 21:40:33 +00:00
2013-12-20 21:16:47 +00:00
2014-01-17 21:32:18 +00:00
2013-12-20 19:06:12 +00:00
2013-11-23 17:14:22 +00:00