19 months agoMerge "main/asterisk.c: Remove silly usage of RAII_VAR."
Jenkins2 [Wed, 14 Feb 2018 18:55:18 +0000 (12:55 -0600)]
Merge "main/asterisk.c: Remove silly usage of RAII_VAR."

19 months agoMerge "core: Remove embedded editline."
Jenkins2 [Tue, 13 Feb 2018 14:22:28 +0000 (08:22 -0600)]
Merge "core: Remove embedded editline."

19 months agoMerge "chan_sip.c: Fix crash processing CANCEL."
Jenkins2 [Tue, 13 Feb 2018 13:59:48 +0000 (07:59 -0600)]
Merge "chan_sip.c: Fix crash processing CANCEL."

19 months agoMerge "json: Add conditionals to avoid locking if Jansson is thread safe."
Joshua Colp [Tue, 13 Feb 2018 13:30:35 +0000 (07:30 -0600)]
Merge "json: Add conditionals to avoid locking if Jansson is thread safe."

19 months agoMerge "BuildSystem: Enable autotools in FreeBSD."
Jenkins2 [Tue, 13 Feb 2018 13:07:59 +0000 (07:07 -0600)]
Merge "BuildSystem: Enable autotools in FreeBSD."

19 months agoMerge "pjproject_bundled: Disable G.729 from Belledonne Communications."
Joshua Colp [Tue, 13 Feb 2018 13:05:36 +0000 (07:05 -0600)]
Merge "pjproject_bundled: Disable G.729 from Belledonne Communications."

19 months agoMerge "codecs: Add support for WebRTC iLBC 2.0."
Joshua Colp [Tue, 13 Feb 2018 12:37:35 +0000 (06:37 -0600)]
Merge "codecs: Add support for WebRTC iLBC 2.0."

19 months agomain/asterisk.c: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 13 Feb 2018 04:15:41 +0000 (23:15 -0500)]
main/asterisk.c: Remove silly usage of RAII_VAR.

Change-Id: I7e2996397fbd3c3a6a69dd805c38448ddfc34ae9

19 months agochan_sip.c: Fix crash processing CANCEL.
Richard Mudgett [Sun, 11 Feb 2018 21:27:49 +0000 (15:27 -0600)]
chan_sip.c: Fix crash processing CANCEL.

Check if initreq data string exists before using it when processing a
CANCEL request.


Change-Id: Id1d0f0fa4ec94e81b332b2973d93e5a14bb4cc97

19 months agoMerge "cdr.c: Fix runtime leak of CDR records."
Jenkins2 [Mon, 12 Feb 2018 22:03:46 +0000 (16:03 -0600)]
Merge "cdr.c: Fix runtime leak of CDR records."

19 months agojson: Add conditionals to avoid locking if Jansson is thread safe.
Corey Farrell [Wed, 31 Jan 2018 02:31:51 +0000 (21:31 -0500)]
json: Add conditionals to avoid locking if Jansson is thread safe.

Jansson is thread safe for all read-only functions and reference
counting starting v2.11.  This allows simplification of our code and
removal of locking around reference counting and dumping.

Change-Id: Id985cb3ffa6681f9ac765642e20fcd187bd4aeee

19 months agoMerge "install_prereq: Update Debian/Ubuntu libraries."
Jenkins2 [Mon, 12 Feb 2018 16:09:27 +0000 (10:09 -0600)]
Merge "install_prereq: Update Debian/Ubuntu libraries."

19 months agopjproject_bundled: Disable G.729 from Belledonne Communications.
Alexander Traud [Mon, 12 Feb 2018 12:16:00 +0000 (13:16 +0100)]
pjproject_bundled: Disable G.729 from Belledonne Communications.

When <> is installed, PJProject
tries to link that. Support for this bcg729 was added with PJProject 2.7. The
issue happens, because Teluu enabled that new feature on default.

Reported by: Stuart Henderson

Change-Id: I88b6b18ad777bcfe2d8201187b4b90eec0a172a6

19 months agocodecs: Add support for WebRTC iLBC 2.0.
Alexander Traud [Mon, 12 Feb 2018 11:38:21 +0000 (12:38 +0100)]
codecs: Add support for WebRTC iLBC 2.0.

When the latest version of that library was installed, Asterisk did not build.

Reported by: Николай Михо

Change-Id: I27e09bb875fdd56423bd9fae1be85fddb428eb96

