asterisk/asterisk.git
3 years agobridge_simple.c: Fix stream topology handling.
Richard Mudgett [Tue, 20 Feb 2018 19:11:23 +0000 (13:11 -0600)]
bridge_simple.c: Fix stream topology handling.

The handling of stream topologies was not protected by channel locks in
simple_bridge_request_stream_topology_change().

* Fixed topology handling to be protected by channel locks where needed in
simple_bridge_request_stream_topology_change().

ASTERISK-27692

Change-Id: Ica5d78a6c7ecf4f0b95fb16de28d3889b32c4776

3 years agoMerge "AST-2018-005: res_pjsip_transport_management: Move to core"
George Joseph [Wed, 21 Feb 2018 16:42:28 +0000 (10:42 -0600)]
Merge "AST-2018-005: res_pjsip_transport_management:  Move to core"

3 years agoMerge "AST-2018-005: Fix tdata leaks when calling pjsip_endpt_send_response(2)"
George Joseph [Wed, 21 Feb 2018 16:42:19 +0000 (10:42 -0600)]
Merge "AST-2018-005: Fix tdata leaks when calling pjsip_endpt_send_response(2)"

3 years agoMerge "AST-2018-005: Add a check for NULL tdata in ast_sip_failover_request"
George Joseph [Wed, 21 Feb 2018 16:42:07 +0000 (10:42 -0600)]
Merge "AST-2018-005: Add a check for NULL tdata in ast_sip_failover_request"

3 years agoMerge "AST-2018-001: rtp / channel: Don't allow an unnegotiated format to be passed...
Joshua Colp [Wed, 21 Feb 2018 16:38:49 +0000 (10:38 -0600)]
Merge "AST-2018-001: rtp / channel: Don't allow an unnegotiated format to be passed up."

3 years agoAST-2018-005: res_pjsip_transport_management: Move to core
George Joseph [Tue, 6 Feb 2018 18:07:18 +0000 (11:07 -0700)]
AST-2018-005: res_pjsip_transport_management:  Move to core

Since res_pjsip_transport_management provides several attack
mitigation features, its functionality moved to res_pjsip and
this module has been removed.  This way the features will always
be available if res_pjsip is loaded.

ASTERISK-27618
Reported By: Sandro Gauci

Change-Id: I21a2d33d9dda001452ea040d350d7a075f9acf0d

3 years agoAST-2018-005: Fix tdata leaks when calling pjsip_endpt_send_response(2)
George Joseph [Tue, 6 Feb 2018 17:28:49 +0000 (10:28 -0700)]
AST-2018-005: Fix tdata leaks when calling pjsip_endpt_send_response(2)

pjsip_distributor:
   authenticate() creates a tdata and uses it to send a challenge or
   failure response.  When pjsip_endpt_send_response2() succeeds, it
   automatically decrements the tdata ref count but when it fails, it
   doesn't.  Since we weren't checking for a return status, we weren't
   decrementing the count ourselves on error and were therefore leaking
   tdatas.

res_pjsip_session:
   session_reinvite_on_rx_request wasn't decrementing the ref count
   if an error happened while sending a 491 response.
   pre_session_setup wasn't decrementing the ref count if
   while sending an error after a pjsip_inv_verify_request failure.

res_pjsip:
   ast_sip_send_response wasn't decrementing the ref count on error.

ASTERISK-27618
Reported By: Sandro Gauci

Change-Id: Iab33a6c7b6fba96148ed465b690ba8534ac961bf

3 years agoAST-2018-005: Add a check for NULL tdata in ast_sip_failover_request
George Joseph [Tue, 6 Feb 2018 17:21:32 +0000 (10:21 -0700)]
AST-2018-005: Add a check for NULL tdata in ast_sip_failover_request

It was discovered that there are some corner cases where a pjsip tsx
might have no last_tx so calling ast_sip_failover_request with
a NULL last_tx as its tdata would cause a crash.

ASTERISK-27618
Reported By:  Sandro Gauci

Change-Id: Ic2b63f6d4ae617c4c19dcdec2a7a6156b54fd15b

