summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-12-18Merge "chan_sip: Add security event for calls to invalid extension." into 13Jenkins2
2017-12-18Merge "cdr: Minor optimizations." into 13Jenkins2
2017-12-18Merge "loader: Rework of load_dynamic_module." into 13George Joseph
2017-12-18confbridge: Clarify mute sound documentation.Joshua Colp
The mute/unmute sounds are only played when the action is initiated using the DTMF menu. ASTERISK-24756 Change-Id: I55b3dd5bc166096bf5e2f547ddd0ce355f36e3dc
2017-12-18Merge "loader: Minor fix to module registration." into 13Jenkins2
2017-12-18app_transfer: Remove LOCAL from documentation.Joshua Colp
The Local channel has never supported app_transfer from what I can see so remove it from the documentation. ASTERISK-25649 Change-Id: Icbcfe297f6f866285a26b3e9fd5c6d00fa22e0e9
2017-12-15chan_pjsip.c: Improve ast_request() diagnostic msgs.Richard Mudgett
Attempting to dial PJSIP/endpoint when the endpoint doesn't exist and disable_multi_domain=no results in a misleading empty endpoint name message. The message should say the endpoint was not found. * Added missing endpoint not found message. * Added more information to the empty endpoint name msgs if available. * Eliminated RAII_VAR in request(). Change-Id: I21da85ebd62dcc32115b2ffcb5157416ebae51e4
2017-12-15Merge "res_smdi: Fix shutdown ref." into 13Jenkins2
2017-12-15Merge "res_rtp_asterisk.c: Disable packet flood detection for video ↵Jenkins2
streams." into 13
2017-12-15Merge "res_hep: hepv3_is_loaded() should check if we are enabled" into 13Jenkins2
2017-12-15Merge "res_clialiases: Fix completion pass-through." into 13Jenkins2
2017-12-15Merge "coverity: Fix warnings in res_smdi" into 13Jenkins2
2017-12-15cdr: Minor optimizations.Corey Farrell
* bridge_candidate_process: remove SCOPED_AO2LOCK and return value. * handle_standard_bridge_enter_message: replace recursive call with goto statement. ASTERISK-24297 Change-Id: Id2eaa0822fb8dc799f63422bb3aa89de9d4ee2a2
2017-12-15Merge "res_musiconhold: Start playlist after initial announcement" into 13Jenkins2
2017-12-15Merge "app_queue: Fix extension state subscriptions removed on dialplan ↵Jenkins2
reload" into 13
2017-12-15loader: Use vector to build apha sorted module lists.Corey Farrell
Change-Id: I9c519f4dec3cda98b2f34d314255a31d49a6a467
2017-12-15loader: Replace priority heap with vector.Corey Farrell
This is needed for future changes which will require being able to process the load priority out of order. Change-Id: Ia23421197f09789940510b03ebbbf3bf24d51bea
2017-12-15loader: Rework of load_dynamic_module.Corey Farrell
* Split off load_dlopen to perform actual dlopen, check results and log warnings when needed. * Use flags which minimize number of calls to dlopen required. First attempt always uses RTLD_GLOBAL when global_symbols_only is enabled, RTLD_LOCAL when it is not. This patch significantly reduces the number of dlopen's performed. With 299 modules my system ran dlopen 857 times before this patch, 655 times after this patch. Change-Id: Ib2c9903cfddcc01aed3e01c1e7fe4a3fb9af0f8b
2017-12-15loader: Minor fix to module registration.Corey Farrell
This protects the module loader itself against crashing if dlopen is called on a module from outside loader.c. * Expand scope of lock inside ast_module_register to include reading of resource_being_loaded. * NULL check resource_being_loaded. * Set resource_being_loaded NULL as soon as dlopen returns. This fixes some error paths where it was not NULL'ed. * Create module_destroy function to deduplicate code from ast_module_unregister and modules_shutdown. * Resolve leak that occured if a module did not successfully register. * Simplify checking for successful registration. Change-Id: I40f07a315e55b92df4fc7faf525ed6d4f396e7d2
2017-12-15chan_sip: Add security event for calls to invalid extension.Corey Farrell
Log a message to security events when an INVITE is received to an invalid extension. ASTERISK-25869 #close Change-Id: I0da40cd7c2206c825c2f0d4e172275df331fcc8f
2017-12-15aco: Minimize use of regex.Corey Farrell
Remove nearly all use of regex from ACO users. Still remaining: * app_confbridge has a legitamate use of option name regex. * ast_sorcery_object_fields_register is implemented with regex, all callers use simple prefix based regex. I haven't decided the best way to fix this in both 13/15 and master. Change-Id: Ib5ed478218d8a661ace4d2eaaea98b59a897974b
2017-12-15aco: Create ways to minimize use of regex.Corey Farrell
ACO uses regex in many situations where it is completely unneeded. In some cases this doubles the total processing performed by aco_process_config. * Create ACO_IGNORE category type for use in place of skip_category regex source string. * Create additional aco_category_op values to allow specifying category filter using either a single plain string or a NULL terminated array of plain strings. * Create ACO_PREFIX to allow matching option names to case insensitive prefixes. Change-Id: I66a920dcd8e2b0301f73f968016440a985e72821
2017-12-15res_smdi: Fix shutdown ref.Corey Farrell
When adding shutdown refs for OPTIONAL_API components I accidentally added it to the unload_module function in res_smdi. Move it to load_module. Change-Id: I2b9da38fbc11ef78ea23dbb2df92b684be7f647c
2017-12-14res_hep: hepv3_is_loaded() should check if we are enabledSean Bright
res_hep_pjsip.so and res_hep_rtcp.so will still load and do a lot of unnecessary work even if 'enabled' is set to 'no' in hep.conf. Change-Id: I3eddfeea09c6b5bc7c641952ee0ae487fd09b64b
2017-12-14Merge "pjsip: Ignore state changes from old transactions." into 13Jenkins2
2017-12-14res_clialiases: Fix completion pass-through.Corey Farrell
Never ignore contents of line when generating completion options. Change-Id: I74389efdfea154019d3b56a9f381610614c044c8
2017-12-14res_rtp_asterisk.c: Disable packet flood detection for video streams.Richard Mudgett
We should not do flood detection on video RTP streams. Video RTP streams are very bursty by nature. They send out a burst of packets to update the video frame then wait for the next video frame update. Really only audio streams can be checked for flooding. The others are either bursty or don't have a set rate. * Added code to selectively disable packet flood detection for video RTP streams. ASTERISK-27440 Change-Id: I78031491a6e75c2d4b1e9c2462dc498fe9880a70
2017-12-14res_musiconhold: Start playlist after initial announcementSean Bright
Reset the samples counter to zero when we are done playing an announcement so that we don't skip into the middle of the first file in the playlist. Also add the selected annoucement to the output of 'moh show classes.' ASTERISK-24329 #close Reported by: Thomas Frederiksen Change-Id: I2a5f986a31279c981592f49391409ebf38d6f6d0
2017-12-14coverity: Fix warnings in res_smdiSean Bright
ASTERISK-19657 #close Reported by: Matt Jordan III, Esq. Change-Id: I59a5e6ef3e7d9e848bec1f4b40cb73321bc7956a
2017-12-14configs: Comment out and change IP of iax.conf [demo]Sean Bright
This no longer appears to exist, so no sense in causing confusion. ASTERISK-27175 #close Reported by: Tzafrir Cohen Change-Id: Idde967924c69f6a741dc9a5ab7dacb44d22cf100
2017-12-14Merge "menuselect: Tweak check for recently run configure." into 13Joshua Colp
2017-12-14Merge "README: Remove outdated references to tex docs" into 13Joshua Colp
2017-12-13Merge "res_pjsip: Assign support levels to a few modules" into 13Jenkins2
2017-12-13README: Remove outdated references to tex docsGeorge Joseph
Added links to the wiki to replace references to outdated tex docs. ASTERISK-27430 Reported by: Corey Farrell Change-Id: I5007e732b30bc7b63d124c530ae8857c89991209
2017-12-13Merge "pjsip_options: contacts sometimes not being updated on reload" into 13Jenkins2
2017-12-13Merge "pjsip_options: dynamic contact's fields not updated on reload" into 13Jenkins2
2017-12-13CLI: Remove special handling of 'core set verbose' from rasterisk.Corey Farrell
rasterisk does not need to handle setting verbose levels locally, it should just tell the daemon what it wants and print what it is given. Just max out the verbose level on the local client so all filtering happens on the daemon. ASTERISK-20281 #close Change-Id: Ia305f75f1fc424a9169bfa30ef70d626ace2c8a8
2017-12-13Merge "CLI: Fix 'core show sysinfo' function ordering." into 13Jenkins2
2017-12-13Merge "chan_pjsip/res_pjsip: Add CHANNEL(pjsip,request_uri)" into 13Jenkins2
2017-12-13Merge "AST-2017-012: Place single RTCP report block at beginning of report." ↵George Joseph
into 13
2017-12-13Merge "chan_sip: Don't crash in Dial on invalid destination" into 13Jenkins2
2017-12-13AST-2017-012: Place single RTCP report block at beginning of report.Joshua Colp
When the RTCP code was transitioned over to Stasis a code change was made to keep track of how many reports are present. This count controlled where report blocks were placed in the RTCP report. If a compound RTCP packet was received this logic would incorrectly place a report block in the wrong location resulting in a write to an invalid location. This change removes this counting logic and always places the report block at the first position. If in the future multiple reports are supported the logic can be extended but for now keeping a count serves no purpose. ASTERISK-27382 ASTERISK-27429 Change-Id: Iad6c8a9985c4b608ef493e19c421211615485116
2017-12-13Merge "chan_sip: Don't send trailing \0 on keep alive packets" into 13Jenkins2
2017-12-13pjsip: Ignore state changes from old transactions.Joshua Colp
When we fail over to a new target we create a new transaction and it becomes the current INVITE transaction. This does not prevent the previous transaction from raising state changes and causing the session to be prematurely disconnected if a transport error occurs immediately. This change backports a fix from PJSIP that eliminates the incorrect state change and reduces when they would be raised in the first place. ASTERISK-27408 Change-Id: Id22d087591782eee31311753d11e7eca4b95ef34
2017-12-12app_queue: Fix extension state subscriptions removed on dialplan reloadIvan Poddubny
The approach with having a single global subscription to all extension state changes has one issue: dynamically created hints don't have any watchers and are therefore garbage collected on the first dialplan reload. This change creates a state subscription for every queue member with a hint as state_interface, thus increasing the count of watches for hints, so they are not destroyed prematurely anymore. There are 2 side effects: 1. The state change callback in app_queue is not executed when there are no members referring to the extension. 2. The callback is called multiple times for the same hint if it's associated with more than one queue member. Reported by: Steven T. Wheeler ASTERISK-18411 #close Change-Id: I4956af2136ea2a7f110ac9272eae5f6e676d8f89
2017-12-12chan_sip: Don't send trailing \0 on keep alive packetsSean Bright
This is a partial fix for ASTERISK~25817 but does not address the comments regarding RFC 5626. Change-Id: I227e2d10c0035bbfa1c6e46ae2318fd1122d8420
2017-12-12chan_sip: Don't crash in Dial on invalid destinationSean Bright
Stripping the DNID in a SIP dial string can result in attempting to call the argument parsing macros on an empty string, causing a crash. ASTERISK-26131 #close Reported by: Dwayne Hubbard Patches: dw-asterisk-master-dnid-crash.patch (license #6257) patch uploaded by Dwayne Hubbard Change-Id: Ib84c1f740a9ec0539d582b09d847fc85ddca1c5e
2017-12-12menuselect: Tweak check for recently run configure.Corey Farrell
Recently menuselect has randomly produced an error stating that configure was just run and make had to be restarted. I believe this is due to an incorrect menuselect/Makefile rule. The original rule produced an error if makeopts or autoconfig.h were older than makeopts.in or autoconfig.h.in. I believe this can create an issue if makeopts is older than autoconfig.h.in or if autoconfig.h is older than makeopts.in. The new rules compare files independently. Change-Id: Ibca155035fa1392c95e33cbf25f257902abba17b
2017-12-12chan_pjsip/res_pjsip: Add CHANNEL(pjsip,request_uri)Richard Mudgett
This patch does three things associated with the initial incoming INVITE request URI. 1) Add access to the full initial incoming INVITE request URI. 2) We were not setting DNID on incoming PJSIP channels. The DNID is the user portion of the initial incoming INVITE Request-URI. The value is accessed by reading CALLERID(dnid). 3) Fix CHANNEL(pjsip,target_uri) documentation. * The initial incoming INVITE request URI is now available using CHANNEL(pjsip,request_uri). * Set the DNID on PJSIP channel creation so CALLERID(dnid) can return the initial incoming INVITE request URI user portion. * CHANNEL(pjsip,target_uri) now correctly documents that the target URI is the contact URI. * Refactored print_escaped_uri() out of channel_read_pjsip() to handle pjsip_uri_print() error condition when the buffer is too small. ASTERISK-27478 Change-Id: I512e60d1f162395c946451becb37af3333337b33
2017-12-12res_pjsip: Add TLSv1.1 and TLSv1.2 supportSean Bright
Support for these protocols was added in the same commit as the 'proto' field, so we can safely use the same ./configure check. For reference: https://trac.pjsip.org/repos/changeset/4968 Change-Id: Icf4975d785d6bfb8f30ac7ffa695a0adf9382dac