asterisk/asterisk.git
2 years agoMerge "add cmd connection creation on creation ooh323 call data structure"
Jenkins2 [Mon, 27 Nov 2017 17:17:50 +0000 (11:17 -0600)]
Merge "add cmd connection creation on creation ooh323 call data structure"

2 years agoMerge "pjsip: 183 without To tag does not negotiate media"
George Joseph [Mon, 27 Nov 2017 16:52:02 +0000 (10:52 -0600)]
Merge "pjsip: 183 without To tag does not negotiate media"

2 years agoMerge "Add defaultbranch to .gitreview."
Joshua Colp [Mon, 27 Nov 2017 15:23:22 +0000 (09:23 -0600)]
Merge "Add defaultbranch to .gitreview."

2 years agoMerge "res_parking: Set load_pri more appropriately."
Joshua Colp [Thu, 23 Nov 2017 18:06:32 +0000 (12:06 -0600)]
Merge "res_parking: Set load_pri more appropriately."

2 years agoMerge "res_mwi_external_ami: Remove incorrect load priority."
Joshua Colp [Thu, 23 Nov 2017 18:02:00 +0000 (12:02 -0600)]
Merge "res_mwi_external_ami: Remove incorrect load priority."

2 years agoMerge "Loader: Remove unneeded load_pri declarations."
Joshua Colp [Thu, 23 Nov 2017 17:15:19 +0000 (11:15 -0600)]
Merge "Loader: Remove unneeded load_pri declarations."

2 years agoMerge "README: Convert to README.md."
Joshua Colp [Thu, 23 Nov 2017 16:30:11 +0000 (10:30 -0600)]
Merge "README: Convert to README.md."

2 years agoMerge "res_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack."
Joshua Colp [Thu, 23 Nov 2017 15:49:46 +0000 (09:49 -0600)]
Merge "res_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack."

2 years agoMerge "chan_sip: ICE contained square brackets around IPv6 addresses."
Joshua Colp [Thu, 23 Nov 2017 14:56:17 +0000 (08:56 -0600)]
Merge "chan_sip: ICE contained square brackets around IPv6 addresses."

2 years agoAdd defaultbranch to .gitreview.
Corey Farrell [Thu, 23 Nov 2017 00:37:44 +0000 (19:37 -0500)]
Add defaultbranch to .gitreview.

Although the default value of defaultbranch is master I'm adding it
anyways.  This way when new major branches are being created the value
can be updated instead of having to remember the name of the key.

Change-Id: I3db009217c5ae399fb84bee95076f4dbb7fa52d2

2 years agoadd cmd connection creation on creation ooh323 call data structure
Alexander Anikin [Thu, 23 Nov 2017 00:43:00 +0000 (03:43 +0300)]
add cmd connection creation on creation ooh323 call data structure

ASTERISK-27353 #close

Reported by: Marco Giordani

Change-Id: I455096bd7da016b871afe09af86067c2c7c9f33f

2 years agopjsip: 183 without To tag does not negotiate media
Kevin Harwell [Wed, 22 Nov 2017 16:42:48 +0000 (10:42 -0600)]
pjsip: 183 without To tag does not negotiate media

If a 183 with sdp response is receive without a To tag the sdp is not
negotiated. According to RFC 3261 section 12.1.2 while a To tag is required,
the client needs to still be able to handle the missing tag case for
backwards compatibility.

This patch, accepted by and applied to pjproject, makes it so if an incoming
180/183 with SDP comes in without a To tag it gets appropriately handled.

ASTERISK-27442 #close

Change-Id: Ic9d6b01e05e8f4874eebbd7adfe05d932025d203

2 years agores_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack.
Alexander Traud [Tue, 21 Nov 2017 12:39:34 +0000 (13:39 +0100)]
res_rtp_asterisk: ICE server-reflexive candidates (srflx) with Dual-Stack.

Previously, Asterisk sent srflx only when configured exclusively for IPv4. Now,
srflx is gathered and sent via SDP, even when Asterisk is enabled for
Dual Stack (IPv4+IPv6) and an IPv4 interface is available/used.

ASTERISK-27437

Change-Id: Ie07d8e2bfa7b6fe06fcdc73d390a7a9a4d8c0bc1

2 years agores_parking: Set load_pri more appropriately.
Corey Farrell [Mon, 20 Nov 2017 19:05:46 +0000 (14:05 -0500)]
res_parking: Set load_pri more appropriately.

res_parking had an inplicit load_pri of 0 meaning it was one of the very
first modules loaded after modules with global symbols.  Set it to
AST_MODPRI_DEVSTATE_PROVIDER as it provides device state for parking
lots.

Change-Id: I297b6fb3ff6993ec004e667b22a74f5925906259