19 months agocore: Remove embedded editline.
Corey Farrell [Mon, 12 Feb 2018 07:26:56 +0000 (02:26 -0500)]
core: Remove embedded editline.

This removes the embedded copy of editline from the Asterisk source
tree, making a system copy of libedit mandatory in Asterisk 16+.

ASTERISK-27634 #close

Change-Id: Iedb64ad92acb78419f3caefedaa2bb7cd2a1a33f

19 months agobacktrace: Avoid potential spurious output.
Alexander Traud [Tue, 30 Jan 2018 15:58:30 +0000 (16:58 +0100)]
backtrace: Avoid potential spurious output.

clang 4.0 found this via -Wlogical-not-parentheses.


Change-Id: I9ec3e144d425a976c02811bd23cd0c533d2eca4e

19 months agoinstall_prereq: Update Debian/Ubuntu libraries.
Alexander Traud [Sat, 10 Feb 2018 11:39:45 +0000 (12:39 +0100)]
install_prereq: Update Debian/Ubuntu libraries.


Change-Id: Idc36e91db30c0163c560d04c5a82bca5d6ce92a8

19 months agocdr.c: Fix runtime leak of CDR records.
Richard Mudgett [Fri, 9 Feb 2018 18:06:08 +0000 (12:06 -0600)]
cdr.c: Fix runtime leak of CDR records.

Need to remove all CDR's listed by a CDR object from the active_cdrs_all
container including the root/master record.


Change-Id: I48b4970663fea98baa262593d2204ef304aaf80e

19 months agoMerge "chan_console: don't read and write at the same time"
Jenkins2 [Fri, 9 Feb 2018 15:31:16 +0000 (09:31 -0600)]
Merge "chan_console: don't read and write at the same time"

19 months agoMerge "app_confbridge: ConfbridgeList event has standard channel shapshot headers."
Jenkins2 [Wed, 7 Feb 2018 12:42:20 +0000 (06:42 -0600)]
Merge "app_confbridge: ConfbridgeList event has standard channel shapshot headers."

19 months agoMerge "app_confbridge: Add the Muted header to ConfbridgeJoin AMI event."
Jenkins2 [Wed, 7 Feb 2018 12:04:05 +0000 (06:04 -0600)]
Merge "app_confbridge: Add the Muted header to ConfbridgeJoin AMI event."

19 months agoMerge "endpoint identifiers: Some code cleanup."
Jenkins2 [Tue, 6 Feb 2018 11:40:14 +0000 (05:40 -0600)]
Merge "endpoint identifiers: Some code cleanup."

19 months agoMerge "res_pjsip/config_domain_aliases.c: Add check for missing domain."
Jenkins2 [Mon, 5 Feb 2018 22:11:20 +0000 (16:11 -0600)]
Merge "res_pjsip/config_domain_aliases.c: Add check for missing domain."

19 months agoapp_confbridge: ConfbridgeList event has standard channel shapshot headers.
Richard Mudgett [Wed, 31 Jan 2018 23:48:46 +0000 (17:48 -0600)]
app_confbridge: ConfbridgeList event has standard channel shapshot headers.

* Made the AMI ConfbridgeList action's ConfbridgeList events output all
the standard channel snapshot headers instead of a few hand-coded channel
snapshot headers.  The benefit is that the CallerIDName gets disruptive
characters like CR, LF, Tab, and a few others escaped.  However, an empty
CallerIDName is now output as "<unknown>" instead of "<no name>".


Change-Id: Iaf7d54a9d40194c2db060bc9b4979fab6720d977

19 months agoapp_confbridge: Add the Muted header to ConfbridgeJoin AMI event.
Richard Mudgett [Wed, 31 Jan 2018 21:45:42 +0000 (15:45 -0600)]
app_confbridge: Add the Muted header to ConfbridgeJoin AMI event.


Change-Id: Idef2ca54d242d1b894efd3fc7b360bc6fd5bdc34

19 months agoMerge "res_sorcery_realtime.c: Fix ref leak if object failed to apply."
Jenkins2 [Mon, 5 Feb 2018 19:05:40 +0000 (13:05 -0600)]
Merge "res_sorcery_realtime.c: Fix ref leak if object failed to apply."

19 months agoMerge "manager.c: Fixed "(null):" header in AMI AsyncAGIEnd event"
Jenkins2 [Mon, 5 Feb 2018 18:23:19 +0000 (12:23 -0600)]
Merge "manager.c: Fixed "(null):" header in AMI AsyncAGIEnd event"