3 years agoAST-2018-004: Restrict the number of Accept headers in a SUBSCRIBE.
Joshua Colp [Wed, 7 Feb 2018 14:09:14 +0000 (14:09 +0000)]
AST-2018-004: Restrict the number of Accept headers in a SUBSCRIBE.

When receiving a SUBSCRIBE request the Accept headers from it are
stored locally. This operation has a fixed limit of 32 Accept headers
but this limit was not enforced. As a result it was possible for
memory outside of the allocated space to get written to resulting
in a crash.

This change enforces the limit so only 32 Accept headers are
processed.

ASTERISK-27640
Reported By: Sandro Gauci

Change-Id: I99a814b10b554b13a6021ccf41111e5bc95e7301

3 years agoAST-2018-001: rtp / channel: Don't allow an unnegotiated format to be passed up.
Joshua Colp [Sat, 13 Jan 2018 14:04:33 +0000 (14:04 +0000)]
AST-2018-001: rtp / channel: Don't allow an unnegotiated format to be passed up.

When an RTP packet is received by an RTP engine it has to map the
payload into the Asterisk format. The code was incorrectly checking
our own static list for ALL payloads if it couldn't find a negotiated one.
This included dynamic payloads. If the payload mapped to a format
of a different type (for example receiving a video packet on an audio
RTP instance) then the core stream code could cause a crash if a legacy
channel driver was in use as no stream would be present.

To provide further protection the core stream code will no longer assume
that a video or audio frame will always have a stream for legacy channel
drivers. If no stream is present the frame is dropped.

ASTERISK-27488

Change-Id: I022556f524ad8379ee73f14037040af17ea3316a

3 years agoMerge "channel.c: Fix typo."
Jenkins2 [Wed, 21 Feb 2018 12:47:33 +0000 (06:47 -0600)]
Merge "channel.c: Fix typo."

3 years agoMerge "res_http_websocket: Don't leak memory on read failure"
Jenkins2 [Tue, 20 Feb 2018 19:55:58 +0000 (13:55 -0600)]
Merge "res_http_websocket: Don't leak memory on read failure"

3 years agochannel.c: Fix typo.
Richard Mudgett [Tue, 20 Feb 2018 19:11:11 +0000 (13:11 -0600)]
channel.c: Fix typo.

Change-Id: I4eeedf89085697e81c354eb92d546686c67b0b5b

3 years agoMerge "doc/lang/language-criteria.txt: Link to wiki."
Jenkins2 [Tue, 20 Feb 2018 16:34:37 +0000 (10:34 -0600)]
Merge "doc/lang/language-criteria.txt: Link to wiki."

3 years agoMerge "core: Rename sounds_index.c to sounds.c."
Jenkins2 [Tue, 20 Feb 2018 13:05:55 +0000 (07:05 -0600)]
Merge "core: Rename sounds_index.c to sounds.c."

3 years agoMerge "BuildSystem: Allow newer autotools on OpenBSD."
Joshua Colp [Tue, 20 Feb 2018 12:20:52 +0000 (06:20 -0600)]
Merge "BuildSystem: Allow newer autotools on OpenBSD."

3 years agoMerge "config: Fix locking for extconfig reload."
Jenkins2 [Tue, 20 Feb 2018 12:14:08 +0000 (06:14 -0600)]
Merge "config: Fix locking for extconfig reload."

3 years agoMerge "BuildSystem: Use single bootstrap.sh for Asterisk and menuselect."
Joshua Colp [Tue, 20 Feb 2018 11:11:29 +0000 (05:11 -0600)]
Merge "BuildSystem: Use single bootstrap.sh for Asterisk and menuselect."

3 years agoMerge "BuildSystem: Fix a typo related to ./configure --prefix=<path> on OpenBSD."
Joshua Colp [Tue, 20 Feb 2018 11:11:14 +0000 (05:11 -0600)]
Merge "BuildSystem: Fix a typo related to ./configure --prefix=<path> on OpenBSD."

