asterisk/apps
George Joseph 0001834157 app_confbridge: Fix reference to cfg in menu_template_handler
menu_template_handler wasn't properly accounting for the fact that
it might be called both during a load/reload (which isn't really
valid but not prevented) and by a dialplan function.  In both cases
it was attempting to use the "pending" config which wasn't valid in
the latter case.  aco_process_config is also partly to blame because
it wasn't properly cleaning "pending" up when a reload was done and
no changes were made.  Both of these contributed to a crash if
CONFBRIDGE(menu,template) was called in a dialplan after a reload.

* aco_process_config now sets info->internal->pending to NULL
  after it unrefs it although this isn't strictly necessary in the
  context of this fix.
* menu_template_handler now uses the "current" config and silently
  ignores any attempt to be called as a result of someone uses the
  "template" parameter in the conf file.

Luckily there's no other place in the codebase where
aco_pending_config is used outside of aco_process_config.

ASTERISK-25506 #close
Reported-by: Frederic LE FOLL

Change-Id: Ib349a17d3d088f092480b19addd7122fcaac21a7
2017-05-04 20:13:55 -05:00
..
confbridge app_confbridge: Fix reference to cfg in menu_template_handler 2017-05-04 20:13:55 -05:00
Makefile Build System: Create Makefile macro MOD_ADD_SOURCE. 2015-04-14 12:53:03 -04:00
app_adsiprog.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_agent_pool.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_alarmreceiver.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_amd.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_authenticate.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_bridgeaddchan.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_bridgewait.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_cdr.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_celgenuserevent.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_chanisavail.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_channelredirect.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_chanspy.c autochan/mixmonitor/chanspy: Fix unsafe channel locking and references. 2017-03-15 17:18:55 -06:00
app_confbridge.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_controlplayback.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_dahdiras.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_db.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_dial.c channel: Add ability to request an outgoing channel with stream topology. 2017-04-27 10:39:46 +00:00
app_dictate.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_directed_pickup.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_directory.c realtime: Fix ast_load_realtime_multientry handling 2017-02-21 13:06:29 -06:00
app_disa.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_dumpchan.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_echo.c apps/app_echo: Only relay a single video source change frame 2016-11-14 17:03:32 -05:00
app_exec.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_externalivr.c Implement internal abstraction for iostreams 2016-11-15 22:25:14 +02:00
app_fax.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_festival.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_flash.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_followme.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_forkcdr.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_getcpeid.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_ices.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_image.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_ivrdemo.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_jack.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_macro.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_meetme.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_milliwatt.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_minivm.c cleanup: Fix fread() and fwrite() error handling 2017-04-25 16:24:15 -05:00
app_mixmonitor.c autochan/mixmonitor/chanspy: Fix unsafe channel locking and references. 2017-03-15 17:18:55 -06:00
app_morsecode.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_mp3.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_nbscat.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_originate.c manager: Restore Originate failure behavior from Asterisk 11 2017-02-10 18:04:41 -05:00
app_osplookup.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_page.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_playback.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_playtones.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_privacy.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_queue.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
app_read.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_readexten.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_record.c app_record: Add option to prevent silence from being truncated 2017-02-14 09:35:18 -05:00
app_saycounted.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_sayunixtime.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_senddtmf.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_sendtext.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_setcallerid.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_skel.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_sms.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_softhangup.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_speech_utils.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_stack.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_stasis.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_statsd.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_system.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_talkdetect.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_test.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_transfer.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_url.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_userevent.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_verbose.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_voicemail.c cleanup: Fix fread() and fwrite() error handling 2017-04-25 16:24:15 -05:00
app_voicemail.exports.in Remove some symbol exports that got missed in the removal of global symbols. 2012-06-15 15:33:41 +00:00
app_waitforring.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_waitforsilence.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_waituntil.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_while.c Remove ASTERISK_REGISTER_FILE. 2016-10-27 09:53:55 -04:00
app_zapateller.c modules: change module LOAD_FAILUREs to LOAD_DECLINES 2017-04-12 15:57:21 -06:00
enter.h remove extraneous svn:executable properties 2005-11-29 18:24:39 +00:00
leave.h remove extraneous svn:executable properties 2005-11-29 18:24:39 +00:00