3 years agoMerge "app_voicemail: Fix json blob errors"
George Joseph [Mon, 19 Mar 2018 14:50:00 +0000 (09:50 -0500)]
Merge "app_voicemail:  Fix json blob errors"

3 years agoMerge "app_dial: Enable early-media video"
George Joseph [Mon, 19 Mar 2018 14:34:16 +0000 (09:34 -0500)]
Merge "app_dial: Enable early-media video"

3 years agoMerge "main/cdr: Use ast_cli_completion_add for CDR channel completion."
Jenkins2 [Mon, 19 Mar 2018 11:17:42 +0000 (06:17 -0500)]
Merge "main/cdr: Use ast_cli_completion_add for CDR channel completion."

3 years agoMerge "astobj2_container: Use ast_cli_completion_add for container names."
Joshua Colp [Sat, 17 Mar 2018 00:09:48 +0000 (19:09 -0500)]
Merge "astobj2_container: Use ast_cli_completion_add for container names."

3 years agoMerge "main/ccss: Use ast_cli_completion_add for core id."
Jenkins2 [Sat, 17 Mar 2018 00:07:58 +0000 (19:07 -0500)]
Merge "main/ccss: Use ast_cli_completion_add for core id."

3 years agoapp_dial: Enable early-media video
Florian Floimair [Tue, 27 Feb 2018 09:01:38 +0000 (10:01 +0100)]
app_dial: Enable early-media video

Certain applications (e.g. door-phone) require that also video is transmitted
before a call is accepted.

Change-Id: I9842e1dc2f6e1c2c49dc33fe615255007d2f821e

3 years agoMerge "main/channel: Use ast_cli_completion_add for channeltypes."
Jenkins2 [Fri, 16 Mar 2018 15:51:38 +0000 (10:51 -0500)]
Merge "main/channel: Use ast_cli_completion_add for channeltypes."

3 years agoMerge "cli: Enable ast_cli_completion_add on public completion generators."
Jenkins2 [Fri, 16 Mar 2018 15:34:16 +0000 (10:34 -0500)]
Merge "cli: Enable ast_cli_completion_add on public completion generators."

3 years agoapp_voicemail: Fix json blob errors
George Joseph [Fri, 16 Mar 2018 14:02:20 +0000 (08:02 -0600)]
app_voicemail:  Fix json blob errors

When app_voicemail calls ast_test_suite_notify with the results of
a user keypress, it formats the keypress as '%c'.  If the user hung up
or some other error occurrs, the result of the keypress is a non
printable character.  This ultimately causes json_vpack_ex to think
it's being passed a non utf-8 string and return an error.

* Keypress results passed to ast_test_suite_notify are now checked with
  isprint() and a '?' is substituted if the check fails.

Change-Id: I78ee188916bbac840f3d03f40201b692347ea865

3 years agomain/cdr: Use ast_cli_completion_add for CDR channel completion.
Corey Farrell [Thu, 15 Mar 2018 14:32:37 +0000 (10:32 -0400)]
main/cdr: Use ast_cli_completion_add for CDR channel completion.

Change-Id: Ie81830647a23aad61c1162583b6d50adbe6e7822

3 years agoinstall_prereq: Add Arch Linux.
Alexander Traud [Mon, 12 Mar 2018 15:20:54 +0000 (16:20 +0100)]
install_prereq: Add Arch Linux.


Change-Id: I7ca620e3c4dfb4b064a19382c4915aeb42a2a09f

3 years agomain/ccss: Use ast_cli_completion_add for core id.
Corey Farrell [Thu, 15 Mar 2018 13:19:58 +0000 (09:19 -0400)]
main/ccss: Use ast_cli_completion_add for core id.

Change-Id: I44b25d6d24c7d9bc1bb38a50774b38883162f98f

3 years agoastobj2_container: Use ast_cli_completion_add for container names.
Corey Farrell [Thu, 15 Mar 2018 12:29:50 +0000 (08:29 -0400)]
astobj2_container: Use ast_cli_completion_add for container names.

Change-Id: I4f0fc09e820eb8d8da2354a177dbcf503c56ddd1