2 years agoMerge "aoc: Remove silly usage of RAII_VAR."
Joshua Colp [Tue, 21 Nov 2017 17:46:49 +0000 (11:46 -0600)]
Merge "aoc: Remove silly usage of RAII_VAR."

2 years agoMerge "abstract_jb: Remove silly usage of RAII_VAR."
Joshua Colp [Tue, 21 Nov 2017 17:04:47 +0000 (11:04 -0600)]
Merge "abstract_jb: Remove silly usage of RAII_VAR."

2 years agoMerge "BuildSystem: pjsip_evsub_set_uas_timeout was not used."
Joshua Colp [Tue, 21 Nov 2017 16:33:28 +0000 (10:33 -0600)]
Merge "BuildSystem: pjsip_evsub_set_uas_timeout was not used."

2 years agoMerge "app: Remove silly usage of RAII_VAR."
Joshua Colp [Tue, 21 Nov 2017 15:42:11 +0000 (09:42 -0600)]
Merge "app: Remove silly usage of RAII_VAR."

2 years agoMerge "ccss: Remove silly usage of RAII_VAR."
Joshua Colp [Tue, 21 Nov 2017 15:27:20 +0000 (09:27 -0600)]
Merge "ccss: Remove silly usage of RAII_VAR."

2 years agoREADME: Convert to README.md.
Corey Farrell [Sat, 18 Nov 2017 03:33:04 +0000 (22:33 -0500)]
README: Convert to README.md.

Convert the README file to markdown format, remove the old README.  This
causes websites like github to display the README in a much nicer
format with live links.  The raw file is still very readable from
plain text editors and terminals.

Change-Id: I7d13131764a9a9026e5f8a6ddb245a01bbd788e7

2 years agoMerge "cli: Remove silly usage of RAII_VAR."
Joshua Colp [Tue, 21 Nov 2017 13:54:59 +0000 (07:54 -0600)]
Merge "cli: Remove silly usage of RAII_VAR."

2 years agoMerge "loader: Fix comments in struct ast_module."
Joshua Colp [Tue, 21 Nov 2017 12:54:25 +0000 (06:54 -0600)]
Merge "loader: Fix comments in struct ast_module."

2 years agoMerge "menuselect: Remove ineffective weak attribute detection."
Joshua Colp [Tue, 21 Nov 2017 12:50:55 +0000 (06:50 -0600)]
Merge "menuselect: Remove ineffective weak attribute detection."

2 years agoMerge "CLI: Create ast_cli_completion_vector."
Joshua Colp [Tue, 21 Nov 2017 11:24:07 +0000 (05:24 -0600)]
Merge "CLI: Create ast_cli_completion_vector."

2 years agoMerge "README: Send people to secure websites where available."
Joshua Colp [Tue, 21 Nov 2017 11:23:47 +0000 (05:23 -0600)]
Merge "README: Send people to secure websites where available."

2 years agoMerge "Build: Fix issues building without SSL."
Joshua Colp [Tue, 21 Nov 2017 11:23:24 +0000 (05:23 -0600)]
Merge "Build: Fix issues building without SSL."

2 years agoMerge "Build: Fix OSX build issues."
Joshua Colp [Tue, 21 Nov 2017 11:22:39 +0000 (05:22 -0600)]
Merge "Build: Fix OSX build issues."

2 years agochan_sip: ICE contained square brackets around IPv6 addresses.
Alexander Traud [Mon, 20 Nov 2017 15:13:39 +0000 (16:13 +0100)]
chan_sip: ICE contained square brackets around IPv6 addresses.

ASTERISK-27434

Change-Id: Iaeed89b4fa05d94c5f0ec2d3b7cd6e93d2d5a8f7

2 years agoloader: Fix comments in struct ast_module.
Corey Farrell [Mon, 20 Nov 2017 03:23:44 +0000 (22:23 -0500)]
loader: Fix comments in struct ast_module.

Make the comments follow doxygen format, move comments to the line
before each field they describe.

Change-Id: Ic445468398b5e88f13910f7c2f70bd15aad33a27

2 years agoMerge "res_pjsip: Use sorcery prefix operation for contact lookup"
Joshua Colp [Mon, 20 Nov 2017 22:48:23 +0000 (16:48 -0600)]
Merge "res_pjsip: Use sorcery prefix operation for contact lookup"

2 years agoMerge "acl: Fix allocation related issues."
Joshua Colp [Mon, 20 Nov 2017 22:47:56 +0000 (16:47 -0600)]
Merge "acl: Fix allocation related issues."