19 months agoMerge "res_pjsip.c: Fix documentation typos."
Jenkins2 [Sat, 3 Feb 2018 16:52:58 +0000 (10:52 -0600)]
Merge "res_pjsip.c: Fix documentation typos."

19 months agoMerge "manager_channels.c: Reordered ast_manager_build_channel_state_string_prefix()"
Jenkins2 [Sat, 3 Feb 2018 16:26:55 +0000 (10:26 -0600)]
Merge "manager_channels.c: Reordered ast_manager_build_channel_state_string_prefix()"

19 months agoMerge "res_pjsip_mwi.c: Fix null pointer crash"
Jenkins2 [Sat, 3 Feb 2018 16:06:32 +0000 (10:06 -0600)]
Merge "res_pjsip_mwi.c: Fix null pointer crash"

19 months agoMerge "manager.c: Fix potential memory leak and corruption."
Jenkins2 [Sat, 3 Feb 2018 15:41:42 +0000 (09:41 -0600)]
Merge "manager.c: Fix potential memory leak and corruption."

19 months agochan_console: don't read and write at the same time
Oron Peled [Tue, 19 Dec 2017 08:52:54 +0000 (10:52 +0200)]
chan_console: don't read and write at the same time

It seems that the ALSA backend of PortAudio doesn't know how to both
read and write at the same time by adding a per-device mutex.

FIXME: currently only a draft version. Need to either auto-detect
we work with the ALSA backend or add an extra configuration option
to use this mutex.

ASTERISK-27426 #close

Change-Id: I635eacee45f5413faa18f5a3b606af03b926dacb

19 months agoendpoint identifiers: Some code cleanup.
Richard Mudgett [Fri, 2 Feb 2018 23:35:20 +0000 (17:35 -0600)]
endpoint identifiers: Some code cleanup.

* Fix copy/paste error in find_endpoint().  We were using a constant
"anonymous" string instead of the passed in endpoint_name when checking
the transport domain for an endpoint match.
* Eliminate RAII_VAR in find_endpoint().
* Remove always true check in find_transport_state_in_use().
* Remove useless CMD_STOP in find_transport_state_in_use().

* Eliminate RAII_VAR in anonymous_identify().
* Remove always true check in find_transport_state_in_use().
* Remove useless CMD_STOP in find_transport_state_in_use().

Change-Id: I86924c31db5bd225ca0c1219c761b668c6f91189

19 months agores_pjsip/config_domain_aliases.c: Add check for missing domain.
Richard Mudgett [Fri, 2 Feb 2018 23:20:55 +0000 (17:20 -0600)]
res_pjsip/config_domain_aliases.c: Add check for missing domain.

What is the point of defining an alias and not saying what is being

Change-Id: I98a892016ed61dcf5efeb6619fd748925103f0be

19 months agores_pjsip.c: Fix documentation typos.
Richard Mudgett [Fri, 2 Feb 2018 21:11:27 +0000 (15:11 -0600)]
res_pjsip.c: Fix documentation typos.

Change-Id: I82ae0b92bfa2ece84a5c684efd9eefdc83ebd068

19 months agores_sorcery_realtime.c: Fix ref leak if object failed to apply.
Richard Mudgett [Fri, 2 Feb 2018 21:43:34 +0000 (15:43 -0600)]
res_sorcery_realtime.c: Fix ref leak if object failed to apply.

Change-Id: I3c7106ff77009754725cee790eadf5da44154ab6

19 months agoMerge "appdocsxml.xslt: Add Language to channel snapshot transformation"
Richard Mudgett [Fri, 2 Feb 2018 16:26:15 +0000 (10:26 -0600)]
Merge "appdocsxml.xslt: Add Language to channel snapshot transformation"

19 months agoMerge "bridge_softmix.c: Report not talking immediately when muted."
Joshua Colp [Fri, 2 Feb 2018 12:22:59 +0000 (06:22 -0600)]
Merge "bridge_softmix.c: Report not talking immediately when muted."

19 months agomanager.c: Fixed "(null):" header in AMI AsyncAGIEnd event
Sungtae Kim [Thu, 25 Jan 2018 01:58:22 +0000 (02:58 +0100)]
manager.c: Fixed "(null):" header in AMI AsyncAGIEnd event

* Changed to create ami_event string only when the given blob is not
* Fixed bad expression.


Change-Id: Ice58c16361f9d9e8648261c9ed5d6c8245fb0d8f

