asterisk/res
Kevin Harwell 49b7a1cbaf res_pjsip_exten_state: PJSIPShowSubscriptionsInbound causes crash
When using a non-default sorcery wizard (in this instance realtime) for
outbound registrations and after adding in an appropriate call to
ast_sorcery_apply_config() (since it is missing) Asterisk will crash after
a stack overflow occurs due to the code infinitely recursing.  The fix entails
removing the outbound registration state dependency from the outbound
registration sorcery object and instead keeping an in memory container that
can be used to lookup the state when needed.

ASTERISK-24514
Reported by: Mark Michelson
Review: https://reviewboard.asterisk.org/r/4164/
........

Merged revisions 427814 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 427815 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@427823 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-11-13 22:26:56 +00:00
..
ael core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
ari Stasis: Add information to blind transfer event 2014-08-20 13:06:33 +00:00
parking parking_tests: Fix assertions and possibly crashes in res_parking unit tests 2014-10-15 19:17:29 +00:00
res_pjsip res_pjsip: Ensure in-dialog responses have an endpoint associated. 2014-11-06 18:21:12 +00:00
snmp Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
stasis Stasis: Fix StasisEnd message ordering 2014-11-13 15:46:48 +00:00
stasis_recording ari: Add a copy operation for stored recordings 2014-07-18 21:48:46 +00:00
Makefile ARI: Implement /recordings/stored API's 2013-08-30 13:28:50 +00:00
ari.make ARI: Add mailboxes resource for controlling and polling external MWI 2014-01-14 23:44:57 +00:00
res_adsi.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ael_share.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ael_share.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_agi.c ASTERISK-24323, fix bug in documentation of AGI STREAM FILE CONTROL 2014-10-28 14:57:01 +00:00
res_agi.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_ari.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari.exports.in Rename everything Stasis-HTTP to ARI 2013-07-27 23:11:02 +00:00
res_ari_applications.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_asterisk.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_bridges.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_channels.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_device_states.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_endpoints.c Multiple revisions 420089-420090,420097 2014-08-05 21:44:09 +00:00
res_ari_events.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_mailboxes.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_model.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_model.exports.in Rename everything Stasis-HTTP to ARI 2013-07-27 23:11:02 +00:00
res_ari_playbacks.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_recordings.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_ari_sounds.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_calendar.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_calendar.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_calendar_caldav.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_calendar_ews.c res_calendar_ews: Relax neon version check to work with 0.30 too. 2014-10-12 07:47:52 +00:00
res_calendar_exchange.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_calendar_icalendar.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_chan_stats.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_clialiases.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_clioriginate.c media formats: re-architect handling of media for performance improvements 2014-07-20 22:06:33 +00:00
res_config_curl.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_config_ldap.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
res_config_odbc.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_config_pgsql.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_config_sqlite.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_config_sqlite3.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_convert.c Merged revisions 328247 via svnmerge from 2011-07-14 20:28:54 +00:00
res_corosync.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
res_crypto.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_crypto.exports.in Remove built-in AES code and use optional_api instead 2010-07-21 19:11:32 +00:00
res_curl.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_fax.c res_fax: Resolve T38 gateway frame leak. 2014-10-28 21:10:42 +00:00
res_fax.exports.in res_fax: Provide AMI equivalents for fax CLI commands 2014-07-18 15:49:46 +00:00
res_fax_spandsp.c res_fax_spandsp: Properly handle cleanup before starting FAXes. 2014-09-18 16:24:48 +00:00
res_format_attr_celt.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_format_attr_h263.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_format_attr_h264.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_format_attr_opus.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_format_attr_silk.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_hep.c res_hep: fix major leak that occurs when config is missing or enabled=no. 2014-11-06 09:24:26 +00:00
res_hep.exports.in res_hep/res_hep_pjsip: Add a HEPv3 capture agent module and a logger for PJSIP 2014-03-28 18:32:50 +00:00
res_hep_pjsip.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_hep_rtcp.c res/res_hep_rtcp: Remove dependency on PJSIP 2014-08-14 21:16:32 +00:00
res_http_post.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_http_websocket.c res_http_websockets: Fix extra unref of module 2014-11-04 19:33:21 +00:00
res_http_websocket.exports.in res_http_websocket: Export symbol for ast_websocket_set_timeout 2014-06-26 18:27:53 +00:00
res_jabber.exports.in Fix chan_jingle/gtalk load regression introduced in r346087 2011-12-05 14:47:11 +00:00
res_limit.c Doxygen Updates - Title update 2012-10-14 21:44:27 +00:00
res_manager_devicestate.c manager: Add state list commands 2014-07-30 18:32:25 +00:00
res_manager_presencestate.c manager: Add state list commands 2014-07-30 18:32:25 +00:00
res_monitor.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_monitor.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_musiconhold.c musiconhold: Add preferchannelclass=no option to prefer app class. 2014-09-25 20:49:04 +00:00
res_mutestream.c Fix dialplan function NULL channel safety issues 2014-03-27 19:21:44 +00:00
res_mwi_external.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_mwi_external.exports.in External MWI core support. 2014-01-06 17:45:25 +00:00
res_mwi_external_ami.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_odbc.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_odbc.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_parking.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_phoneprov.c res/res_phoneprov: Fix crash on shutdown caused by container cleanup 2014-10-27 02:27:56 +00:00
res_phoneprov.exports.in res_phoneprov: Refactor phoneprov to allow pluggable config providers 2014-10-09 17:46:23 +00:00
res_pjsip.c Make the disable_tcp_switch PJSIP system object enabled by default. 2014-11-05 19:53:29 +00:00
res_pjsip.exports.in res_pjsip: AMI commands and events. 2013-11-23 17:26:57 +00:00
res_pjsip_acl.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_authenticator_digest.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_caller_id.c res_pjsip: Add 'user_eq_phone' option to add a 'user=phone' parameter when applicable. 2014-10-17 11:30:23 +00:00
res_pjsip_dialog_info_body_generator.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_diversion.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_dtmf_info.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_endpoint_identifier_anonymous.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_endpoint_identifier_ip.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_endpoint_identifier_user.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_exten_state.c res_pjsip_exten_state: PJSIPShowSubscriptionsInbound causes crash 2014-10-30 21:14:01 +00:00
res_pjsip_exten_state.exports.in The large GULP->PJSIP renaming effort. 2013-07-30 18:14:50 +00:00
res_pjsip_header_funcs.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_keepalive.c res_pjsip_keepalive: Add runtime configurable keepalive module for connection-oriented transports. 2014-10-17 13:17:58 +00:00
res_pjsip_log_forwarder.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_pjsip_logger.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_messaging.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_multihomed.c res_pjsip_multihomed: Add logging during startup to aid debugging if local DNS is misbehaving. 2014-11-05 12:19:09 +00:00
res_pjsip_mwi.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_mwi_body_generator.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_nat.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_notify.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_one_touch_record_info.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_outbound_authenticator_digest.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_outbound_publish.c res_pjsip_outbound_publish: Add module which provides outbound PUBLISH support. 2014-08-07 14:35:09 +00:00
res_pjsip_outbound_publish.exports.in res_pjsip_outbound_publish: Add module which provides outbound PUBLISH support. 2014-08-07 14:35:09 +00:00
res_pjsip_outbound_registration.c res_pjsip_exten_state: PJSIPShowSubscriptionsInbound causes crash 2014-11-13 22:26:56 +00:00
res_pjsip_path.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_phoneprov_provider.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_pidf_body_generator.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_pidf_digium_body_supplement.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_pidf_eyebeam_body_supplement.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_publish_asterisk.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_pubsub.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_pubsub.exports.in res_pjsip_publish_asterisk: Add support for exchanging device and mailbox state using SIP. 2014-08-07 14:37:26 +00:00
res_pjsip_refer.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_registrar.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_registrar_expire.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_rfc3326.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_sdp_rtp.c chan_pjsip: Add support for passing hold and unhold requests through. 2014-11-03 14:45:01 +00:00
res_pjsip_send_to_voicemail.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_session.c res_pjsip_session/res_pjsip_sdp_rtp: Be more tolerant of offers 2014-10-17 13:35:44 +00:00
res_pjsip_session.exports.in chan_pjsip: Fix deadlock when masquerading PJSIP channels. 2014-10-03 17:47:42 +00:00
res_pjsip_t38.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_transport_websocket.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pjsip_xpidf_body_generator.c PJSIP: Enforce module load dependencies 2014-10-16 16:32:25 +00:00
res_pktccops.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
res_pktccops.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_realtime.c Cleanup references to sipusers and sipfriends dynamic realtime families 2011-11-01 19:53:26 +00:00
res_rtp_asterisk.c res_rtp_asterisk: Fix a bug where ICE state would get reset when it shouldn't. 2014-10-16 01:26:18 +00:00
res_rtp_multicast.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_security_log.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
res_smdi.c core: Don't allow free to mean ast_free (and malloc, etc..). 2014-09-26 14:41:38 +00:00
res_smdi.exports.in Allow symbol export filtering to work properly on platforms that have symbol prefixes. 2010-04-02 18:57:58 +00:00
res_snmp.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_sorcery_astdb.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_sorcery_config.c manager/config: Support templates and non-unique category names via AMI 2014-10-13 16:12:17 +00:00
res_sorcery_memory.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_sorcery_realtime.c manager/config: Support templates and non-unique category names via AMI 2014-10-13 16:12:17 +00:00
res_speech.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_speech.exports.in app_speech_utils: Fix unresolved symbol ast_speech_get_setting(). 2013-09-16 18:00:32 +00:00
res_srtp.c res/res_srtp: Fix include issue for libsrtp 1.5.0 2014-10-27 01:47:56 +00:00
res_srtp.exports.in Add SRTP support for Asterisk 2010-06-08 05:29:08 +00:00
res_stasis.c Stasis: Fix StasisEnd message ordering 2014-11-13 15:46:48 +00:00
res_stasis.exports.in Moved core logic from app_stasis to res_stasis 2013-04-15 16:43:47 +00:00
res_stasis_answer.c ARI: Fix a crash caused by hanging during playback to a channel in a bridge 2014-08-22 16:52:51 +00:00
res_stasis_answer.exports.in Add missing exports file 2013-05-20 14:21:39 +00:00
res_stasis_device_state.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_stasis_device_state.exports.in ARI: Implement device state API 2013-11-23 17:48:28 +00:00
res_stasis_mailbox.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_stasis_mailbox.exports.in ARI: Add mailboxes resource for controlling and polling external MWI 2014-01-14 23:44:57 +00:00
res_stasis_playback.c ARI: Fix a crash caused by hanging during playback to a channel in a bridge 2014-08-22 16:52:51 +00:00
res_stasis_playback.exports.in This patch implements the REST API's for POST /channels/{channelId}/play 2013-05-23 20:11:35 +00:00
res_stasis_recording.c ARI: Fix a crash caused by hanging during playback to a channel in a bridge 2014-08-22 16:52:51 +00:00
res_stasis_recording.exports.in ARI - channel recording support 2013-07-03 17:58:45 +00:00
res_stasis_snoop.c res_stasis_snoop.c: Fix off nominial exit path leaving Snoop channel locked and not hungup. 2014-08-12 23:36:37 +00:00
res_stasis_snoop.exports.in ari: Add Snoop operation for spying/whispering on channels. 2013-11-23 12:40:46 +00:00
res_stasis_test.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
res_stasis_test.exports.in Initial support for endpoints. 2013-05-08 13:39:08 +00:00
res_statsd.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_statsd.exports.in Example of how to use the Stasis message bus 2013-04-26 20:05:15 +00:00
res_stun_monitor.c Stasis: Allow message types to be blocked 2014-08-06 12:55:28 +00:00
res_timing_dahdi.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_timing_kqueue.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_timing_pthread.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_timing_timerfd.c Add module support level to ast_module_info structure. Print it in CLI "module show" . 2014-07-25 16:47:17 +00:00
res_xmpp.c AST-2014-011: Fix POODLE security issues 2014-10-20 14:20:15 +00:00
res_xmpp.exports.in Add a new unified Jingle, Google Jingle, and Google Talk channel driver written from scratch called chan_motif. 2012-07-07 17:06:51 +00:00