3 years agomain/channel: Use ast_cli_completion_add for channeltypes.
Corey Farrell [Sat, 9 Dec 2017 10:52:54 +0000 (05:52 -0500)]
main/channel: Use ast_cli_completion_add for channeltypes.

Change-Id: Ia845fae6a84801cc7d9996767b99efb2753cbb48

3 years agoMerge "res_pjsip_rfc3326.c: Account for more than one 'Reason' header"
Jenkins2 [Thu, 15 Mar 2018 11:51:40 +0000 (06:51 -0500)]
Merge "res_pjsip_rfc3326.c: Account for more than one 'Reason' header"

3 years agoMerge "install_prereq: Add SUSE."
Jenkins2 [Thu, 15 Mar 2018 11:45:00 +0000 (06:45 -0500)]
Merge "install_prereq: Add SUSE."

3 years agocli: Enable ast_cli_completion_add on public completion generators.
Corey Farrell [Wed, 14 Mar 2018 17:38:01 +0000 (13:38 -0400)]
cli: Enable ast_cli_completion_add on public completion generators.

* ast_cli_complete
* ast_complete_channels
* ast_complete_applications

These generators will now use ast_cli_completion_add if state == -1.

Change-Id: I7ff311f0873099be0e43a3dc5415c0cd06d15756

3 years agoMerge "core: Remove incorrect usage of attribute_malloc."
Jenkins2 [Thu, 15 Mar 2018 01:56:34 +0000 (20:56 -0500)]
Merge "core: Remove incorrect usage of attribute_malloc."

3 years agores_pjsip_rfc3326.c: Account for more than one 'Reason' header
Ross Beer [Wed, 14 Mar 2018 16:17:23 +0000 (16:17 +0000)]
res_pjsip_rfc3326.c: Account for more than one 'Reason' header


Change-Id: I0aa59a54735c6d20b95c54db1bd095dbf93e7adf

3 years agoinstall_prereq: Add SUSE.
Alexander Traud [Mon, 12 Mar 2018 13:05:08 +0000 (14:05 +0100)]
install_prereq: Add SUSE.


Change-Id: I4cafc8973349d50a7cb7919ddf0bb1aaef4bfc3e

3 years agoMerge "install_prereq: Update FreeBSD libraries."
Jenkins2 [Wed, 14 Mar 2018 12:56:10 +0000 (07:56 -0500)]
Merge "install_prereq: Update FreeBSD libraries."

3 years agoMerge "core: Remove non-critical cleanup from startup aborts."
Jenkins2 [Wed, 14 Mar 2018 12:00:57 +0000 (07:00 -0500)]
Merge "core: Remove non-critical cleanup from startup aborts."

3 years agoMerge "BuildSystem: Enable IMAP storage on openSUSE and Arch Linux."
Jenkins2 [Wed, 14 Mar 2018 11:45:30 +0000 (06:45 -0500)]
Merge "BuildSystem: Enable IMAP storage on openSUSE and Arch Linux."

3 years agoMerge "BuildSystem: Add NetBSD."
Joshua Colp [Wed, 14 Mar 2018 11:17:01 +0000 (06:17 -0500)]
Merge "BuildSystem: Add NetBSD."

3 years agoMerge "res_srtp: Add support for libsrtp2.x on openSUSE."
Joshua Colp [Wed, 14 Mar 2018 11:16:40 +0000 (06:16 -0500)]
Merge "res_srtp: Add support for libsrtp2.x on openSUSE."

3 years agoMerge "install_prereq: Add NetBSD."
Jenkins2 [Tue, 13 Mar 2018 23:23:28 +0000 (18:23 -0500)]
Merge "install_prereq: Add NetBSD."

3 years agoMerge "BuildSystem: Re-check for another UUID library only when previous check failed."
Jenkins2 [Tue, 13 Mar 2018 23:17:22 +0000 (18:17 -0500)]
Merge "BuildSystem: Re-check for another UUID library only when previous check failed."

3 years agoMerge "BuildSystem: Enable PortAudio in NetBSD."
Jenkins2 [Tue, 13 Mar 2018 22:55:22 +0000 (17:55 -0500)]
Merge "BuildSystem: Enable PortAudio in NetBSD."

