asterisk/main
Joshua Colp 9fc2cc178a framehooks: Re-iterate if framehook provides different frame.
Framehooks can be used in a reactive manner to execute specific logic
when a frame is received with a certain type and payload. Since it is
possible for framehooks to provide frames it was possible for this
reactive framehook to be unaware of frames it is looking for.

This change makes it so that when framehooks return a modified frame
the code will now re-iterate (from the beginning) and call any
previous framehooks that have not provided a modified frame themselves.

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

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@404028 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-12-17 18:26:09 +00:00
..
editline memory leaks: Memory leak cleanup patch by Corey Farrell (first set) 2013-10-23 20:10:30 +00:00
stdtime Fix some uninitialized buffers for CDR handling valgrind found. 2013-08-28 23:15:43 +00:00
abstract_jb.c Fix jitter buffer log file creation 2013-09-18 20:04:14 +00:00
acl.c res_pjsip: AMI commands and events. 2013-11-23 17:26:57 +00:00
adsi.c Fix crash in unloading of res_adsi module 2012-06-26 13:23:12 +00:00
alaw.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
aoc.c Fix documentation replication issues 2013-08-01 17:07:52 +00:00
app.c test_voicemail_api: Add check for a registered voicemail provider before tests. 2013-12-13 00:40:49 +00:00
ast_expr2.c Allow the REALTIME() function to report errors back to the caller. 2012-07-11 17:16:50 +00:00
ast_expr2.fl Avoid cppcheck warnings; removing unused vars and a bit of cleanup. 2012-04-17 18:57:40 +00:00
ast_expr2.h Allow the REALTIME() function to report errors back to the caller. 2012-07-11 17:16:50 +00:00
ast_expr2.y Multiple revisions 360356-360357 2012-03-24 02:42:42 +00:00
ast_expr2f.c Doxygen Updates - janitor work 2012-09-21 17:14:59 +00:00
asterisk.c Changed the default for live_dangerously to no 2013-12-17 14:41:59 +00:00
asterisk.dynamics Remove the old stub files, preferring the optional_api method. 2010-07-14 20:48:59 +00:00
asterisk.exports.in Add _IO_stdin_used in version-script to fix SIGBUSes on Sparc. 2013-08-22 08:26:55 +00:00
astfd.c Unregister CLI commands on exit 2013-08-20 15:36:10 +00:00
astmm.c MALLOC_DEBUG: Change fence magic number to be completely different from the freed magic number. 2013-09-09 23:29:44 +00:00
astobj2.c astobj2: Unregister debug CLI commands at exit 2013-10-24 19:31:23 +00:00
audiohook.c ari: Add Snoop operation for spying/whispering on channels. 2013-11-23 12:40:46 +00:00
autochan.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
autoservice.c Don't leak frames when memory is full in autoservice_run. 2013-08-09 20:29:09 +00:00
backtrace.c Fix memory corruption when trying to get "core show locks". 2013-08-23 18:07:40 +00:00
bridge.c transfers: Fix bug setting both BLINDTRANSFER and ATTENDEDTRANSFER 2013-12-16 18:31:12 +00:00
bridge_after.c A great big renaming patch 2013-07-25 04:06:32 +00:00
bridge_basic.c Transfers: Make Asterisk set ATTENDEDTRANSFER/BLINDTRANSFER more reliably 2013-12-13 20:13:22 +00:00
bridge_channel.c Reverting r403311. It's causing ARI tests to hang. 2013-12-05 22:10:20 +00:00
bridge_roles.c ARI: bridges/{bridgeID}/addChannel: add roles parameter 2013-08-05 16:59:13 +00:00
bucket.c sorcery, bucket: Change observer remove calls to take const callbacks struct. 2013-12-03 17:35:54 +00:00
buildinfo.c fix a few small things found by using sparse 2008-10-30 16:49:02 +00:00
callerid.c Allow for redirecting reasons to be set to arbitrary strings. 2012-09-25 19:29:14 +00:00
ccss.c Cache string values of formats on ast_format_cap() to save processing. 2013-10-03 14:58:16 +00:00
cdr.c Filter out internal channels from dial message handling 2013-10-27 23:22:51 +00:00
cel.c Reverting r403311. It's causing ARI tests to hang. 2013-12-05 22:10:20 +00:00
channel.c bridge_native_rtp: Deadlock during 4-way conference creation 2013-12-13 18:33:25 +00:00
channel_internal_api.c Remove publication of a channel snapshot when the technology is set 2013-10-03 21:46:07 +00:00
chanvars.c ast_free() is null tollerant. 2013-08-28 16:09:12 +00:00
cli.c Resolve some memory leaks due to incorrect for loop / ao2 ref usage. 2013-10-18 18:44:21 +00:00
config.c config: Allow ConfBridge DTMF menus to have '#' as the first digit. 2013-11-02 01:15:11 +00:00
config_options.c Ensure global types in the config framework are initialized 2013-09-20 22:44:11 +00:00
core_local.c Reverting r403311. It's causing ARI tests to hang. 2013-12-05 22:10:20 +00:00
core_unreal.c Reverting r403311. It's causing ARI tests to hang. 2013-12-05 22:10:20 +00:00
crypt.c Fix utils directory breakage. 2013-07-04 13:06:15 +00:00
cygload.c Kill off red blobs in most of main/* 2012-03-22 19:51:16 +00:00
data.c memory leaks: Memory leak cleanup patch by Corey Farrell (second set) 2013-10-24 17:00:27 +00:00
datastore.c This is no longer needed. 2013-06-29 00:18:57 +00:00
db.c Doxygen comment tweaks. 2013-08-16 17:33:21 +00:00
devicestate.c ARI: Implement device state API 2013-11-23 17:48:28 +00:00
dial.c res_stasis: Expose event for call forwarding and follow forwarded channel. 2013-12-14 17:19:41 +00:00
dns.c Remove redundant code in dns.c 2013-07-14 02:05:04 +00:00
dnsmgr.c Migrate a large number of AMI events over to Stasis-Core 2013-05-24 20:44:07 +00:00
dsp.c Doxygen Updates - Title update 2012-10-18 14:17:40 +00:00
ecdisa.h Kill off red blobs in most of main/* 2012-03-22 19:51:16 +00:00
endpoints.c endpoints: Keep a reference to channel ids when creating snapshot. 2013-12-09 18:32:02 +00:00
enum.c Migrate a large number of AMI events over to Stasis-Core 2013-05-24 20:44:07 +00:00
event.c Fix incorrect usages of ast_realloc(). 2013-09-10 18:05:47 +00:00
features.c Restore Dial, Queue, and FollowMe 'I' option support. 2013-09-13 22:19:23 +00:00
features_config.c Features: Rearm the parking config options have moved warning for each reload. 2013-10-01 16:44:22 +00:00
file.c Cache string values of formats on ast_format_cap() to save processing. 2013-10-03 14:58:16 +00:00
fixedjitterbuf.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
fixedjitterbuf.h Kill off red blobs in most of main/* 2012-03-22 19:51:16 +00:00
format.c Add pass through support for Opus and VP8; Opus format attribute negotiation 2013-08-23 15:42:27 +00:00
format_cap.c Cache string values of formats on ast_format_cap() to save processing. 2013-10-03 14:58:16 +00:00
format_pref.c Address uninitialized conditional that valgrind found 2013-03-27 19:52:19 +00:00
frame.c Add pass through support for Opus and VP8; Opus format attribute negotiation 2013-08-23 15:42:27 +00:00
framehook.c framehooks: Re-iterate if framehook provides different frame. 2013-12-17 18:26:09 +00:00
fskmodem.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
fskmodem_float.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
fskmodem_int.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
global_datastores.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
hashtab.c Fix utilities compilation/linking. 2013-08-16 16:26:11 +00:00
heap.c Fix incorrect usages of ast_realloc(). 2013-09-10 18:05:47 +00:00
http.c ARI: Allow specifying channel variables during a POST /channels 2013-12-13 17:19:23 +00:00
image.c Reset automerge property. 2012-12-11 22:25:21 +00:00
indications.c Fix incorrect usages of ast_realloc(). 2013-09-10 18:05:47 +00:00
io.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
jitterbuf.c jitterbuf: Fix memory leak on jitter buffer reset 2013-10-24 19:42:21 +00:00
json.c ARI: Don't leak implementation details 2013-11-22 20:10:46 +00:00
libasteriskssl.c Resolve memory leaks in TLS initialization and TLS client connections 2012-09-14 19:53:43 +00:00
libasteriskssl.exports.in Address OpenSSL initialization issues when using third-party libraries. 2012-01-30 21:21:16 +00:00
loader.c core/loader: Don't call dlclose in a while loop 2013-10-31 16:06:14 +00:00
lock.c Fix DEBUG_THREADS when lock is acquired in __constructor__ 2013-09-09 20:13:40 +00:00
logger.c Logging: Logging types ignored after specifying a verbose level 2013-10-24 21:06:14 +00:00
Makefile Add the bucket API. 2013-08-23 21:49:47 +00:00
manager.c security_events: Push out security events over AMI events 2013-11-08 19:33:48 +00:00
manager_bridges.c Manager: Add equivalent AMI actions for the bridge CLI commands. 2013-11-01 21:51:20 +00:00
manager_channels.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
manager_endpoints.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
manager_mwi.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
manager_system.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
md5.c md5: supress some compiler warnings. 2012-04-28 01:33:49 +00:00
media_index.c media_index: Make media indexing tolerable of bad symlinks. 2013-12-03 16:39:13 +00:00
message.c documentation: Add PJSIP technology to messaging documentation 2013-12-13 21:35:50 +00:00
mixmonitor.c Removed quotes from svn:keywords props on a few files. 2013-07-29 17:51:25 +00:00
named_acl.c Fix various memory leaks 2013-08-30 19:22:59 +00:00
netsock.c Add IPv6 Support To chan_iax2 2013-10-04 21:41:58 +00:00
netsock2.c Add IPv6 Support To chan_iax2 2013-10-04 21:41:58 +00:00
optional_api.c optional_api: Make always use the standard malloc functions even with MALLOC_DEBUG. 2013-09-19 23:20:43 +00:00
parking.c astobj2: Add warn unused attribute to some functions. 2013-09-06 19:26:48 +00:00
pbx.c security: Inhibit execution of privilege escalating functions 2013-12-16 19:11:51 +00:00
pickup.c Reverting r403311. It's causing ARI tests to hang. 2013-12-05 22:10:20 +00:00
plc.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
poll.c Merged revisions 285268 via svnmerge from 2010-09-07 19:09:08 +00:00
presencestate.c Strip down the old event system 2013-08-17 14:39:27 +00:00
privacy.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
rtp_engine.c ARI: Don't leak implementation details 2013-11-22 20:10:46 +00:00
say.c Add SayAlphaCase and similar functionality for AGI 2013-08-22 22:33:48 +00:00
sched.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
sdp_srtp.c Merge in current pimp_my_sip work, including: 2013-06-22 14:03:22 +00:00
security_events.c security_events: Push out security events over AMI events 2013-11-08 19:33:48 +00:00
sem.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
sha1.c Doxygen Updates - janitor work 2012-09-21 17:14:59 +00:00
sip_api.c Don't make chan_sip export global symbols. 2012-10-11 15:49:02 +00:00
slinfactory.c Fix a memory copying bug in slinfactory which was causing mixmonitor issues. 2013-05-28 17:47:29 +00:00
sorcery.c func_pjsip_endpoint: Add PJSIP_ENDPOINT function for querying endpoint details 2013-12-11 12:31:57 +00:00
sounds_index.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
srv.c Removed #if checks for crazy old versions of OS X. 2013-05-08 20:25:28 +00:00
stasis.c vector: Uppercase API to follow C convention. 2013-11-02 04:30:49 +00:00
stasis_bridges.c Reverting r403311. It's causing ARI tests to hang. 2013-12-05 22:10:20 +00:00
stasis_cache.c MALLOC_DEBUG: Fix some misuses of free() when MALLOC_DEBUG is enabled. 2013-10-02 17:12:49 +00:00
stasis_cache_pattern.c Multiple revisions 399887,400138,400178,400180-400181 2013-09-30 18:55:27 +00:00
stasis_channels.c res_stasis: Expose event for call forwarding and follow forwarded channel. 2013-12-14 17:19:41 +00:00
stasis_endpoints.c ARI: Don't leak implementation details 2013-11-22 20:10:46 +00:00
stasis_message.c ARI: Don't leak implementation details 2013-11-22 20:10:46 +00:00
stasis_message_router.c vector: Uppercase API to follow C convention. 2013-11-02 04:30:49 +00:00
stasis_system.c Convert CCSS manager events to stasis. 2013-07-19 18:00:35 +00:00
strcompat.c Add builtin roundf() for systems lacking it. 2013-01-19 20:54:07 +00:00
strings.c Move ast_str_container_alloc and friends 2013-08-02 14:08:34 +00:00
stun.c Reset automerge property. 2012-12-11 22:25:21 +00:00
syslog.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
taskprocessor.c taskprocessor: Made use pthread_equal() to compare thread ids. 2013-10-25 23:58:32 +00:00
tcptls.c security: Inhibit execution of privilege escalating functions 2013-12-16 19:11:51 +00:00
tdd.c Doxygen Updates - janitor work 2012-09-21 17:14:59 +00:00
term.c Revamp of terminal color codes 2013-02-14 18:47:56 +00:00
test.c test.c: Fix too sticky unit test failed status. 2013-12-13 20:17:22 +00:00
threadpool.c Fix threadpool rapid growth problem. 2013-06-20 16:29:35 +00:00
threadstorage.c Unregister CLI commands on exit 2013-08-20 15:36:10 +00:00
timing.c Reset automerge property. 2012-12-11 22:25:21 +00:00
translate.c translate: Move freeing of frame to after it is used. 2013-11-22 17:12:29 +00:00
udptl.c astobj2: Add warn unused attribute to some functions. 2013-09-06 19:26:48 +00:00
ulaw.c Multiple revisions 369001-369002 2012-06-15 16:20:16 +00:00
utils.c res_pjsip: AMI commands and events. 2013-11-23 17:26:57 +00:00
uuid.c Add an \extref doxygen pointer for libuuid. 2013-04-26 20:32:11 +00:00
xml.c Detect and use xsltCleanupGlobals when available 2013-10-03 18:00:15 +00:00
xmldoc.c func_channel, chan_pjsip: Add CHANNEL read function support for chan_pjsip 2013-12-11 13:06:30 +00:00