asterisk/asterisk.git
2 years agoBuildSystem: Depend not implicitly but explicitly on external libraries.
Alexander Traud [Tue, 6 Mar 2018 13:33:14 +0000 (14:33 +0100)]
BuildSystem: Depend not implicitly but explicitly on external libraries.

ASTERISK-27722

Change-Id: Ie7b8c30d86cb00a54d6ac4e09e6f28f42d2bd52c

2 years agoMerge "chan_unistim: NetBSD has an incompatible struct in_pktinfo."
Jenkins2 [Mon, 5 Mar 2018 18:42:56 +0000 (12:42 -0600)]
Merge "chan_unistim: NetBSD has an incompatible struct in_pktinfo."

2 years agoMerge "BuildSystem: Avoid == for comparison in ./configure."
Joshua Colp [Mon, 5 Mar 2018 18:14:44 +0000 (12:14 -0600)]
Merge "BuildSystem: Avoid == for comparison in ./configure."

2 years agoMerge "BuildSystem: Detect whether uselocale(.) is available."
Jenkins2 [Mon, 5 Mar 2018 17:49:11 +0000 (11:49 -0600)]
Merge "BuildSystem: Detect whether uselocale(.) is available."

2 years agoMerge "BuildSystem: Avoid re-defining of pthread_* on NetBSD."
Jenkins2 [Mon, 5 Mar 2018 17:29:44 +0000 (11:29 -0600)]
Merge "BuildSystem: Avoid re-defining of pthread_* on NetBSD."

2 years agoMerge "chan_sip: Emit a second ringing event to ensure channel is found."
Jenkins2 [Mon, 5 Mar 2018 15:09:29 +0000 (09:09 -0600)]
Merge "chan_sip: Emit a second ringing event to ensure channel is found."

2 years agoMerge "core: Fix handling of maximum length lines in config files."
Jenkins2 [Mon, 5 Mar 2018 14:32:35 +0000 (08:32 -0600)]
Merge "core: Fix handling of maximum length lines in config files."

2 years agoMerge "pjproject: Add cache_pools debugging option."
Jenkins2 [Mon, 5 Mar 2018 14:09:11 +0000 (08:09 -0600)]
Merge "pjproject: Add cache_pools debugging option."

2 years agochan_unistim: NetBSD has an incompatible struct in_pktinfo.
Alexander Traud [Sat, 3 Mar 2018 15:06:13 +0000 (16:06 +0100)]
chan_unistim: NetBSD has an incompatible struct in_pktinfo.

ASTERISK-27714
Reported by: John Nemeth

Change-Id: I1b84a89315a5f61222123d21bf35c59224da8990

2 years agoBuildSystem: Detect whether uselocale(.) is available.
Alexander Traud [Sat, 3 Mar 2018 12:56:03 +0000 (13:56 +0100)]
BuildSystem: Detect whether uselocale(.) is available.

ASTERISK-27712
Reported by: Joerg Sonnenberger, D'Arcy Cain

Change-Id: Idf1c9d43617a3e13028b95b313415903d80ef807

2 years agoBuildSystem: Avoid re-defining of pthread_* on NetBSD.
Alexander Traud [Sat, 3 Mar 2018 09:53:12 +0000 (10:53 +0100)]
BuildSystem: Avoid re-defining of pthread_* on NetBSD.

ASTERISK-27711

Change-Id: Idc9194035b2958b99f6b01eb5b438d45a074565b

2 years agoBuildSystem: Avoid == for comparison in ./configure.
Alexander Traud [Fri, 2 Mar 2018 11:12:17 +0000 (12:12 +0100)]
BuildSystem: Avoid == for comparison in ./configure.

ASTERISK-27709
Reported by: John Nemeth

Change-Id: I11b1ae8fd404c04066f1458f5d71f9536359d58d

2 years agoMerge "gitreview: Reorder and add padding."
Jenkins2 [Thu, 1 Mar 2018 15:08:55 +0000 (09:08 -0600)]
Merge "gitreview: Reorder and add padding."