19 months agores_pjsip_mwi.c: Fix null pointer crash
Joshua Elson [Thu, 1 Feb 2018 19:01:25 +0000 (14:01 -0500)]
res_pjsip_mwi.c: Fix null pointer crash

ASTERISK-27652 #close

Change-Id: I78a0d38bfd8d0d82830f3d53da04872d6b67284d

19 months agoappdocsxml.xslt: Add Language to channel snapshot transformation
Sean Bright [Thu, 1 Feb 2018 21:03:05 +0000 (16:03 -0500)]
appdocsxml.xslt: Add Language to channel snapshot transformation

Change-Id: I8f494b0c895a69b8bc94656d0c6ceebecb0394d8

19 months agomanager.c: Fix potential memory leak and corruption.
Richard Mudgett [Wed, 31 Jan 2018 21:40:36 +0000 (15:40 -0600)]
manager.c: Fix potential memory leak and corruption.

ast_str_append_event_header() could potentially leak and corrupt memory if
the ast_str needed to expand to add the AMI event header.

* Fixed to return error if the ast_str_append() failed.

Change-Id: I92f36b855540743b208d76e274152ee2d758176d

19 months agomanager_channels.c: Reordered ast_manager_build_channel_state_string_prefix()
Richard Mudgett [Wed, 31 Jan 2018 23:27:58 +0000 (17:27 -0600)]
manager_channels.c: Reordered ast_manager_build_channel_state_string_prefix()

* Made not allocate memory if the channel snapshot is an internal channel.

* Free memory earlier when no longer needed.

Change-Id: Ia06e0c065f1bd095781aa3f4a626d58fa4d28b38

19 months agoMerge "app_confbridge: Update dsp_silence_threshold and dsp_talking_threshold docs."
Jenkins2 [Thu, 1 Feb 2018 17:36:00 +0000 (11:36 -0600)]
Merge "app_confbridge: Update dsp_silence_threshold and dsp_talking_threshold docs."

19 months agoMerge "res_pjsip_pubsub: Prune subs with reliable transports at startup"
George Joseph [Thu, 1 Feb 2018 17:26:49 +0000 (11:26 -0600)]
Merge "res_pjsip_pubsub: Prune subs with reliable transports at startup"

19 months agoMerge "res_pjsip_registrar_expire: Delete empty module."
Jenkins2 [Thu, 1 Feb 2018 16:41:20 +0000 (10:41 -0600)]
Merge "res_pjsip_registrar_expire: Delete empty module."

19 months agoMerge "BuildSystem: Raise autoconf version requirement to 2.60a."
Jenkins2 [Thu, 1 Feb 2018 16:30:21 +0000 (10:30 -0600)]
Merge "BuildSystem: Raise autoconf version requirement to 2.60a."

19 months agoMerge "res_pjsip_session: Prevent crash during shutdown."
Jenkins2 [Wed, 31 Jan 2018 23:11:57 +0000 (17:11 -0600)]
Merge "res_pjsip_session: Prevent crash during shutdown."

19 months agoMerge "core: Create ast_atomic macro's."
Jenkins2 [Wed, 31 Jan 2018 23:06:56 +0000 (17:06 -0600)]
Merge "core: Create ast_atomic macro's."

19 months agoMerge "app_voicemail: Avoid always true when using pointer address."
Jenkins2 [Wed, 31 Jan 2018 21:43:03 +0000 (15:43 -0600)]
Merge "app_voicemail: Avoid always true when using pointer address."

19 months agores_pjsip_registrar_expire: Delete empty module.
Corey Farrell [Wed, 31 Jan 2018 18:44:56 +0000 (13:44 -0500)]
res_pjsip_registrar_expire: Delete empty module.

Verified nothing in the testsuite lists this module as a dependency.

Change-Id: I90c7d52c7e15e85fde3389d5eaccb05b97848813

19 months agobridge_softmix.c: Report not talking immediately when muted.
Richard Mudgett [Wed, 31 Jan 2018 01:22:51 +0000 (19:22 -0600)]
bridge_softmix.c: Report not talking immediately when muted.

Currently in app_confbridge if someone mutes a channel while that channel
is talking, the talk detection code is suspended while the channel is
muted.  As far an an external observer is concerned, the muted channel's
talk status is still "talking" even though the channel is not contributing
audio to the conference bridge.  When the channel is later unmuted, it
takes the usual 'dsp_silence_threshold' option time to clear the talking
status even though the channel may have stopped talking while the channel
was muted.