3 years agocore: Remove incorrect usage of attribute_malloc.
Corey Farrell [Tue, 13 Mar 2018 21:39:48 +0000 (17:39 -0400)]
core: Remove incorrect usage of attribute_malloc.

GCC documentation states that when __attribute__((malloc)) is used it
should not return storage which contains any valid pointers.  It
specifically mentions that realloc functions should not have the malloc
attribute, but this also means that complex initializers which could
contain initialized pointers should not use this attribute.

Change-Id: If507f33ffb3ca3b83b702196eb0e8215d27fc7d2

3 years agoBuildSystem: Enable IMAP storage on openSUSE and Arch Linux.
Alexander Traud [Mon, 12 Mar 2018 10:19:41 +0000 (11:19 +0100)]
BuildSystem: Enable IMAP storage on openSUSE and Arch Linux.


Change-Id: I8d6e6a1c08c031649764f5277fbbb85e57c3a9d4

3 years agoMerge "core: Remove ABI effects of MALLOC_DEBUG."
Jenkins2 [Tue, 13 Mar 2018 18:54:19 +0000 (13:54 -0500)]
Merge "core: Remove ABI effects of MALLOC_DEBUG."

3 years agocore: Remove non-critical cleanup from startup aborts.
Corey Farrell [Sat, 10 Mar 2018 09:33:33 +0000 (04:33 -0500)]
core: Remove non-critical cleanup from startup aborts.

When built-in components of Asterisk fail to start they cause the
Asterisk startup to abort.  In these cases only the most critical
cleanup should be performed - closing databases and terminating
proceses.  These cleanups are registered using ast_register_atexit, all
other cleanups should not be run during startup abort.

The main reason for this change is that these cleanup procedures are
untestable from the partially initialized states, if they fail it could
prevent us from ever running the critical cleanup with ast_run_atexits.

Create separate initialization for dns_core.c to be run unconditionally
during startup instead of being initialized by the first dns resolver to
be registered. This ensures that 'sched' is initialized before it can be
potentially used.

Replace ast_register_atexit with ast_register_cleanup in media_cache.c.
There is no reason for this cleanup to happen unconditionally.

Change-Id: Iecc2df98008b21509925ff16740bd5fa29527db3

3 years agoMerge "BuildSystem: For consistency, avoid double-checking via if clauses."
Jenkins2 [Tue, 13 Mar 2018 15:48:41 +0000 (10:48 -0500)]
Merge "BuildSystem: For consistency, avoid double-checking via if clauses."

3 years agoMerge "res_pjproject.c: Upgrade bundled PJPROJECT to 2.7.2"
Joshua Colp [Tue, 13 Mar 2018 15:38:00 +0000 (10:38 -0500)]
Merge "res_pjproject.c: Upgrade bundled PJPROJECT to 2.7.2"

3 years agoMerge "Replace direct checks of option_debug with DEBUG_ATLEAST macro."
Jenkins2 [Mon, 12 Mar 2018 15:44:46 +0000 (10:44 -0500)]
Merge "Replace direct checks of option_debug with DEBUG_ATLEAST macro."

3 years agoMerge "BuildSystem: Enable Lua in NetBSD."
Jenkins2 [Mon, 12 Mar 2018 14:13:51 +0000 (09:13 -0500)]
Merge "BuildSystem: Enable Lua in NetBSD."

3 years agoMerge "Complete deprecating legacy modules."
Jenkins2 [Mon, 12 Mar 2018 12:50:01 +0000 (07:50 -0500)]
Merge "Complete deprecating legacy modules."

3 years agoMerge "res_pjsip_session: properly handle SDP from a forked call with early media"
Jenkins2 [Mon, 12 Mar 2018 12:23:26 +0000 (07:23 -0500)]
Merge "res_pjsip_session: properly handle SDP from a forked call with early media"

3 years agoMerge "BuildSystem: Depend not implicitly but explicitly on external libraries."
Jenkins2 [Mon, 12 Mar 2018 12:08:14 +0000 (07:08 -0500)]
Merge "BuildSystem: Depend not implicitly but explicitly on external libraries."