3 years agodoc/lang/language-criteria.txt: Link to wiki.
Corey Farrell [Tue, 20 Feb 2018 10:31:26 +0000 (05:31 -0500)]
doc/lang/language-criteria.txt: Link to wiki.

This document is out of date and is superseded by content on the
Asterisk wiki.

ASTERISK-24386 #close

Change-Id: Idbf95b27b096c205251e1bbb560c79224ba81822

3 years agoMerge "optional_api: Refactor to use vector's and standard allocators."
Jenkins2 [Tue, 20 Feb 2018 02:40:20 +0000 (20:40 -0600)]
Merge "optional_api: Refactor to use vector's and standard allocators."

3 years agoMerge "rtp_engine: Load format name / mime type in uppercase again."
Jenkins2 [Tue, 20 Feb 2018 02:00:24 +0000 (20:00 -0600)]
Merge "rtp_engine: Load format name / mime type in uppercase again."

3 years agoMerge "install_prereq: Update OpenBSD libraries."
Jenkins2 [Tue, 20 Feb 2018 01:19:32 +0000 (19:19 -0600)]
Merge "install_prereq: Update OpenBSD libraries."

3 years agoMerge "BuildSystem: Enable IMAP storage on OpenBSD."
Jenkins2 [Tue, 20 Feb 2018 00:09:11 +0000 (18:09 -0600)]
Merge "BuildSystem: Enable IMAP storage on OpenBSD."

3 years agoMerge "res_pjsip_header_funcs: Various cleanups"
Jenkins2 [Tue, 20 Feb 2018 00:02:32 +0000 (18:02 -0600)]
Merge "res_pjsip_header_funcs: Various cleanups"

3 years agoMerge "res_pjsip: Use pjsip_sip_uri.user_param instead of other_param"
Jenkins2 [Mon, 19 Feb 2018 14:54:56 +0000 (08:54 -0600)]
Merge "res_pjsip: Use pjsip_sip_uri.user_param instead of other_param"

3 years agores_http_websocket: Don't leak memory on read failure
Sean Bright [Sun, 18 Feb 2018 16:27:38 +0000 (11:27 -0500)]
res_http_websocket: Don't leak memory on read failure

Change-Id: Ic449ea832bc81a1671c0e910c5fbe8c683e3da89

3 years agoMerge "Deprecate legacy modules."
Jenkins2 [Mon, 19 Feb 2018 12:59:00 +0000 (06:59 -0600)]
Merge "Deprecate legacy modules."

3 years agoMerge "manager: Add AMI event Load/Unload"
Jenkins2 [Mon, 19 Feb 2018 12:43:27 +0000 (06:43 -0600)]
Merge "manager: Add AMI event Load/Unload"

3 years agoMerge "contrib/script/sip_to_pjsip: add support for realtime"
Jenkins2 [Mon, 19 Feb 2018 12:33:24 +0000 (06:33 -0600)]
Merge "contrib/script/sip_to_pjsip: add support for realtime"

3 years agoMerge "res_pjsip: Endpoint destruction does not free DTLS configuration"
Jenkins2 [Mon, 19 Feb 2018 12:23:35 +0000 (06:23 -0600)]
Merge "res_pjsip: Endpoint destruction does not free DTLS configuration"

3 years agocore: Rename sounds_index.c to sounds.c.
Corey Farrell [Mon, 19 Feb 2018 09:57:45 +0000 (04:57 -0500)]
core: Rename sounds_index.c to sounds.c.

This will make the source filename match the 'module reload sounds'
command.  This will allow conversion to a built-in module in Asterisk 16
without needing to redefine AST_MODULE.

Change-Id: Ifb8e489575b27eb33d8c0b6a531f266670557f6e

3 years agoconfig: Fix locking for extconfig reload.
Corey Farrell [Mon, 19 Feb 2018 08:49:45 +0000 (03:49 -0500)]
config: Fix locking for extconfig reload.

Expand locking to include full reload process for extconfig to ensure
nothing can read the config mappings between clearing and reloading.

Change-Id: I378316bad04f1b599ea82d0fef62b8978a644b92