2 years agoMerge "bridge_basic: Ignore answer from transfer target when they've timed out."
Joshua Colp [Mon, 20 Nov 2017 20:54:48 +0000 (14:54 -0600)]
Merge "bridge_basic: Ignore answer from transfer target when they've timed out."

2 years agocli: Remove silly usage of RAII_VAR.
Corey Farrell [Thu, 16 Nov 2017 23:25:04 +0000 (18:25 -0500)]
cli: Remove silly usage of RAII_VAR.

Change-Id: I81aacfee7cd26e4fc5eef07bca582700c2975bd7

2 years agoMerge "doxygen: Remove obsolete contents."
Joshua Colp [Mon, 20 Nov 2017 20:29:40 +0000 (14:29 -0600)]
Merge "doxygen: Remove obsolete contents."

2 years agoccss: Remove silly usage of RAII_VAR.
Corey Farrell [Thu, 16 Nov 2017 19:19:19 +0000 (14:19 -0500)]
ccss: Remove silly usage of RAII_VAR.

Change-Id: I5ce40035e0a940e4e56f6322c1dcd47fbd509b98

2 years agoapp: Remove silly usage of RAII_VAR.
Corey Farrell [Thu, 16 Nov 2017 18:51:37 +0000 (13:51 -0500)]
app: Remove silly usage of RAII_VAR.

Change-Id: Ideb594f7aae134974fb78d5477ba0853b97b8625

2 years agoaoc: Remove silly usage of RAII_VAR.
Corey Farrell [Thu, 16 Nov 2017 18:19:43 +0000 (13:19 -0500)]
aoc: Remove silly usage of RAII_VAR.

Change-Id: I07907f833b81aeb0128bc9442a2abb52679c7511

2 years agoabstract_jb: Remove silly usage of RAII_VAR.
Corey Farrell [Thu, 16 Nov 2017 18:55:14 +0000 (13:55 -0500)]
abstract_jb: Remove silly usage of RAII_VAR.

Change-Id: I9d56175369363d1dc735504cf78a3a5577069f49

2 years agoMerge "res_fax: Remove checks for unsigned values being >= 0."
Joshua Colp [Mon, 20 Nov 2017 19:33:35 +0000 (13:33 -0600)]
Merge "res_fax: Remove checks for unsigned values being >= 0."

2 years agores_mwi_external_ami: Remove incorrect load priority.
Corey Farrell [Mon, 20 Nov 2017 19:08:57 +0000 (14:08 -0500)]
res_mwi_external_ami: Remove incorrect load priority.

res_mwi_external_ami specified AST_MODFLAG_LOAD_ORDER but didn't set
load_pri, resulting in an actual load priority of 0.  This module only
provides AMI actions so it has no reason to load early.

Change-Id: I82987fcf10d3ea42716b2f9df915b16687fd5839

2 years agoLoader: Remove unneeded load_pri declarations.
Corey Farrell [Mon, 20 Nov 2017 18:54:38 +0000 (13:54 -0500)]
Loader: Remove unneeded load_pri declarations.

Instead of specifying AST_MODFLAG_LOAD_ORDER with load_pri
AST_MODPRI_DEFAULT just use AST_MODFLAG_DEFAULT.

Change-Id: I0123258eafce324249433a69df15a85cc16e509f

2 years agoMerge "res_snmp: Declare RONLY if net-snmp headers do not."
Joshua Colp [Mon, 20 Nov 2017 18:13:01 +0000 (12:13 -0600)]
Merge "res_snmp: Declare RONLY if net-snmp headers do not."

2 years agoMerge "iostream: Fix ast_iostream_printf declaration."
Joshua Colp [Mon, 20 Nov 2017 17:54:06 +0000 (11:54 -0600)]
Merge "iostream: Fix ast_iostream_printf declaration."

2 years agoMerge "tests: Fix warnings found on Mac."
Joshua Colp [Mon, 20 Nov 2017 17:32:51 +0000 (11:32 -0600)]
Merge "tests: Fix warnings found on Mac."

2 years agoMerge "app_minivm: Fix possible uninitialized return value."
Joshua Colp [Mon, 20 Nov 2017 16:39:16 +0000 (10:39 -0600)]
Merge "app_minivm: Fix possible uninitialized return value."

2 years agoBuildSystem: pjsip_evsub_set_uas_timeout was not used.
Alexander Traud [Mon, 20 Nov 2017 15:49:04 +0000 (16:49 +0100)]
BuildSystem: pjsip_evsub_set_uas_timeout was not used.

ASTERISK-27435

Change-Id: Id318a7ae6d7d69b53f911d30bf3eece64852f15c

2 years agoMerge "res_pjsip: Fix warning by deferring implicit type cast."
Joshua Colp [Mon, 20 Nov 2017 15:44:12 +0000 (09:44 -0600)]
Merge "res_pjsip: Fix warning by deferring implicit type cast."