3 years agoMerge "BuildSystem regression: Fix errors reported by clean targets."
Jenkins2 [Mon, 12 Mar 2018 11:54:30 +0000 (06:54 -0500)]
Merge "BuildSystem regression: Fix errors reported by clean targets."

3 years agoinstall_prereq: Update FreeBSD libraries.
Alexander Traud [Mon, 12 Mar 2018 11:40:11 +0000 (12:40 +0100)]
install_prereq: Update FreeBSD libraries.

Because the code review system Gerrit creates merge conflicts even when one line
apart another change happened, the previous update to the FreeBSD libraries had
to be rebased via Git. Because of a break for training of the original
contributor, this rebase was done by another contributor and the variant for
Asterisk 13 was cherry-picked to all branches. By this, dependencies for new
features added in newer Asterisk version got lost. This can be seen, when not
the original path set but a previous patch set is compared.

This change here fixes this by adding those (optional) dependencies for
Asterisk 15 and newer (again).


Change-Id: I6638a3d0dc37ad4ff5f94be15463e3dd8a2bfe74

3 years agores_srtp: Add support for libsrtp2.x on openSUSE.
Alexander Traud [Mon, 12 Mar 2018 09:11:15 +0000 (10:11 +0100)]
res_srtp: Add support for libsrtp2.x on openSUSE.

Since ASTERISK-27253, no symbols from the header srtp2/crypto_types.h are used
anymore. Therefore, its include statement can be removed. This allows to compile
Asterisk on platforms which do not offer this private header, like openSUSE.


Change-Id: I25c5cb8fa966043d1506ebef449e5a724412b4b6

3 years agoMerge "app_osplookup: Move header defines into the app."
Jenkins2 [Sun, 11 Mar 2018 22:24:29 +0000 (17:24 -0500)]
Merge "app_osplookup: Move header defines into the app."

3 years agoBuildSystem: Add NetBSD.
Alexander Traud [Thu, 8 Mar 2018 15:14:11 +0000 (16:14 +0100)]
BuildSystem: Add NetBSD.

Headers, libraries, and rpath.

Reported by: Curt Sampson

Change-Id: I50aa5fcd095937df32a2e33307caac7e79a8b5b7

3 years agoBuildSystem: For consistency, avoid double-checking via if clauses.
Alexander Traud [Fri, 9 Mar 2018 09:13:20 +0000 (10:13 +0100)]
BuildSystem: For consistency, avoid double-checking via if clauses.

In the script ./configure, AST_EXT_LIB_CHECK and AST_PKG_CONFIG_CHECK first test
whether parameter 1 was already found. Consequently, an if-test on PBX_ just a
line below is redundant, if exactly the same parameter 1 is used again.

No performance gain is expected by this change. However, because this strategy
is used all over in ./configure except for two places, this change aims to
create more consistency: Only do something different if there is a reason to do

Change-Id: I4a6f48127b7af3a48168c917e888be1f70625027

3 years agoMerge "res_http_post: Enable GMime in NetBSD."
Jenkins2 [Fri, 9 Mar 2018 06:19:46 +0000 (00:19 -0600)]
Merge "res_http_post: Enable GMime in NetBSD."

3 years agoMerge "chan_sip: Fix improper RTP framing on outgoing calls"
Jenkins2 [Thu, 8 Mar 2018 21:53:35 +0000 (15:53 -0600)]
Merge "chan_sip: Fix improper RTP framing on outgoing calls"

3 years agoMerge "voicemail: Fixed wrong voicemail message count"
Kevin Harwell [Thu, 8 Mar 2018 21:26:37 +0000 (15:26 -0600)]
Merge "voicemail: Fixed wrong voicemail message count"

3 years agoComplete deprecating legacy modules.
Richard Mudgett [Thu, 8 Mar 2018 19:53:09 +0000 (13:53 -0600)]
Complete deprecating legacy modules.

The menuselect comment was updated to deprecate these modules but the
AST_MODULE_INFO block at the end of file was missed.


Change-Id: I63070b5c4d4f08af010c6034acd4793c1bcef839