* In bridge_softmix.c, clear the talking status and report talking stopped
if the channel was talking when the channel is muted.  When the channel is
unmuted and the channel is still talking then report the channel as
talking since it is contributing audio to the bridge again.


Change-Id: Ie4fdbc05a0bc7343c2972bab012e2567917b3d4e

19 months agoapp_confbridge: Update dsp_silence_threshold and dsp_talking_threshold docs.
Richard Mudgett [Tue, 30 Jan 2018 21:00:32 +0000 (15:00 -0600)]
app_confbridge: Update dsp_silence_threshold and dsp_talking_threshold docs.

The dsp_talking_threshold does not represent time in milliseconds.  It
represents the average magnitude per sample in the audio packets.  This is
what the DSP uses to determine if a packet is silence or talking/noise.

Change-Id: If6f939c100eb92a5ac6c21236559018eeaf58443

19 months agores_pjsip_registrar.c: Fix compiler error.
Richard Mudgett [Wed, 31 Jan 2018 17:00:52 +0000 (11:00 -0600)]
res_pjsip_registrar.c: Fix compiler error.

Need to include signal.h to define pthread_kill() and SIGURG.

Change-Id: I10ae3aa4bf8e7386ac29ade78c0f2caed8e674fa

19 months agoMerge "loader: Use ast_cli_completion_add for 'module load' completion."
Jenkins2 [Wed, 31 Jan 2018 13:48:21 +0000 (07:48 -0600)]
Merge "loader: Use ast_cli_completion_add for 'module load' completion."

19 months agoMerge "res_pjsip_registrar_expire: Refactor into res_pjsip_register"
Jenkins2 [Wed, 31 Jan 2018 13:28:24 +0000 (07:28 -0600)]
Merge "res_pjsip_registrar_expire:  Refactor into res_pjsip_register"

19 months agoMerge "pbx_variables.c: Misc fixes in variable substitution."
Jenkins2 [Wed, 31 Jan 2018 12:52:24 +0000 (06:52 -0600)]
Merge "pbx_variables.c: Misc fixes in variable substitution."

19 months agoMerge "install_prereq: Update RHEL/CentOS/Fedora libraries."
Jenkins2 [Wed, 31 Jan 2018 12:42:59 +0000 (06:42 -0600)]
Merge "install_prereq: Update RHEL/CentOS/Fedora libraries."

19 months agores_pjsip_session: Prevent crash during shutdown.
Corey Farrell [Wed, 31 Jan 2018 05:05:15 +0000 (00:05 -0500)]
res_pjsip_session: Prevent crash during shutdown.

pjproject does not have a function to reverse pjsip_inv_usage_init.
This means we need to ignore any calls to the functions once shutdown is

ASTERISK-27571 #close

Change-Id: Ia550fcba563e2328f03162d79fb185f16b7c9b9d

19 months agocore: Create ast_atomic macro's.
Corey Farrell [Sat, 27 Jan 2018 19:03:57 +0000 (14:03 -0500)]
core: Create ast_atomic macro's.

Create ast_atomic macro's to provide a consistent interface to the
common functionality of __atomic and __sync built-in functions.


Change-Id: Ieba3f81832a0e25c5725ea067e5d6f742d33eb5b

19 months agores_pjsip_pubsub: Prune subs with reliable transports at startup
George Joseph [Sun, 28 Jan 2018 16:10:00 +0000 (09:10 -0700)]
res_pjsip_pubsub: Prune subs with reliable transports at startup

In an earlier release, inbound registrations on a reliable transport
were pruned on Asterisk restart since the TCP connection would have
been torn down and become unusable when Asterisk stopped.  This same
process is now also applied to inbound subscriptions.

Also fixed issues in res_pjsip_registrar where it wasn't handling the
monitoring correctly when multiple registrations came in over the same

To accomplish this, the pjsip_transport_event feature needed to
be refactored to allow multiple monitors (multiple subcriptions or
registrations from the same endpoint) to exist on the same transport.
Since this changed the API, any external modules that may have used the
transport monitor feature (highly unlikey) will need to be changed.

Reported by: Ross Beer

Change-Id: Iee87cf4eb9b7b2b93d5739a72af52d6ca8fbbe36

19 months agoMerge "Build System: Require __sync or __atomic functions."
Jenkins2 [Tue, 30 Jan 2018 12:56:08 +0000 (06:56 -0600)]
Merge "Build System: Require __sync or __atomic functions."