2 years agoBuild: Fix OSX build issues.
Corey Farrell [Sun, 19 Nov 2017 15:57:28 +0000 (10:57 -0500)]
Build: Fix OSX build issues.

OSX does not support 'readlink -f' or 'sed -r'.  Replace readlink with
the GNU make macro 'realpath'.  Replace sed with grep in one place, cut
in the other.

ASTERISK-27332

Change-Id: I5d34ecca905384decb22ead45c913ae5e8aff748

2 years agoBuild: Fix issues building without SSL.
Corey Farrell [Sun, 19 Nov 2017 19:52:59 +0000 (14:52 -0500)]
Build: Fix issues building without SSL.

* Fix conditional in libasteriskssl.
* Use variables produced by configure to link the SSL and uuid libraries
  into libasteriskpj.so instead of hard-coding them.

ASTERISK-27431

Change-Id: I3977931fd3ef8c4e4376349ccddb354eb839b58d

2 years agores_pjsip: Fix warning by deferring implicit type cast.
Corey Farrell [Sun, 19 Nov 2017 19:28:41 +0000 (14:28 -0500)]
res_pjsip: Fix warning by deferring implicit type cast.

Mac doesn't like the comparison of -1 to an enum, so store the result of
ast_sip_str_to_dtmf to an int so we can check for the negative return
value.  ast_sip_str_to_dtmf returns an int so this is only delaying the
implicit type cast.

Change-Id: I0c262c1719ee951aae1f437d733a301cf5f8ad29

2 years agotests: Fix warnings found on Mac.
Corey Farrell [Sun, 19 Nov 2017 03:13:32 +0000 (22:13 -0500)]
tests: Fix warnings found on Mac.

test_pbx used raise without explicitly including signal.h.  On Mac for
some reason nothing else includes it.

test_logger checked if an unsigned int was negative.  Switch the
variable to 'int' so that error check can be effective.

Change-Id: Ie1db5dd1818ac25cc2ae41b644f848b5865b1362

2 years agores_snmp: Declare RONLY if net-snmp headers do not.
Corey Farrell [Sun, 19 Nov 2017 02:25:50 +0000 (21:25 -0500)]
res_snmp: Declare RONLY if net-snmp headers do not.

Some net-snmp builds do not provide the RONLY declare, only
NETSNMP_OLDAPI_RONLY.  Map RONLY to NETSNMP_OLDAPI_RONLY to get around
this error.

Change-Id: Ida5c7ad9406515825485c4d3b4a34fd6ad0da577

2 years agores_fax: Remove checks for unsigned values being >= 0.
Corey Farrell [Sun, 19 Nov 2017 02:02:17 +0000 (21:02 -0500)]
res_fax: Remove checks for unsigned values being >= 0.

It's impossible for gwtimeout or fdtimeout to be less than 0 because
they are unsigned int's.  Remove checks and unreachable branches.

Change-Id: Ib2286960621e6ee245e40013c84986143302bc78

2 years agoiostream: Fix ast_iostream_printf declaration.
Corey Farrell [Sun, 19 Nov 2017 01:50:48 +0000 (20:50 -0500)]
iostream: Fix ast_iostream_printf declaration.

This adds the printf attribute and changes 'fmt' from 'const void *' to
'const char *'.  This resolves a warning from some compiler for
vsnprintf needing a literal string for format.

Change-Id: I71c33a8262590042ee451e1146760c10bb22fb78

2 years agoapp_minivm: Fix possible uninitialized return value.
Corey Farrell [Sun, 19 Nov 2017 01:29:16 +0000 (20:29 -0500)]
app_minivm: Fix possible uninitialized return value.

Declare 'res' initialized to -1 to deal with earlier error paths that
could cause 'res' to be returned uninitialized.

Change-Id: I8ac2a5755bf4174d89ef893e924c940f702b104e

2 years agoREADME: Send people to secure websites where available.
Corey Farrell [Sat, 18 Nov 2017 01:36:40 +0000 (20:36 -0500)]
README: Send people to secure websites where available.

We should be sending people to secure web URL's where available.
Update README's and docs.

Change-Id: Id5b1e049b0b18b49a784f1254605aefa244ce19a

2 years agodoxygen: Remove obsolete contents.
Corey Farrell [Sat, 18 Nov 2017 01:54:33 +0000 (20:54 -0500)]
doxygen: Remove obsolete contents.

Remove doxygen contents that have nothing to do with the current state
of Asterisk.

Change-Id: Ic072cc8641f9533a202990ccf275ce87e3efd95c