3 years agoMerge "utils: In Solaris, avoid a warning about an unused variable."
Jenkins2 [Thu, 8 Mar 2018 19:30:30 +0000 (13:30 -0600)]
Merge "utils: In Solaris, avoid a warning about an unused variable."

3 years agores_pjproject.c: Upgrade bundled PJPROJECT to 2.7.2
Richard Mudgett [Wed, 7 Mar 2018 19:50:35 +0000 (13:50 -0600)]
res_pjproject.c: Upgrade bundled PJPROJECT to 2.7.2

Update patches included in bundled PJPROJECT for the new version.


Change-Id: Id3c8c8ad82126846bcd9768bc3d0a18d89be8944

3 years agoinstall_prereq: Add NetBSD.
Alexander Traud [Thu, 8 Mar 2018 18:02:16 +0000 (19:02 +0100)]
install_prereq: Add NetBSD.


Change-Id: I7a706d51375d54cf5e36d32397bfe09a48670804

3 years agoMerge "res_pjsip_rfc3326: Order of 'Reason' headers break many endpoints"
Jenkins2 [Thu, 8 Mar 2018 16:16:03 +0000 (10:16 -0600)]
Merge "res_pjsip_rfc3326: Order of 'Reason' headers break many endpoints"

3 years agoBuildSystem: Re-check for another UUID library only when previous check failed.
Alexander Traud [Thu, 8 Mar 2018 15:04:29 +0000 (16:04 +0100)]
BuildSystem: Re-check for another UUID library only when previous check failed.

As a side-effect, this avoids the ambiguous output:
 checking for uuid_generate_random... no
which was printed always previously.

Reported by: John Nemeth

Change-Id: I6d541dfcf453932a9856c5e251aa22e0e6c233c9

3 years agoBuildSystem: Enable PortAudio in NetBSD.
Alexander Traud [Tue, 6 Mar 2018 12:28:15 +0000 (13:28 +0100)]
BuildSystem: Enable PortAudio in NetBSD.

In NetBSD, PortAudio 1 is still the default version. PortAudio 2 can be
installed side by side but gets placed in a 'portaudio2' subdirectory. To
find PortAudio 2 even in a subdirectory, the tool pkg-config is queried via
AST_PKG_CONFIG_CHECK. For those platforms, which do not list PowerAudio 2
via pkg-config, the previous check remains and is executed thereafter.


Change-Id: I4175500126909ad1b181fff8e11bb4a3a6ae4fa9

3 years agoReplace direct checks of option_debug with DEBUG_ATLEAST macro.
Corey Farrell [Wed, 7 Mar 2018 20:36:17 +0000 (15:36 -0500)]
Replace direct checks of option_debug with DEBUG_ATLEAST macro.

Checking option_debug directly is incorrect as it ignores file/module
specific debug settings.  This system-wide change replaces nearly all
direct checks for option_debug with the DEBUG_ATLEAST macro.

Change-Id: Ic342d4799a945dbc40ac085ac142681094a4ebf0

3 years agoMerge "apps/app_amd.c: Fixed total time and silence calculations"
Jenkins2 [Wed, 7 Mar 2018 19:59:29 +0000 (13:59 -0600)]
Merge "apps/app_amd.c: Fixed total time and silence calculations"

3 years agoBuildSystem regression: Fix errors reported by clean targets.
Richard Mudgett [Wed, 7 Mar 2018 19:13:42 +0000 (13:13 -0600)]
BuildSystem regression: Fix errors reported by clean targets.

Doing a 'make clean', 'make distclean', or 'make dist-clean' gets errors
about an invalid shell option: "/bin/sh: 0: Illegal option -".

The clean targets do not include the makeopts file which defines GREP and
LDCONFIG because the file may not exist and the distclean/dist-clean
targets will delete it anyway.


Change-Id: I33d40acdb03862bc89aeb6fb1ff497894a8ea7f5

3 years agores_pjsip_rfc3326: Order of 'Reason' headers break many endpoints
Ross Beer [Tue, 6 Mar 2018 19:31:01 +0000 (19:31 +0000)]
res_pjsip_rfc3326: Order of 'Reason' headers break many endpoints


Change-Id: If61c7faab7d2fa1031c056ed6268fe928e2391cf