19 months agoMerge "Sample modules.conf: comment out example load statement."
Jenkins2 [Tue, 30 Jan 2018 12:54:32 +0000 (06:54 -0600)]
Merge "Sample modules.conf: comment out example load statement."

19 months agoMerge "Build System: Add support for __atomic built-in operators."
Jenkins2 [Tue, 30 Jan 2018 12:54:00 +0000 (06:54 -0600)]
Merge "Build System: Add support for __atomic built-in operators."

19 months agores_pjsip_registrar_expire: Refactor into res_pjsip_register
George Joseph [Mon, 29 Jan 2018 19:46:36 +0000 (12:46 -0700)]
res_pjsip_registrar_expire:  Refactor into res_pjsip_register

res_pjsip_registrar_expire remains as an empty module for now.

Change-Id: Ib93698938bae548d2199cb542f3692d1a171239f

19 months agoSample modules.conf: comment out example load statement.
Corey Farrell [Mon, 29 Jan 2018 13:51:55 +0000 (08:51 -0500)]
Sample modules.conf: comment out example load statement.

The sample modules.conf explicitly loaded  This is
redundent as autoload=yes is already set.  It causes warnings if was not installed and results in an unexpected load
if the admin disables autoload without remembering to remove the
res_musiconhold load statement.

Also remove reference to unknown module pbx_gtkconsole.

Change-Id: Ib01888994d9f1364b14d3c9fb6ff96774a6e580a

19 months agoMerge "Remove redundant module checks and references."
Jenkins2 [Mon, 29 Jan 2018 18:39:34 +0000 (12:39 -0600)]
Merge "Remove redundant module checks and references."

19 months agoMerge "Update sounds release to fix siren7 and siren14 files."
Jenkins2 [Mon, 29 Jan 2018 17:45:56 +0000 (11:45 -0600)]
Merge "Update sounds release to fix siren7 and siren14 files."

19 months agoMerge "core: Fix unused variable error in handle_show_sysinfo."
Jenkins2 [Mon, 29 Jan 2018 17:45:27 +0000 (11:45 -0600)]
Merge "core: Fix unused variable error in handle_show_sysinfo."

19 months agoMerge "core: Tweak startup order."
Jenkins2 [Mon, 29 Jan 2018 16:49:58 +0000 (10:49 -0600)]
Merge "core: Tweak startup order."

19 months agoMerge "editline: Avoid shifting a negative signed value."
Jenkins2 [Mon, 29 Jan 2018 16:44:44 +0000 (10:44 -0600)]
Merge "editline: Avoid shifting a negative signed value."

19 months agoBuildSystem: Enable autotools in FreeBSD.
Alexander Traud [Mon, 29 Jan 2018 16:20:39 +0000 (17:20 +0100)]
BuildSystem: Enable autotools in FreeBSD.

In the current versions of FreeBSD, the apps of GNU autotools do not need to
be called with a version anymore. The latest version can be invoked directly.
Additionally, the script ./ asked for autoconf 2.62 and
automake 1.9, versions which are not available as port anymore.


Change-Id: Id7b94b80e78cc943a40ba79b697e3f70019820a7

19 months agoMerge "headers: Consistent use of typeof and/or __typeof__."
Jenkins2 [Mon, 29 Jan 2018 16:07:33 +0000 (10:07 -0600)]
Merge "headers: Consistent use of typeof and/or __typeof__."

19 months agoapp_voicemail: Avoid always true when using pointer address.
Alexander Traud [Mon, 29 Jan 2018 16:00:52 +0000 (17:00 +0100)]
app_voicemail: Avoid always true when using pointer address.

clang 4.0 warned about this.


Change-Id: I213f230607d7fbe97c0f5f2d60da9cbf5a2d8231

19 months agoMerge "loader: Correct overly strict startup checks."
George Joseph [Mon, 29 Jan 2018 15:49:15 +0000 (09:49 -0600)]
Merge "loader: Correct overly strict startup checks."

19 months agoMerge "BuildSystem: Remove unused variables."
Jenkins2 [Mon, 29 Jan 2018 15:39:56 +0000 (09:39 -0600)]
Merge "BuildSystem: Remove unused variables."

19 months agoMerge "install_prereq: Download latest Jansson."
Jenkins2 [Mon, 29 Jan 2018 15:28:04 +0000 (09:28 -0600)]
Merge "install_prereq: Download latest Jansson."