2 years agores_pjsip: Use reasonable buffer lengths for endpoint identification
Sean Bright [Fri, 17 Nov 2017 15:57:54 +0000 (10:57 -0500)]
res_pjsip: Use reasonable buffer lengths for endpoint identification

Domains themselves can be up to 255 characters long (per RFC 1035), so
our current buffer sizes are wholly inadequate for many use cases.

Change-Id: If3f30a68307f1365a1fe06bc4b854c62842c9292

2 years agomenuselect: Remove ineffective weak attribute detection.
Corey Farrell [Sat, 11 Nov 2017 16:09:29 +0000 (11:09 -0500)]
menuselect: Remove ineffective weak attribute detection.

menuselect detects compiler support for multiple styles of weak
functions.  This is a remnant from 2013 when OPTIONAL_API required weak
functions.  It is no longer correct for menuselect to switch
dependencies from optional to required based on lack of weak function
support.

Note an issue remains - dependencies should switch from optional to
required based on OPTIONAL_API being enabled or disabled.  I don't think
this is possible.  menuselect needs to know at startup if OPTIONAL_API
is enabled or disabled, so the only way to fix this is to remove
OPTIONAL_API from menuselect and create a configure option.  I've left
the code that switches in place but it's preprocessed out.

Additionally removed:
- WEAKREF variable from Asterisk makeopts.in.
- Related disabled code from test_utils.
- Pointless AC_REVISION call from menuselect/configure.ac.

Change-Id: Ifa702e5f98eb45f338b2f131a93354632a8fb389

2 years agoMerge "DEBUG_FD_LEAKS: Add missing FD creators."
Joshua Colp [Fri, 17 Nov 2017 15:26:48 +0000 (09:26 -0600)]
Merge "DEBUG_FD_LEAKS: Add missing FD creators."

2 years agoMerge "Build: Make function constructor/destructor attributes mandatory."
Joshua Colp [Fri, 17 Nov 2017 15:26:33 +0000 (09:26 -0600)]
Merge "Build: Make function constructor/destructor attributes mandatory."

2 years agoacl: Fix allocation related issues.
Corey Farrell [Thu, 16 Nov 2017 15:48:36 +0000 (10:48 -0500)]
acl: Fix allocation related issues.

Add checks for allocation errors, cleanup and report failure when they
occur.

* ast_duplicate_acl_list: Replace log warnings with errors, add missing
  line-feed.
* ast_append_acl: Add missing line-feed to logger message.
* ast_append_ha: Avoid ast_strdupa in loop by moving debug message to
  separate function.
* ast_ha_join: Use two separate calls to ast_str_append to avoid using
  ast_strdupa in a loop.

Change-Id: Ia19eaaeb0b139ff7ce7b971c7550e85c8b78ab76

2 years agoMerge "aoc: Fix memory management issues."
Jenkins2 [Fri, 17 Nov 2017 12:43:17 +0000 (06:43 -0600)]
Merge "aoc: Fix memory management issues."

2 years agobridge_basic: Ignore answer from transfer target when they've timed out.
Joshua Colp [Thu, 16 Nov 2017 15:04:55 +0000 (15:04 +0000)]
bridge_basic: Ignore answer from transfer target when they've timed out.

This is a fun one.

Given the following attended transfer scenario:

1. Transfer target is called
2. Transferer hangs up
3. Transfer target call attempt reaches timeout
4. Transfer target is told to hang up
5. Transfer target answers before channel is hung up
6. Transferer recall target is called

A crash would occur. This is because the transfer target call
attempt, despite being told to hang up, would raise a recall
target answer before the recall target had been answered. As it
had not answered there would be no recall target channel and it
would implode.

This change makes it so that if the transfer target has been
hung up we don't tell the attended transfer code that it has
answered. We also clear out the stimulus that the recall target
has been answered after telling the transfer target to hang up,
in case it was able to raise the information before we told it
to hangup.

ASTERISK-27361

Change-Id: Ifb8b255a9c4d2c5c1b8ad77bf54f659ed286df99

2 years agoaoc: Fix memory management issues.
Corey Farrell [Fri, 17 Nov 2017 01:39:20 +0000 (20:39 -0500)]
aoc: Fix memory management issues.

aoc_publish_blob failed to check for msg allocation error and never
released msg.

Change-Id: Ib31a9ffb81056a0d496a49d7eec795005a44bcd5

2 years agores_pjsip_transport_websocket: Give transport a meaningful description
Sean Bright [Thu, 16 Nov 2017 22:18:16 +0000 (17:18 -0500)]
res_pjsip_transport_websocket: Give transport a meaningful description

We were not \0 terminating this string, so any attempt to print it would
in the best case show an empty string and in the worst case potentially
crash.