2 years agoMerge "res_pjsip_refer.c: Fix attended transfer race condition crash."
Jenkins2 [Thu, 1 Mar 2018 14:44:21 +0000 (08:44 -0600)]
Merge "res_pjsip_refer.c: Fix attended transfer race condition crash."

2 years agopjproject: Add cache_pools debugging option.
Richard Mudgett [Tue, 27 Feb 2018 21:40:18 +0000 (15:40 -0600)]
pjproject: Add cache_pools debugging option.

The pool cache gets in the way of finding use after free errors of memory
pool contents.  Tools like valgrind and MALLOC_DEBUG don't know when a
pool is released because it gets put into the cache instead of being
freed.

* Added the "cache_pools" option to pjproject.conf.  Disabling the option
helps track down pool content mismanagement when using valgrind or
MALLOC_DEBUG.  The cache gets in the way of determining if the pool
contents are used after free and who freed it.

To disable the pool caching simply disable the cache_pools option in
pjproject.conf and restart Asterisk.

Sample pjproject.conf setting:
[startup]
cache_pools=no

* Made current users of the caching pool factory initialization and
destruction calls call common routines to create and destroy cached pools.

ASTERISK-27704

Change-Id: I64d5befbaeed2532f93aa027a51eb52347d2b828

2 years agoMerge "Add extended properties to rtp_engine for RTP retransmission support."
Jenkins2 [Mon, 26 Feb 2018 01:19:53 +0000 (19:19 -0600)]
Merge "Add extended properties to rtp_engine for RTP retransmission support."

2 years agogitreview: Reorder and add padding.
Corey Farrell [Wed, 31 Jan 2018 17:48:08 +0000 (12:48 -0500)]
gitreview: Reorder and add padding.

Change-Id: I459dc320a8c9452a01eed6f403d786741587c890

2 years agoast_coredumper: Minor fixes
George Joseph [Fri, 23 Feb 2018 20:58:54 +0000 (13:58 -0700)]
ast_coredumper:  Minor fixes

* Fix --tarball-config so the option doesn't cause an error.

* Allow for missing /etc/os-release.

* Add a sleep between tarballing the coredump and removing the
  output directory to allow the filesystem to settle.

Change-Id: I73e03b13087978bcc7f6bc9f45753990f82d9d77

2 years agoAdd extended properties to rtp_engine for RTP retransmission support.
Ben Ford [Thu, 22 Feb 2018 20:27:26 +0000 (14:27 -0600)]
Add extended properties to rtp_engine for RTP retransmission support.

A couple of additional properties are needed in rtp_engine to enable
support for packet retransmission: AST_RTP_PROPERTY_RETRANS_RECV and
AST_RTP_PROPERTY_RETRANS_SEND. These will both be enabled automatically
if an endpoint has the webrtc option enabled. While this adds no
functionality currently, it will serve as a building block for future
changes for RTP retransmission support.

For more information, refer to the wiki page:
https://wiki.asterisk.org/wiki/display/AST/WebRTC+User+Experience+Improvements

Change-Id: Ic598acd042a045f9d10e5bdccb66f4efc9e587cc

2 years agocore: Fix handling of maximum length lines in config files.
Corey Farrell [Fri, 23 Feb 2018 16:09:46 +0000 (11:09 -0500)]
core: Fix handling of maximum length lines in config files.

When a line is the maximum length "\n" is found at sizeof(buf) - 2 since
the last character is actually the null terminator.  In addition if a
line was exactly 8190 plus a multiple of 8192 characters long the config
parser would skip the following line.

Additionally fix comment in voicemail.conf sample config.  It previously
stated that emailbody can only contain up to 512 characters which is
always wrong.  The buffer is normally 8192 characters unless LOW_MEMORY
is enabled then it is 512 characters.  The updated comment states that
the line can be up to 8190 or 510 characters since the line feed and
NULL terminator each use a character.

ASTERISK-26688 #close

Change-Id: I80864a0d40d2e2d8cd79d72af52a8f0a3a99c015

2 years agoMerge "install_prereq: Update FreeBSD libraries."
Jenkins2 [Fri, 23 Feb 2018 15:19:06 +0000 (09:19 -0600)]
Merge "install_prereq: Update FreeBSD libraries."