19 months agoinstall_prereq: Update RHEL/CentOS/Fedora libraries.
Alexander Traud [Fri, 19 Jan 2018 11:13:58 +0000 (12:13 +0100)]
install_prereq: Update RHEL/CentOS/Fedora libraries.

 automake git ncurses-devel pjproject-devel sqlite2-devel libsqlite3x-devel

 radiusclient-ng-devel to radcli-devel
 gmime22-devel to gmime-dev

 alsa-lib-devel bash binutils-devel bison doxygen flex hoard make pkgconfig
 speexdsp-devel uriparser-devel uw-imap-devel wget xmlstarlet zlib-devel
 codec2-devel fftw-devel libsndfile-devel unbound-devel

Reported by: Said Masoud

Change-Id: I05bb0af98ae532b2d5f37478e38b8f0762b1c035

19 months agoBuildSystem: Remove unused variables.
Alexander Traud [Sun, 28 Jan 2018 11:20:26 +0000 (12:20 +0100)]
BuildSystem: Remove unused variables.

Because of a copy-and-paste from the script build_tools/download_externals,
the script build_tools/list_valid_installed_externals got its local variables.
However in the latter, three variables were not used actually.

Change-Id: I252de5a98c17ea54459174875357c22c2eebe8d5

19 months agoloader: Use ast_cli_completion_add for 'module load' completion.
Corey Farrell [Thu, 25 Jan 2018 18:06:12 +0000 (13:06 -0500)]
loader: Use ast_cli_completion_add for 'module load' completion.

This addresses all performance issues with 'module load' completion.  In
addition to using ast_cli_completion_add we stop using libedit's
filename_completion_function, instead using ast_file_read_dir.  This
ensures all results are produced from a single call to opendir.

Change-Id: I8bf51ffaa7ef1606f3bd1b5bb13f1905d72c6134

19 months agocore: Fix unused variable error in handle_show_sysinfo.
Alexander Traud [Sat, 27 Jan 2018 15:44:21 +0000 (16:44 +0100)]
core: Fix unused variable error in handle_show_sysinfo.

The previous fix broke the case
which occurs on FreeBSD 11.1 for example.


Change-Id: If77c39bc75f0b83a6c8a24ecb2fa69be8846160a

19 months agoeditline: Avoid shifting a negative signed value.
Alexander Traud [Sat, 27 Jan 2018 14:54:24 +0000 (15:54 +0100)]
editline: Avoid shifting a negative signed value.

clang 4.0 warned about this.


Change-Id: Ie2725048c661c1792d8b1d498575144350b6e9ba

19 months agoheaders: Consistent use of typeof and/or __typeof__.
Alexander Traud [Sat, 27 Jan 2018 09:25:11 +0000 (10:25 +0100)]
headers: Consistent use of typeof and/or __typeof__.

Because of a copy-and-paste error, the Asterisk project was using __typeof
instead of typeof. It works because typeof, __typeof, and __typeof__ are
supported by GCC, but here the escaped variant was not intended. Therefore,
for consistence, we change this to typeof.

Change-Id: I2a962c3e596e882f691a19345445b14571a5f07c

19 months agoMerge "Add missing OPTIONAL_API and ARI dependences."
Jenkins2 [Fri, 26 Jan 2018 23:40:56 +0000 (17:40 -0600)]
Merge "Add missing OPTIONAL_API and ARI dependences."

19 months agoUpdate sounds release to fix siren7 and siren14 files.
Richard Mudgett [Thu, 25 Jan 2018 00:25:04 +0000 (18:25 -0600)]
Update sounds release to fix siren7 and siren14 files.


Change-Id: I2fb564258cd4db0f35952ad48b8687355c2dcad3

19 months agoBuildSystem: Raise autoconf version requirement to 2.60a.
Alexander Traud [Mon, 15 Jan 2018 17:08:24 +0000 (18:08 +0100)]
BuildSystem: Raise autoconf version requirement to 2.60a.

AC_COMPUTE_INT requires at least autoconf 2.60a.

This affects only those who contribute to Asterisk, only those who had to use
the script ./ Furthermore, this change just makes sure nobody is
using a too old autoconf.


Change-Id: Ibca850e2fe0e77d935207bd959bacf7197d7f637

19 months agoinstall_prereq: Download latest Jansson.
Alexander Traud [Fri, 26 Jan 2018 12:48:29 +0000 (13:48 +0100)]
install_prereq: Download latest Jansson.


Change-Id: I65c587534c0ae364f063d68da1bed40bb3d5e8aa