Change-Id: I63d96ef8f7516ac02a0f91e22dfa8acdc615042c

2 years agores_pjsip: Use sorcery prefix operation for contact lookup
Sean Bright [Thu, 16 Nov 2017 21:00:20 +0000 (16:00 -0500)]
res_pjsip: Use sorcery prefix operation for contact lookup

This improves performance for registrations assuming that
res_config_astdb is not in use.

Change-Id: I86f37aa9ef07a4fe63448cb881bbadd996834bb1

2 years agoMerge "ast_coredumper: Add ability to use directory other than /tmp"
Joshua Colp [Thu, 16 Nov 2017 21:44:23 +0000 (15:44 -0600)]
Merge "ast_coredumper:  Add ability to use directory other than /tmp"

2 years agoMerge "pjsip / hep: Provide correct local address for Websockets."
Joshua Colp [Thu, 16 Nov 2017 17:53:53 +0000 (11:53 -0600)]
Merge "pjsip / hep: Provide correct local address for Websockets."

2 years agoMerge "sorcery: Add ast_sorcery_retrieve_by_prefix()"
Jenkins2 [Thu, 16 Nov 2017 16:27:00 +0000 (10:27 -0600)]
Merge "sorcery: Add ast_sorcery_retrieve_by_prefix()"

2 years agoMerge "chan_pjsip.c: Improve answer failure log messages."
Joshua Colp [Thu, 16 Nov 2017 16:11:32 +0000 (10:11 -0600)]
Merge "chan_pjsip.c: Improve answer failure log messages."

2 years agoThis patch adds a beanstalk CEL backend.
Nir Simionovich [Thu, 19 Oct 2017 19:44:16 +0000 (15:44 -0400)]
This patch adds a beanstalk CEL backend.

Beanstalkd is a simple to use job queue. It provides a means to
create multiple job queues called "tubes". Each tube can store
multiple jobs, with varying priorities with the queue. Queue
processing is available via a simple TCP socket or via well defined
libraries, avaialble at
https://github.com/kr/beanstalkd/wiki/client-libraries

This module is based upon the beanstalk-client library, available
for download at: https://github.com/deepfryed/beanstalk-client

This module currently doesn't support user defined events.

Change-Id: Ic3a087faeeac045d69a2a018e60e29831ddb95ab

2 years agoMerge "This patch adds a beanstalk CDR backend."
Jenkins2 [Thu, 16 Nov 2017 15:36:40 +0000 (09:36 -0600)]
Merge "This patch adds a beanstalk CDR backend."

2 years agoMerge "audiohook.c: Fix freeing a frame and still using it."
Joshua Colp [Thu, 16 Nov 2017 14:27:04 +0000 (08:27 -0600)]
Merge "audiohook.c: Fix freeing a frame and still using it."

2 years agochan_pjsip.c: Improve answer failure log messages.
Richard Mudgett [Fri, 10 Nov 2017 01:58:12 +0000 (19:58 -0600)]
chan_pjsip.c: Improve answer failure log messages.

* Balanced the session->inv_session refs on answer failure.

Change-Id: I33542d639d37e692cb46550b972a5fcfc3b804b8

2 years agoaudiohook.c: Fix freeing a frame and still using it.
Richard Mudgett [Wed, 15 Nov 2017 00:00:55 +0000 (18:00 -0600)]
audiohook.c: Fix freeing a frame and still using it.

Memory corruption happened to the media frame caches when an audio hook
freed a frame when it shouldn't.  I think the freed frame was because a
jitter buffer interpolated a missing frame and the audio hook
unconditionally freed it.

* Made audiohook.c:audio_audiohook_write_list() not free an interpolated
frame if it is the same frame as what was passed into the routine.

* Made plc.c:normalise_history() use memmove() instead of memcpy() on a
memory block that could overlap.  Found by valgrind investigating this
issue.

ASTERISK-27238
ASTERISK-27412

Change-Id: I548d86894281fc4529aefeb9f161f2131ecc6fde

2 years agoapp_record: Don't set RECORD_STATUS chan var until file is closed
George Joseph [Wed, 15 Nov 2017 18:10:16 +0000 (11:10 -0700)]
app_record:  Don't set RECORD_STATUS chan var until file is closed

We've been calling pbx_builtin_setvar_helper to set the
RECORD_STATUS variable before actually closing the recorded file.
If a client is watching VarSet events and tries to do something with
the file when a RECORD_STATUS event is seen, they might attempt to
do so while the file it's still open.

We now delay calling pbx_builtin_setvar_helper until after we close
the file.

ASTERISK-27423

Change-Id: I7fe9de99953e46b4bafa2b38cf151fe8f6488254