3 years agovoicemail: Fixed wrong voicemail message count
Sungtae Kim [Tue, 6 Mar 2018 14:14:54 +0000 (15:14 +0100)]
voicemail: Fixed wrong voicemail message count

Fixed wrong voicemail mailbox reference for Action: VoicemailUsersList.


Change-Id: Ie6578ad80bba2bfaf34b84f0be978f59045ce6cd

3 years agoutils: In Solaris, avoid a warning about an unused variable.
Alexander Traud [Wed, 7 Mar 2018 15:32:05 +0000 (16:32 +0100)]
utils: In Solaris, avoid a warning about an unused variable.

When HAVE_GETHOSTBYNAME_R_5 was set by the script ./configure, GCC 7.3.0 found
an unused variable. Actually, the variable was used (set to a dummy value) but
the compiler optimization might have removed that. Instead, this change ensures
that the variable 'res' is only used when it is really required.

Change-Id: Ic3ea23ccf84ac4bc2d501b514985b989030abab5

3 years agoapp_osplookup: Move header defines into the app.
Corey Farrell [Wed, 7 Mar 2018 07:45:24 +0000 (02:45 -0500)]
app_osplookup: Move header defines into the app.

astosp.h is leftover from when logic was split between app_osplookup and
res_osp.  All logic was moved into app_osplookup by 109737eb1c in 2006,
but astosp.h remained.  This moves the remaining defines into
app_osplookup and deletes astosp.h.

Change-Id: I0a6c4debd7c9543b608520b1765abfa4fab7b2fd

3 years agochan_sip: Fix improper RTP framing on outgoing calls
Jean Aunis [Wed, 14 Feb 2018 13:33:18 +0000 (14:33 +0100)]
chan_sip: Fix improper RTP framing on outgoing calls

The "ptime" SDP parameter received in a SIP response was not honoured.
Moreover, in the abscence of this "ptime" parameter, locally configured
framing was lost during response processing.

This patch systematically stores the framing information in the
ast_rtp_codecs structure, taking it from the response or from the
configuration as appropriate.


Change-Id: I828a6a98d27a45a8afd07236a2bd0aa3cbd3fb2c

3 years agores_pjsip_session: properly handle SDP from a forked call with early media
lvl [Tue, 20 Feb 2018 17:48:50 +0000 (18:48 +0100)]
res_pjsip_session: properly handle SDP from a forked call with early media

In handle_negotiated_sdp(), use session->active_media_state when
session->pending_media_state is empty.  The 200's SDP should be fed into
handle_negotiated_sdp_session_media() together with the already negotiated
state, which is now in session->active_media_state instead.  Only if both
the session's pending and active media are empty should
handle_negotiated_sdp() abort.


Change-Id: If0d5150ffe6f38d8a854831fef37942258d4629c

3 years agoMerge "BuildSystem: Cast any intptr_t explicitly to its proposed type."
Jenkins2 [Tue, 6 Mar 2018 19:17:54 +0000 (13:17 -0600)]
Merge "BuildSystem: Cast any intptr_t explicitly to its proposed type."

3 years agoMerge "BuildSystem: Install init scripts on openSUSE Tumbleweed."
Jenkins2 [Tue, 6 Mar 2018 17:13:53 +0000 (11:13 -0600)]
Merge "BuildSystem: Install init scripts on openSUSE Tumbleweed."

3 years agoBuildSystem: Enable Lua in NetBSD.
Alexander Traud [Mon, 5 Mar 2018 14:01:06 +0000 (15:01 +0100)]
BuildSystem: Enable Lua in NetBSD.

luaL_openlib got removed with Lua 5.2.
luaL_newstate is available in all versions.


Change-Id: I9c8c8880315ee36ab740d7c40153306c0bfd6f71

3 years agoMerge "BuildSystem: AC_PATH_PROG sets to colon character when not found."
Jenkins2 [Tue, 6 Mar 2018 16:35:54 +0000 (10:35 -0600)]
Merge "BuildSystem: AC_PATH_PROG sets to colon character when not found."