3 years agores_pjsip_header_funcs: Various cleanups
Sean Bright [Thu, 15 Feb 2018 20:09:33 +0000 (15:09 -0500)]
res_pjsip_header_funcs: Various cleanups

 * Prefer strcasecmp() over stricmp()
 * Use a list with no lock since we never actually lock
 * Minor cleanups to error messages

Change-Id: I8446f44795ee8f3072e1c1f9193c6912dfc0c42b

3 years agortp_engine: Load format name / mime type in uppercase again.
Alexander Traud [Sat, 17 Feb 2018 14:49:15 +0000 (15:49 +0100)]
rtp_engine: Load format name / mime type in uppercase again.

This reverts a previous change partly.

ASTERISK-27689

Change-Id: Ia3d2f282db6995be8c1c253b5d52f6038761e8af

3 years agoBuildSystem: Use single bootstrap.sh for Asterisk and menuselect.
Corey Farrell [Fri, 16 Feb 2018 23:58:35 +0000 (18:58 -0500)]
BuildSystem: Use single bootstrap.sh for Asterisk and menuselect.

This causes the root bootstrap.sh script to generate configure scripts
for both Asterisk and menuselect.  This ensures that both configure
scripts are generated with the same version of autotools and avoids
situations where shared autoconf macros get modified without
regenerating the menuselect script.

Change-Id: I2bfd8537bbb63b3d46b11efabbb15eaaf9ef731a

3 years agoMerge "bridge_roles: Use a non-locking linked list where appropriate"
Jenkins2 [Fri, 16 Feb 2018 23:48:54 +0000 (17:48 -0600)]
Merge "bridge_roles: Use a non-locking linked list where appropriate"

3 years agores_pjsip: Endpoint destruction does not free DTLS configuration
Sean Bright [Fri, 16 Feb 2018 19:33:06 +0000 (14:33 -0500)]
res_pjsip: Endpoint destruction does not free DTLS configuration

ASTERISK-27679 #close
Reported by: Mak Dee

Change-Id: I89a2783a11be0763bf123d1619ed176b6225cf42

3 years agoinstall_prereq: Update OpenBSD libraries.
Alexander Traud [Fri, 16 Feb 2018 18:42:01 +0000 (19:42 +0100)]
install_prereq: Update OpenBSD libraries.

deleted
 jack sqlite

renamed
 freetds-0.63p1-msdblib to freetds
 mysql-client to mariadb-client

added
 bison bzip2 c-client doxygen e2fsprogs graphviz gsm libical jansson libltdl
 lua neon net-snmp libsrtp portaudio-svn postgresql-client python speexdsp
 subversion uriparser xmlstarlet
 fftw3 libsndfile

ASTERISK-27684

Change-Id: I26bdcb0a1d0e484a8dad1052da97f194aefd3370

3 years agoBuildSystem: Allow newer autotools on OpenBSD.
Alexander Traud [Fri, 16 Feb 2018 18:30:45 +0000 (19:30 +0100)]
BuildSystem: Allow newer autotools on OpenBSD.

ASTERISK-27683

Change-Id: I5ec9dafbb0c16b6f2740c641980bc2eaaf995624

3 years agoMerge "res_calendar: Specialized calendars depend on symbols of general calendar."
Jenkins2 [Fri, 16 Feb 2018 16:40:31 +0000 (10:40 -0600)]
Merge "res_calendar: Specialized calendars depend on symbols of general calendar."

3 years agocontrib/script/sip_to_pjsip: add support for realtime
Torrey Searle [Mon, 16 Oct 2017 12:36:50 +0000 (14:36 +0200)]
contrib/script/sip_to_pjsip: add support for realtime

Add a new script that can read from legacy realtime peers & generate
an sql file for populating pjsip endpoints, identify, and aor records.

ASTERISK-27348 #close

Change-Id: Idd3d7968a3c9c3ee7936d21acbdaf001b429bf65

3 years agoMerge "BuildSystem: Invoke ldconfig with previous path."
Jenkins2 [Fri, 16 Feb 2018 14:46:12 +0000 (08:46 -0600)]
Merge "BuildSystem: Invoke ldconfig with previous path."