19 months agocore: Tweak startup order.
Corey Farrell [Mon, 1 Jan 2018 21:59:57 +0000 (16:59 -0500)]
core: Tweak startup order.

Move initialization of units which do not require configuration to occur
before preload modules.  This leaves only units which load config between
module preload and regular load stages.

Change-Id: I1d15384acad16a22c3498124421af474fa517478

19 months agoBuild System: Require __sync or __atomic functions.
Corey Farrell [Thu, 25 Jan 2018 07:37:32 +0000 (02:37 -0500)]
Build System: Require __sync or __atomic functions.

This change causes the configure script to throw an error if neither
__sync nor __atomic builtin functions are available.


Change-Id: Ie01a281e0f5c41dfeeb5f250c1ccea8752f56ef9

19 months agoMerge "CHANGES: Add AMI action 'PJSIPShowContacts' note."
Jenkins2 [Thu, 25 Jan 2018 13:56:31 +0000 (07:56 -0600)]
Merge "CHANGES: Add AMI action 'PJSIPShowContacts' note."

19 months agoMerge "install_prereq: For PJProject, point users to configure script."
Jenkins2 [Thu, 25 Jan 2018 13:46:31 +0000 (07:46 -0600)]
Merge "install_prereq: For PJProject, point users to configure script."

19 months agoloader: Correct overly strict startup checks.
Corey Farrell [Thu, 25 Jan 2018 04:44:09 +0000 (23:44 -0500)]
loader: Correct overly strict startup checks.

The code which handled loading modules had too many situations which
would result in halting Asterisk startup.  Treat most errors as declines
instead of failures.  The exception is when the module load function
returns AST_MODULE_LOAD_FAILURE or an invalid code.

Clear the missingdeps vector when appropriate to ensure the next loop
starts clean.


Change-Id: I45547d9641fd45bd86d80250224417625631ad84

19 months agoBuild System: Add support for __atomic built-in operators.
Corey Farrell [Thu, 25 Jan 2018 00:49:02 +0000 (19:49 -0500)]
Build System: Add support for __atomic built-in operators.

Add a check to for __atomic_fetch_add support.  If found
use the __atomic built-in operators for ast_atomic_dec_and_test and


Change-Id: I65b4feb02bae368904ed0fb03f585c05f50a690e

19 months agoRemove redundant module checks and references.
Corey Farrell [Fri, 29 Dec 2017 08:57:17 +0000 (03:57 -0500)]
Remove redundant module checks and references.

This removes references that are no longer needed due to automatic
references created by module dependencies.

In addition this removes most calls to ast_module_check as they were
checking modules which are listed as dependencies.

Change-Id: I332a6e8383d4c72c8e89d988a184ab8320c4872e

19 months agoCHANGES: Add AMI action 'PJSIPShowContacts' note.
Richard Mudgett [Wed, 24 Jan 2018 16:30:19 +0000 (10:30 -0600)]
CHANGES: Add AMI action 'PJSIPShowContacts' note.


Change-Id: If6af275764741a11030f0a4fd324fa29b376d74e

19 months agoMerge "res_pjsip: Add AMI action 'PJSIPShowContacts'"
Jenkins2 [Wed, 24 Jan 2018 13:56:50 +0000 (07:56 -0600)]
Merge "res_pjsip: Add AMI action 'PJSIPShowContacts'"

19 months agoMerge "install_prereq: Support package manager DNF and yum option strict=1."
Jenkins2 [Wed, 24 Jan 2018 13:48:58 +0000 (07:48 -0600)]
Merge "install_prereq: Support package manager DNF and yum option strict=1."

19 months agoMerge "res_config_mysql: Avoid the header mysql_version.h."
Jenkins2 [Tue, 23 Jan 2018 18:23:43 +0000 (12:23 -0600)]
Merge "res_config_mysql: Avoid the header mysql_version.h."

19 months agoMerge "install_prereq: Update Debian/Ubuntu libraries."
Jenkins2 [Tue, 23 Jan 2018 15:58:52 +0000 (09:58 -0600)]
Merge "install_prereq: Update Debian/Ubuntu libraries."

19 months agores_pjsip: Add AMI action 'PJSIPShowContacts'
Sungtae Kim [Sun, 14 Jan 2018 18:33:15 +0000 (19:33 +0100)]
res_pjsip: Add AMI action 'PJSIPShowContacts'

Add an AMI action which provides information on all
configured Contacts.


Change-Id: I2eed42c74bbc725fad26b8b33b1a5b3161950c73