3 years agoMerge "BuildSystem: Enable autotools in NetBSD."
Jenkins2 [Tue, 6 Mar 2018 16:14:19 +0000 (10:14 -0600)]
Merge "BuildSystem: Enable autotools in NetBSD."

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


Change-Id: Ie7b8c30d86cb00a54d6ac4e09e6f28f42d2bd52c

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

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

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

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

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

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

3 years agores_http_post: Enable GMime in NetBSD.
Alexander Traud [Mon, 5 Mar 2018 14:15:03 +0000 (15:15 +0100)]
res_http_post: Enable GMime in NetBSD.


Change-Id: I230c5f9f316b2e9465c093c13580f72ebbaf67a7

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

3 years agoBuildSystem: Enable autotools in NetBSD.
Alexander Traud [Mon, 5 Mar 2018 10:16:12 +0000 (11:16 +0100)]
BuildSystem: Enable autotools in NetBSD.


Change-Id: I52525e35e1620341272219911d054a1e3d3ec01e

3 years agoBuildSystem: AC_PATH_PROG sets to colon character when not found.
Alexander Traud [Mon, 5 Mar 2018 09:42:10 +0000 (10:42 +0100)]
BuildSystem: AC_PATH_PROG sets to colon character when not found.

Reported by: Corey Farrell

Change-Id: I0d6d9572d1352dc7ad30c9917173f1e980d8c938

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

Reported by: John Nemeth

Change-Id: I1b84a89315a5f61222123d21bf35c59224da8990

3 years agoBuildSystem: Cast any intptr_t explicitly to its proposed type.
Alexander Traud [Sat, 3 Mar 2018 14:30:47 +0000 (15:30 +0100)]
BuildSystem: Cast any intptr_t explicitly to its proposed type.


Change-Id: I90c769e3c7f8c26de8a3af11335862cec15a1b22

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

Reported by: Joerg Sonnenberger, D'Arcy Cain

Change-Id: Idf1c9d43617a3e13028b95b313415903d80ef807

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


Change-Id: Idc9194035b2958b99f6b01eb5b438d45a074565b

3 years agoBuildSystem: Install init scripts on openSUSE Tumbleweed.
Alexander Traud [Fri, 2 Mar 2018 13:05:25 +0000 (14:05 +0100)]
BuildSystem: Install init scripts on openSUSE Tumbleweed.


Change-Id: I4c777e41b31d4415bbe21cb435ad47b43ebb5467

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

Reported by: John Nemeth

Change-Id: I11b1ae8fd404c04066f1458f5d71f9536359d58d

3 years agocore: Remove ABI effects of MALLOC_DEBUG.
Richard Mudgett [Tue, 20 Feb 2018 01:55:50 +0000 (19:55 -0600)]
core: Remove ABI effects of MALLOC_DEBUG.

This allows asterisk to be compiled with MALLOC_DEBUG to load modules
built without MALLOC_DEBUG.  Now pre-compiled third-party modules will
still work regardless of MALLOC_DEBUG being enabled or not.

Change-Id: Ic07ad80b2c2df894db984cf27b16a69383ce0e10

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

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

3 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

* 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:

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


Change-Id: I64d5befbaeed2532f93aa027a51eb52347d2b828

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

3 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

3 years agoapps/app_amd.c: Fixed total time and silence calculations
Michael Cargile [Sat, 24 Feb 2018 03:24:10 +0000 (22:24 -0500)]
apps/app_amd.c: Fixed total time and silence calculations

Between Asterisk 11 and Asterisk 13 there was a significant increase
in the number of AST_FRAME_NULL frames being processed by app_amd.c's
main loop. Each AST_FRAME_NULL frame was being counted as 100ms
towards the total time and silence. This may have been accurate
when app_amd.c was orginally added, but it is not in Asterisk 13.
As such the total analysis time and silence calculations were way
off effectively breaking app_amd.c

* Additional debug messages were added
* AST_FRAME_NULL are now ignored


Change-Id: I18aca01af98f87c1e168e6ae0d85c136d1df5ea9

3 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

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

Change-Id: Ic598acd042a045f9d10e5bdccb66f4efc9e587cc

3 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

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

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

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

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


Change-Id: Iacda724e7cb24d7520e49b2fd7e504aa398d7238