2 years agoMerge "func_audiohookinherit: Remove deprecated module."
Joshua Colp [Fri, 23 Feb 2018 15:02:08 +0000 (09:02 -0600)]
Merge "func_audiohookinherit: Remove deprecated module."

2 years agoMerge "res_rtp_asterisk: Fix ICE candidate nomination"
George Joseph [Fri, 23 Feb 2018 14:26:50 +0000 (08:26 -0600)]
Merge "res_rtp_asterisk: Fix ICE candidate nomination"

2 years agores_pjsip_refer.c: Fix attended transfer race condition crash.
Richard Mudgett [Thu, 22 Feb 2018 19:53:20 +0000 (13:53 -0600)]
res_pjsip_refer.c: Fix attended transfer race condition crash.

The transferrer's session channel was destroyed by the transferrer's
serializer thread in a race condition with the transfer target's
serializer thread during an attended transfer.  The transfer target's
serializer was attempting to clean up a deferred end status on behalf of
the transferrer's channel when it should have passed the action to the
transferrer's serializer.  When the transfer target's serializer lost the
race then both threads wind up trying to end the transferrer's session.

* Push the ast_sip_session_end_if_deferred() call onto the transferrer's
serializer to avoid a race condition that results in a crash.  The
session_end() function that could be called by
ast_sip_session_end_if_deferred() really must be executed by the
transferrer's serializer to avoid this kind of crash.

ASTERISK-27568

Change-Id: Iacda724e7cb24d7520e49b2fd7e504aa398d7238

2 years agoMerge "bridge_simple.c: Fix stream topology handling."
Jenkins2 [Thu, 22 Feb 2018 19:34:41 +0000 (13:34 -0600)]
Merge "bridge_simple.c: Fix stream topology handling."

2 years agoinstall_prereq: Update FreeBSD libraries.
Alexander Traud [Sat, 17 Feb 2018 09:28:46 +0000 (10:28 +0100)]
install_prereq: Update FreeBSD libraries.

deleted
 autoconf gcc libsamplerate sqlite

changed
 binutils to libbfd
 freetds-devel to freetds
 gmime2 to gmime26
 mysql55-client to mysql57-client

added
 alsa-lib bison bzip2 cclient corosync doxygen libedit flex graphviz
 libhoard libical libilbc libltdl lua neon newt net-snmp
 openldap-client openssl patch pkgconf portaudio postgresql10-client
 python radcli speexdsp subversion uriparser xmlstarlet libzip

ASTERISK-27686

Change-Id: Ibe88c9b26e59c30d26cdb313a3ef01c9f37ac80d

2 years agofunc_audiohookinherit: Remove deprecated module.
Sean Bright [Thu, 22 Feb 2018 16:54:33 +0000 (11:54 -0500)]
func_audiohookinherit: Remove deprecated module.

Change-Id: Id52f719078a65c4b2eee7ab99d761eba6b6aed94

2 years agoMerge "manager.c: Fix lseek() parameter order."
Jenkins2 [Thu, 22 Feb 2018 00:42:18 +0000 (18:42 -0600)]
Merge "manager.c: Fix lseek() parameter order."

2 years agoMerge "AST-2018-006: Properly handle WebSocket frames with 0 length payload."
Kevin Harwell [Wed, 21 Feb 2018 20:11:50 +0000 (14:11 -0600)]
Merge "AST-2018-006: Properly handle WebSocket frames with 0 length payload."

2 years agoMerge "AST-2018-003: Crash with an invalid SDP fmtp attribute"
Kevin Harwell [Wed, 21 Feb 2018 20:11:39 +0000 (14:11 -0600)]
Merge "AST-2018-003: Crash with an invalid SDP fmtp attribute"

2 years agoMerge "AST-2018-002: Crash with an invalid SDP media format description"
Kevin Harwell [Wed, 21 Feb 2018 20:11:29 +0000 (14:11 -0600)]
Merge "AST-2018-002: Crash with an invalid SDP media format description"