2 years agoast_coredumper: Add ability to use directory other than /tmp
George Joseph [Tue, 7 Nov 2017 14:25:59 +0000 (07:25 -0700)]
ast_coredumper:  Add ability to use directory other than /tmp

The OUTPUTDIR environment variable can now be set either in the
environment itself or in ast_debug_tools.conf.  If set, it's used
for all work products instead of /tmp.

Also added the --tarball-config option that includes the contents
of /etc/asterisk when either --tarball-coredumps or --tarball-results
are used.

Change-Id: I66b2553319df61caea5b313d084f51978f730b4c

2 years agoMerge "bundled_pjproject: Update to 2.7.1"
Jenkins2 [Tue, 14 Nov 2017 22:03:57 +0000 (16:03 -0600)]
Merge "bundled_pjproject: Update to 2.7.1"

2 years agoMerge "bundled_pjproject: sip_parser: Fix return code in pjsip_find_msg"
Joshua Colp [Tue, 14 Nov 2017 20:49:05 +0000 (14:49 -0600)]
Merge "bundled_pjproject: sip_parser:  Fix return code in pjsip_find_msg"

2 years agopjsip / hep: Provide correct local address for Websockets.
Joshua Colp [Mon, 13 Nov 2017 13:14:23 +0000 (13:14 +0000)]
pjsip / hep: Provide correct local address for Websockets.

Previously for PJSIP the local address of WebSocket connections
was set to the remote address. For logging purposes this is
not particularly useful.

The WebSocket API has been extended to allow the local
address to be queried and this is used in PJSIP to set the
local address to the correct value.

The PJSIP HEP support has also been tweaked so that reliable
transports always use the local address on the transport
and do not try to (wrongly) guess. As they are connection
based it is impossible for the source to be anything else.

ASTERISK-26758
ASTERISK-27363

Change-Id: Icd305fd038ad755e2682ab2786e381f6bf29e8ca

2 years agoMerge "core: Fix configuration of remote console socket path."
Joshua Colp [Tue, 14 Nov 2017 16:31:40 +0000 (10:31 -0600)]
Merge "core: Fix configuration of remote console socket path."

2 years agoMerge "pjsip: Add patch to allow all transports to be destroyed."
Jenkins2 [Tue, 14 Nov 2017 15:06:33 +0000 (09:06 -0600)]
Merge "pjsip: Add patch to allow all transports to be destroyed."

2 years agoMerge "core: Use ast_alertpipe for Asterisk signal monitoring thread."
Joshua Colp [Tue, 14 Nov 2017 13:32:24 +0000 (07:32 -0600)]
Merge "core: Use ast_alertpipe for Asterisk signal monitoring thread."

2 years agoMerge "core: Add cache_media_frames debugging option."
Jenkins2 [Tue, 14 Nov 2017 12:56:54 +0000 (06:56 -0600)]
Merge "core: Add cache_media_frames debugging option."

2 years agoMerge "alertpipe: Correct documented return of ast_alertpipe_write."
Joshua Colp [Tue, 14 Nov 2017 11:46:58 +0000 (05:46 -0600)]
Merge "alertpipe: Correct documented return of ast_alertpipe_write."

2 years agoalertpipe: Correct documented return of ast_alertpipe_write.
Corey Farrell [Mon, 13 Nov 2017 23:47:46 +0000 (18:47 -0500)]
alertpipe: Correct documented return of ast_alertpipe_write.

Change-Id: I4ea49c441890a81384144479dc93ab5a3989486d

2 years agoMerge "vectors: Add new macro and a string vector definition."
Jenkins2 [Mon, 13 Nov 2017 23:26:22 +0000 (17:26 -0600)]
Merge "vectors: Add new macro and a string vector definition."

2 years agoMerge "menuselect: Delete and ignore aclocal.m4."
Joshua Colp [Mon, 13 Nov 2017 23:01:35 +0000 (17:01 -0600)]
Merge "menuselect: Delete and ignore aclocal.m4."

2 years agocore: Use ast_alertpipe for Asterisk signal monitoring thread.
Corey Farrell [Fri, 10 Nov 2017 01:47:27 +0000 (20:47 -0500)]
core: Use ast_alertpipe for Asterisk signal monitoring thread.

Reduce the signal monitoring thread file descriptor use from two to one
on systems that support eventfd.

Change-Id: Id4041a237d481ff699639e153ea6982fee14a462

2 years agocore: Fix configuration of remote console socket path.
Corey Farrell [Mon, 13 Nov 2017 22:20:27 +0000 (17:20 -0500)]
core: Fix configuration of remote console socket path.

The remote console socket path is the combination of asterisk.conf
settings astrundir from [directories] and astctl from [files].
Unconditionally combine the two strings after processing all values
to ensure we end up with the correct socket path.