3 years agoMerge "BuildSystem: Enable system provided libedit on OpenBSD."
Jenkins2 [Fri, 16 Feb 2018 14:02:30 +0000 (08:02 -0600)]
Merge "BuildSystem: Enable system provided libedit on OpenBSD."

3 years agoBuildSystem: Fix a typo related to ./configure --prefix=<path> on OpenBSD.
Alexander Traud [Fri, 16 Feb 2018 13:52:36 +0000 (14:52 +0100)]
BuildSystem: Fix a typo related to ./configure --prefix=<path> on OpenBSD.

Reported by: Stuart Henderson

Change-Id: Ieae8624f48b6ae78cf29930b9a45a3c842c7a764

3 years agoMerge "BuildSystem: Remove chan_h323 leftovers."
Jenkins2 [Fri, 16 Feb 2018 13:37:23 +0000 (07:37 -0600)]
Merge "BuildSystem: Remove chan_h323 leftovers."

3 years agores_calendar: Specialized calendars depend on symbols of general calendar.
Alexander Traud [Fri, 16 Feb 2018 11:58:17 +0000 (12:58 +0100)]
res_calendar: Specialized calendars depend on symbols of general calendar.

ASTERISK-27680

Change-Id: Ifb77912e424fe3710a025c18526fada673ec0b79

3 years agoBuildSystem: Enable IMAP storage on OpenBSD.
Alexander Traud [Fri, 16 Feb 2018 12:41:35 +0000 (13:41 +0100)]
BuildSystem: Enable IMAP storage on OpenBSD.

ASTERISK-27681
Reported by: Stuart Henderson

Change-Id: Ifb6b614acb251b695b9417d76510e73eb335b679

3 years agoBuildSystem: Enable system provided libedit on OpenBSD.
Alexander Traud [Fri, 16 Feb 2018 10:50:54 +0000 (11:50 +0100)]
BuildSystem: Enable system provided libedit on OpenBSD.

ASTERISK-27677

Change-Id: I0854e3616d1361ae9b6907d3d3444a02784ac62b

3 years agobridge_roles: Use a non-locking linked list where appropriate
Sean Bright [Thu, 15 Feb 2018 20:30:35 +0000 (15:30 -0500)]
bridge_roles: Use a non-locking linked list where appropriate

Also explicitly initialize with the AST_LIST_HEAD_NOLOCK_INIT macro for
clarity.

Change-Id: I4bc39ec33bc3ff77e1a971a01ace87deb965be3f

3 years agores_pjsip: Use pjsip_sip_uri.user_param instead of other_param
Sean Bright [Thu, 15 Feb 2018 19:29:23 +0000 (14:29 -0500)]
res_pjsip: Use pjsip_sip_uri.user_param instead of other_param

There is a dedicated slot in the pjsip_sip_uri for the 'user'
parameter, so use that instead of adding to the list of generic URI
parameters.

Change-Id: I0a0ce8a60ecee27489735bf56fd707719d8c2ed6

3 years agoMerge "BuildSystem: Do not warn when bash is not installed."
Joshua Colp [Thu, 15 Feb 2018 12:17:47 +0000 (06:17 -0600)]
Merge "BuildSystem: Do not warn when bash is not installed."

3 years 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."

3 years agoBuildSystem: Remove chan_h323 leftovers.
Alexander Traud [Mon, 12 Feb 2018 13:37:41 +0000 (14:37 +0100)]
BuildSystem: Remove chan_h323 leftovers.

ASTERISK-27670

Change-Id: I07a8ef8bbd6001e25711fa1bff152eb6c9efa729

3 years agoBuildSystem: Invoke ldconfig with previous path.
Alexander Traud [Wed, 17 Jan 2018 14:17:38 +0000 (15:17 +0100)]
BuildSystem: Invoke ldconfig with previous path.

On OpenBSD, gmake uninstall{-all} registered only libraries from /usr/lib and
lost those from /usr/local/lib. Instead, invoke ldconfig on a path.