2 years agomanager.c: Fix lseek() parameter order.
Richard Mudgett [Wed, 21 Feb 2018 18:52:39 +0000 (12:52 -0600)]
manager.c: Fix lseek() parameter order.

ASTERISK-27659

Change-Id: I04a2705d2cb7df250769967bc59e2b397a49b797

2 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

2 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"

2 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)"

2 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"

2 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."

2 years agoAST-2018-006: Properly handle WebSocket frames with 0 length payload.
Sean Bright [Mon, 5 Feb 2018 22:46:26 +0000 (17:46 -0500)]
AST-2018-006: Properly handle WebSocket frames with 0 length payload.

In ast_websocket_read() we were not adequately checking that the
payload_len was non-zero before passing it to ws_safe_read(). Calling
ws_safe_read with a len argument of 0 will result in a busy loop until
the underlying socket is closed.

ASTERISK-27658 #close

Change-Id: I9d59f83bc563f711df1a6197c57de473f6b0663a

2 years agoAST-2018-003: Crash with an invalid SDP fmtp attribute
Kevin Harwell [Wed, 31 Jan 2018 19:37:54 +0000 (13:37 -0600)]
AST-2018-003: Crash with an invalid SDP fmtp attribute

pjproject's fmtp retrieval function failed to catch invalid fmtp attributes.
Because of this Asterisk would crash if given an SDP with an invalid fmtp
attribute.

When retrieving the format this patch now makes sure the fmtp attribute is
available. If not available it now returns an error status.

ASTERISK-27583 #close

Change-Id: I5cebe000ce2d846cae3af33b6d72c416e51caf2f

2 years agoAST-2018-002: Crash with an invalid SDP media format description
Kevin Harwell [Wed, 31 Jan 2018 19:33:16 +0000 (13:33 -0600)]
AST-2018-002: Crash with an invalid SDP media format description

pjproject's media format parsing algorithm failed to catch invalid values.
Because of this Asterisk would crash if given an SDP with a invalid media
format description.

When parsing the media format description this patch now properly parses the
value and returns an error status if it can't successfully parse/convert the
value.

ASTERISK-27582 #close

Change-Id: I883b3a4ef85b6972397f7b56bf46c5779c55fdd6

2 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

2 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

2 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

2 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

2 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

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

2 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"

2 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

2 years agochan_sip: Emit a second ringing event to ensure channel is found.
Joshua Colp [Tue, 20 Feb 2018 16:33:43 +0000 (12:33 -0400)]
chan_sip: Emit a second ringing event to ensure channel is found.

When constructing a dialog-info+xml NOTIFY message a ringing channel
is found if the state is ringing and further information is placed into
the message. Due to the migration to the Stasis message bus this did
not always work as expected.

This change raises a second ringing event in such a way to guarantee
that the event is received by chan_sip and another lookup is done to
find the ringing channel.

ASTERISK-24488

Change-Id: I547a458fc59721c918cb48be060cbfc3c88bcf9c

2 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."

2 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."

2 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."

2 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."

2 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."

2 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."

2 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

2 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."

2 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."

2 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."

2 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."

2 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"

2 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"

2 years agores_rtp_asterisk: Fix ICE candidate nomination
Thomas Guebels [Mon, 19 Feb 2018 10:21:30 +0000 (11:21 +0100)]
res_rtp_asterisk: Fix ICE candidate nomination

If the ICE role is not set right away, we might have a role conflict
that stays undetected and ICE finishing with successful tests and no
candidate nominated. This was introduced by ASTERISK-27088.

To avoid this, we set the role as soon as before but only if the ICE
state permits it: still checking and not yet nominating candidates or
completed.

ASTERISK-27646

Change-Id: I5dbc69ad63cacbb067922850fbb113d479bd729c

2 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

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

2 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"

2 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"

2 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"

2 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

2 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

2 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

2 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

2 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

2 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"

2 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

2 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

2 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

2 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."

2 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

2 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."

2 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."

2 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

2 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."

2 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

2 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

2 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

2 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

2 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

2 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."

2 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."

2 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

2 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

2 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

2 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

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

2 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."

2 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."

2 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."

2 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."

2 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."