ASTERISK-27415

Change-Id: Ib1e2805d55d6b0955c6430a1a2a93acbf9b091e8

2 years agobundled_pjproject: sip_parser: Fix return code in pjsip_find_msg
George Joseph [Fri, 10 Nov 2017 16:37:16 +0000 (09:37 -0700)]
bundled_pjproject: sip_parser:  Fix return code in pjsip_find_msg

The default return code for pjsip_find_msg was PJ_SUCCESS so if
a Content-Length header wasn't found at all, pjsip_find_msg was
returning PJ_SUCCESS instead of PJSIP_EMISSINGHDR.

Also added the volatile keyword to a few variables that are used
both inside and outside the PJ_TRY/PJ_CATCH block.

Partial fix for ASTERISK_27408

Change-Id: If82ba9de921e3d57df9c68cf96ee45ccc1491f7a

2 years agobundled_pjproject: Update to 2.7.1
Ben Ford [Mon, 13 Nov 2017 20:35:14 +0000 (14:35 -0600)]
bundled_pjproject: Update to 2.7.1

Update from 2.7 to 2.7.1 for bundled pjproject. Changed version
and removed patch files included in the update.

Change-Id: I55cea8e734b318c2df9daf86aa0802c559ec8357

2 years agosorcery: Add ast_sorcery_retrieve_by_prefix()
Sean Bright [Thu, 9 Nov 2017 14:21:38 +0000 (09:21 -0500)]
sorcery: Add ast_sorcery_retrieve_by_prefix()

Some consumers of the sorcery API use ast_sorcery_retrieve_by_regex
only so that they can anchor the potential match as a prefix and not
because they truly need regular expressions.

Rather than using regular expressions for simple prefix lookups, add
a new operation - ast_sorcery_retrieve_by_prefix - that does them.

Change-Id: I56f4e20ba1154bd52281f995c27a429a854f6a79

2 years agoCLI: Create ast_cli_completion_vector.
Corey Farrell [Tue, 7 Nov 2017 23:07:35 +0000 (18:07 -0500)]
CLI: Create ast_cli_completion_vector.

This is a rewrite of ast_cli_completion_matches using a vector to build
the list.  The original function calls the vector version, NULL
terminates the vector and extracts the elements array.

One change in behavior the results are now sorted and deduplicated. This
will solve bugs where some duplicate checking was done before the list
was sorted.

Change-Id: Iede20c5b4d965fa5ec71fda136ce9425eeb69519

2 years agovectors: Add new macro and a string vector definition.
Corey Farrell [Tue, 7 Nov 2017 20:00:33 +0000 (15:00 -0500)]
vectors: Add new macro and a string vector definition.

* AST_VECTOR_STEAL_ELEMENTS - steal the array of elements for use
  with non-vector code.
* struct ast_vector_string - a vector of 'char *'.

Change-Id: I104d1b204be03fccf67e02a195596adcb5ab1e42

2 years agoMerge "Build System: Disable parallel make in the root Makefile."
Joshua Colp [Mon, 13 Nov 2017 13:47:38 +0000 (07:47 -0600)]
Merge "Build System: Disable parallel make in the root Makefile."

2 years agoMerge "res_pjsip_pubsub: Ensure remote URI contains URI only."
Jenkins2 [Mon, 13 Nov 2017 13:11:57 +0000 (07:11 -0600)]
Merge "res_pjsip_pubsub: Ensure remote URI contains URI only."

2 years agocore: Add cache_media_frames debugging option.
Richard Mudgett [Sat, 11 Nov 2017 19:01:47 +0000 (13:01 -0600)]
core: Add cache_media_frames debugging option.

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

* Added the "cache_media_frames" option to asterisk.conf.  Disabling the
option helps track down media frame mismanagement when using valgrind or
MALLOC_DEBUG.  The cache gets in the way of determining if the frame is
used after free and who freed it.  NOTE: This option has no effect when
Asterisk is compiled with the LOW_MEMORY compile time option enabled
because the cache code does not exist.

To disable the media frame cache simply disable the cache_media_frames
option in asterisk.conf and restart Asterisk.

Sample asterisk.conf setting:
[options]
cache_media_frames=no

ASTERISK-27413

Change-Id: I0ab2ce0f4547cccf2eb214901835c2d951b78c00

2 years agoframe.c: Make ast_frame_free()/ast_frfree() NULL tolerant
Richard Mudgett [Sat, 11 Nov 2017 15:42:01 +0000 (09:42 -0600)]
frame.c: Make ast_frame_free()/ast_frfree() NULL tolerant

Change-Id: Ic49d821ef88ada38a31bdd835b9531443c55d793