ASTERISK-27595

Change-Id: I4aa2c0b5e07119d1a556f8ff6349eaf09e986888

3 years agoDeprecate legacy modules.
Corey Farrell [Fri, 22 Dec 2017 21:27:52 +0000 (16:27 -0500)]
Deprecate legacy modules.

* app_fax (replaced by res_fax).
* res_config_sqlite (replaced by res_config_sqlite3).
* res_monitor (replaced by app_mixmonitor).

This is related to ASTERISK~23657 but does not resolve that ticket.
Resolving that ticket would require complete removal of res_monitor.

ASTERISK-27671 #close

Change-Id: I16a3edd61fc1abd4a7b2e9357693ed663f62dd49

3 years agoBuildSystem: Do not warn when bash is not installed.
Alexander Traud [Sun, 28 Jan 2018 09:02:41 +0000 (10:02 +0100)]
BuildSystem: Do not warn when bash is not installed.

ASTERISK-27631

Change-Id: Iefdf268b0b98c3e7d8089ba87cf78136ac1d785b

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

3 years 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."

3 years 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."

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

3 years 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."

3 years 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."

3 years 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

3 years agooptional_api: Refactor to use vector's and standard allocators.
Corey Farrell [Tue, 26 Dec 2017 01:32:53 +0000 (20:32 -0500)]
optional_api: Refactor to use vector's and standard allocators.

* Replace ad-hoc array management with macro's from vector.h.
* Remove redundent logger messages.
* Use normal Asterisk allocators instead of directly using libc
  allocators.
* Free memory when an API has no implementation or users.

Change-Id: Ic6ecb31798d4a78e7df39ece86a68b60eac05bf5

3 years 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.

ASTERISK-27666

Change-Id: Id1d0f0fa4ec94e81b332b2973d93e5a14bb4cc97

3 years 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."

3 years agomanager: Add AMI event Load/Unload
Sungtae Kim [Tue, 6 Feb 2018 20:27:55 +0000 (21:27 +0100)]
manager: Add AMI event Load/Unload

Add an AMI events Load and Unload for notify when the
module has been loaded and unloaded.

ASTERISK-27661

Change-Id: Ib916c41eddd63651952998f2f49c57c42ef87a64

3 years 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

3 years 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."

3 years 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 <http://github.com/BelledonneCommunications/bcg729> 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.

ASTERISK-27584
Reported by: Stuart Henderson

Change-Id: I88b6b18ad777bcfe2d8201187b4b90eec0a172a6

3 years 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.

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

Change-Id: I27e09bb875fdd56423bd9fae1be85fddb428eb96

3 years 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

3 years 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.

ASTERISK-27642

Change-Id: I9ec3e144d425a976c02811bd23cd0c533d2eca4e

3 years 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.

ASTERISK-27555

Change-Id: Idc36e91db30c0163c560d04c5a82bca5d6ce92a8

3 years 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.

ASTERISK-27656

Change-Id: I48b4970663fea98baa262593d2204ef304aaf80e

3 years 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"

3 years 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."

3 years 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."

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

3 years 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."

3 years 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>".

ASTERISK-27651

Change-Id: Iaf7d54a9d40194c2db060bc9b4979fab6720d977

3 years 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.

ASTERISK-27651

Change-Id: Idef2ca54d242d1b894efd3fc7b360bc6fd5bdc34

3 years 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."

3 years 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"

3 years 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."

3 years 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()"

3 years 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"

3 years 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."

3 years 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

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

res_pjsip_endpoint_identifier_user.c:
* 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().

res_pjsip_endpoint_identifier_anonymous.c:
* 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

3 years 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
aliased?

Change-Id: I98a892016ed61dcf5efeb6619fd748925103f0be

3 years 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

3 years 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

3 years 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"

3 years 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."

3 years 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
json_null().
* Fixed bad expression.

ASTERISK-27621

Change-Id: Ice58c16361f9d9e8648261c9ed5d6c8245fb0d8f

3 years 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

3 years 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

3 years 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