summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-14configure: Don't use the progress bar with curl when downloading to stdoutMatt Jordan
In some scenarios, such as when there may not be a terminal (such as inside a Docker container), curl will apparently direct the progress bar to stdout. This can cause extra data to be appended to a file curl'd down to stdout, resulting in md5 verification failures. This patch removes the progress bar, and tells curl to download the file silently. ASTERISK-26872 #close Change-Id: Ie860b020f627d4372b3e7ce9453de5faafeebe6c
2017-03-14Merge "chan_pjsip: Don't assume a session will have a channel."zuul
2017-03-14Merge "chan_sip: Call not cancelled after receiving a 422 response"Joshua Colp
2017-03-13chan_pjsip: Don't assume a session will have a channel.Joshua Colp
When querying for PJSIP specific information using the dialplan function CHANNEL() it is possible that the underlying session will no longer have a channel associated with it. This is most likely to occur when the RTCP HEP module attempts to get the channel name. If this happens then a crash will occur. This change just adds a check that the channel exists on the session before querying it. ASTERISK-26857 Change-Id: I113479cffff6ae64cf8ed089e9e1565223426f01
2017-03-10pjproject_bundled: Reduce the need for rebuildsGeorge Joseph
Bundled pjproject should now only rebuild if one of the menuselect "Compiler Flags" options changes. Change-Id: If114a2e16b9e77af371a600d6a5e197bbf28fe43
2017-03-10Merge "pjsip/cli_commands: pjsip show channelstats shows wrong codec"Joshua Colp
2017-03-09Merge "res_musiconhold: moh general section is a class and issues warning"zuul
2017-03-09Merge "media_cache: Prefer ast_file_is_readable() over access()"Joshua Colp
2017-03-09pjsip/cli_commands: pjsip show channelstats shows wrong codecDaniel Journo
* cli_commands.c Fixed CLI output ASTERISK-26822 #close Change-Id: I3889ef6a8f6738fc312fab42db5efacd6e452b01
2017-03-09Merge "pbx_spool: Set AST_OUTGOING_ATTEMPT variable on channel"Joshua Colp
2017-03-09res_musiconhold: moh general section is a class and issues warningDaniel Journo
* res_musiconhold.c: Ensure the general section is not treated as a moh class. ASTERISK-26353 #close Change-Id: Ia3dbd11ea2b43ab3e6c820a9827811dd24bea82d
2017-03-08media_cache: Prefer ast_file_is_readable() over access()Sean Bright
Change-Id: Icc0dc6e61b2e68d5cdcb74b016b2726a388c7def
2017-03-08pbx_spool: Set AST_OUTGOING_ATTEMPT variable on channelSean Bright
Set a variable on the channel that indicates which attempt number we are currently performing to allow for attempt-specific behavior. ASTERISK-26568 #close Reported by: Roman Shubovich Change-Id: Iacd7e8d43b0ed5b6cb021c62f41f1a1f5733dd89
2017-03-08app_voicemail: Cannot set fromstring on a per-mailbox basisDaniel Journo
* apps/app_voicemail.c fromstring field added to mailbox which will override the global fromstring if set. ASTERISK-24562 #close Change-Id: I5e90e3a1ec2b2d5340b49a0db825e4bbb158b2fe
2017-03-08Merge "res_http_websocket: Fix faulty read logic."zuul
2017-03-07Merge "pbx_spool: Gracefully handle long lines in call files"zuul
2017-03-07res_http_websocket: Fix faulty read logic.Mark Michelson
When doing some WebRTC testing, I found that the websocket would disconnect whenever I attempted to place a call into Asterisk. After looking into it, I pinpointed the problem to be due to the iostreams change being merged in. Under certain circumstances, a call to ast_iostream_read() can return a negative value. However, in this circumstance, the websocket code was treating this negative return as if it were a partial read from the websocket. The expected length would get adjusted by this negative value, resulting in the expected length being too large. This patch simply adds an if check to be sure that we are only updating the expected length of a read when the return from a read is positive. ASTERISK-26842 #close Reported by Mark Michelson Change-Id: Ib4423239828a013d27d7bc477d317d2f02db61ab
2017-03-07chan_sip: Call not cancelled after receiving a 422 responseJean Aunis
When receiving a 422 response, the invitestate variable must be reset to INV_CALLING. ASTERISK-26841 Change-Id: Ia0502d6b02192664cefa4e75bafdd2645ce56099
2017-03-06Saynumber is trying to get "and" from "digits/" subfolderDaniel Journo
* say.c Changed 'digits/and' to 'vm-and' for en_GB ASTERISK-26598 #close Change-Id: If1b713e5daea6f952b339f139178d292a6c4fcfe
2017-03-06pbx_spool: Gracefully handle long lines in call filesSean Bright
Per the linked issue, we aren't checking the buffer filled by fgets() to determine if it contains a newline, so we will fail to correctly parse the trailing portion of a long line. This patch increases the buffer size from 256 to 1024, and skips any line that exceeds that length, logging a warning in the process. ASTERISK-17067 #close Reported by: Dave Olszewski Change-Id: I51bcf270c1b4347ba05b43f18dc2094c76f5d7b0
2017-03-02core: Cleanup ast_get_hint() usage.Richard Mudgett
* manager.c:manager_state_cb() Fix potential use of uninitialized hint[] if a hint does not exist for the requested extension. Ran into this when developing a testsuite test. The AMI event ExtensionStatus came out with the hint header value containing garbage. The AMI event PresenceStatus also had the same issue. * manager.c:action_extensionstate() no need to completely initialize the hint[]. Only initialize the first element. * pbx.c:ast_add_hint() Remove unnecessary assignment. * chan_sip.c: Eliminate an unneeded hint[] local variable. We only care about the return value of ast_get_hint() there. Change-Id: Ia9a8786f01f93f1f917200f0a50bead0319af97b
2017-03-01Merge "res_pjsip WebRTC/websockets: Fix usage of WS vs WSS."Joshua Colp
2017-03-01Merge "stream: Unit tests for stream read and tweaks framework"Joshua Colp
2017-03-01Merge "res_config_pgsql: Make 'require' return consistent with other backends"Joshua Colp
2017-03-01res_pjsip WebRTC/websockets: Fix usage of WS vs WSS.Jørgen H
According to the RFC[1] WSS should only be used in the Via header for secure Websockets. * Use WSS in Via for secure transport. * Only register one transport with the WS name because it would be ambiguous. Outgoing requests may try to find the transport by name and pjproject only finds the first one registered. This may mess up unsecure websockets but the impact should be minimal. Firefox and Chrome do not support anything other than secure websockets anymore. * Added and updated some debug messages concerning websockets. * security_events.c: Relax case restriction when determining security transport type. * The res_pjsip_nat module has been updated to not touch the transport on Websocket originating messages. [1] https://tools.ietf.org/html/rfc7118 ASTERISK-26796 #close Change-Id: Ie3a0fb1a41101a4c1e49d875a8aa87b189e7ab12
2017-03-01stream: Unit tests for stream read and tweaks frameworkGeorge Joseph
* Removed the AST_CHAN_TP_MULTISTREAM tech property. We now rely on read_stream being set to indicate a multi stream channel. * Added ast_channel_is_multistream convenience function. * Fixed issue where stream and default_stream weren't being set on a frame retrieved from the queue. * Now testing for NULL being returned from the driver's read or read_stream callback. * Fixed issue where the dropnondefault code was crashing on a NULL f. * Now enforcing that if either read_stream or write_stream are set when ast_channel_tech_set is called that BOTH are set. * Added the unit tests. ASTERISK-26816 Change-Id: If7792b20d782e71e823dabd3124572cf0a4caab2
2017-03-01res_config_pgsql: Make 'require' return consistent with other backendsSean Bright
res_config_pgsql should match the behavior of other realtime backend drivers so that queue_log can disable adaptive logging. ASTERISK-25628 #close Reported by: Dmitry Wagin Change-Id: Ic1fb1600c7ce10fdfb1bcdc43c5576b7e0014372
2017-03-01SDP: Add initial SDP state machine.Mark Michelson
This introduces and documents the various states in the state machine. This also introduces API functions that induce state changes, and places TODO comments telling what needs to be done in addition to what is already there. Those TODOs will be replaced with real code in upcoming changes. Change-Id: I871c0eb480b4c84d83e91ac5628e7a673e8b89ed
2017-03-01Merge "media_cache: Mark cache entry stale if cache file is removed"Joshua Colp
2017-02-28Merge "res_config_pgsql: Release table locks where appropriate"Joshua Colp
2017-02-28Merge "res_pjsip_outbound_registration: Subscribe to network change events"Joshua Colp
2017-02-28Merge "build: Warn if asterisk is installed in both 32 and 64 bit sys dirs"Joshua Colp
2017-02-28Merge "res_pjsip_pubsub: Remove unneeded endpoint unref"Joshua Colp
2017-02-28Merge "bridge_native_rtp: Handle case where channel joins already suspended."zuul
2017-02-28media_cache: Mark cache entry stale if cache file is removedSean Bright
In the event that a cache file is removed out from under us, we should treat the cache entry as stale and force a refresh. ASTERISK-26774 #close Reported by: Igor Gamayunov Change-Id: I3b1bd0c999d59d18664ef73a29823bc5b431dc52
2017-02-28Merge "config: Improve documentation and behavior of outbound_proxy option."Joshua Colp
2017-02-28Merge "res_pjsip: Fix crash when contact has no status"Joshua Colp
2017-02-28res_config_pgsql: Release table locks where appropriateSean Bright
The find_table() functions NULL or a locked table pointer. We are not consistently calling release_table() in failure paths. Change-Id: I6f665b455799c84b036e5b34904b82b05eab9544
2017-02-28pjsip.conf.sample: user_agent: not a specific versionTzafrir Cohen
Use the description of useragent from sip.conf here. ASTERISK-26825 #close Change-Id: I5b33a4aaa0ae1d793289d05e3bc09521affbf755
2017-02-27res_pjsip_pubsub: Remove unneeded endpoint unrefGeorge Joseph
When a subscription was being recreated and the endpoint wasn't found, we were trying to unref the endpoint. This was causing FRACKs. Removed the unref. ASTERISK-26823 #close Change-Id: If86d2aecff8fe853c7f38a1bfde721fcef3cd164
2017-02-27res_pjsip: Fix crash when contact has no statusJørgen H
This change fixes an assumption in res_pjsip that a contact will always have a status. There is a race condition where this is not true and would crash. The status will now be unknown when this situation occurs. ASTERISK-26623 #close Change-Id: Id52d3ca4d788562d236da49990a319118f8d22b5
2017-02-27res_pjsip_outbound_registration: Subscribe to network change eventsGeorge Joseph
Outbound registration now subscribes to network change events published by res_stun_monitor and refreshes all registrations when an event happens. The 'pjsip send (un)register' CLI commands were updated to accept '*all' as an argument to operate on all registrations. The 'PJSIP(Un)Register' AMI commands were also updated to accept '*all'. ASTERISK-26808 #close Change-Id: Iad58a9e0aa5d340477fca200bf293187a6ca5a25
2017-02-27build: Warn if asterisk is installed in both 32 and 64 bit sys dirsGeorge Joseph
... and clean them both up on uninstall. We've fixed the issue where 'make install' was installing to /usr/lib on 64-bit systems that use /usr/lib64. Now we need to clean up the remnants in /usr/lib. * 'make install' now prints a warning if DESTDIR/ASTLIBDIR contains 'lib64' and libasterisk* shared libraries or modules are also found in DESTDIR/ASTLIBDIR with 'lib64' transformed to 'lib'. * 'make uninstall' ALWAYS cleans up both DESTDIR/ASTLIBDIR and DESTDIR/ASTLIBDIR with 'lib64' transformed to 'lib'. ASTERISK-26705 Change-Id: I6edddeb3c07a51e7c7ba7cac3c05e4bf3ec3f01f
2017-02-27bridge_native_rtp: Handle case where channel joins already suspended.Joshua Colp
The bridge_native_rtp module did not properly handle the case where a smart bridge operation occurs while a channel is suspended. In this scenario the module would incorrectly set up local or remote RTP bridging despite the media having to flow through Asterisk. The remote endpoint would see two media streams and experience wonky audio. The module has been changed so that it ensures both channels are not suspended when performing the native RTP bridging and this requirement has been documented in the bridge technology. ASTERISK-26781 Change-Id: Id4022d73ace837d4a293106445e3ade10dbc7c7c
2017-02-27Merge "channel: Add ast_read_stream function for reading frames from all ↵George Joseph
streams."
2017-02-24Merge "Binaural synthesis (confbridge): DTMF conference management."zuul
2017-02-24Binaural synthesis (confbridge): DTMF conference management.frahaase
DTMF configuration options for the binaural softmix bridge: toggle binaural rendering (per channel). ASTERISK-26292 Change-Id: Ibfe708b9fe26097c1798fcbfcc4dc461267d8af8
2017-02-24config: Improve documentation and behavior of outbound_proxy option.Joshua Colp
This change updates the documentation for the outbound_proxy option to ensure it is consistently stated that a full SIP URI must be provided for the option. The res_pjsip_outbound_registration module has also been changed so that the provided outbound_proxy value is checked to ensure it is a URI and if not an error is output stating so. ASTERISK-26782 Change-Id: I6c239a32274846fd44e65b44ad9bf6373479b593
2017-02-24Merge "pjproject_bundled: Update for pjproject 2.6"Joshua Colp
2017-02-24Merge "Binaural synthesis (confbridge): Adds binaural synthesis to ↵Joshua Colp
bridge_softmix."