17 months agoMerge "BuildSystem: Remove orphaned .PHONY targets."
Jenkins2 [Mon, 22 Jan 2018 14:44:05 +0000 (08:44 -0600)]
Merge "BuildSystem: Remove orphaned .PHONY targets."

17 months agoMerge "res_pjsip: Document tlsv1_1 and tlsv1_2 methods"
Jenkins2 [Mon, 22 Jan 2018 14:35:13 +0000 (08:35 -0600)]
Merge "res_pjsip: Document tlsv1_1 and tlsv1_2 methods"

17 months agoBuildSystem: Remove AC_CONFIG_AUX_DIR.
Alexander Traud [Sat, 20 Jan 2018 18:58:35 +0000 (19:58 +0100)]
BuildSystem: Remove AC_CONFIG_AUX_DIR.


Change-Id: I9f4d3d2bc1481748e39ad1e2b0a364d38e38978b

17 months agoMerge "BuildSystem: Detect external library Lua in version 5.3."
Jenkins2 [Sat, 20 Jan 2018 07:24:24 +0000 (01:24 -0600)]
Merge "BuildSystem: Detect external library Lua in version 5.3."

17 months agoBuildSystem: Remove orphaned .PHONY targets.
Alexander Traud [Fri, 19 Jan 2018 18:21:19 +0000 (19:21 +0100)]
BuildSystem: Remove orphaned .PHONY targets.

Change-Id: Ic44d75141b9bf99e7d72fcc82ee111b5cf6989d2

17 months agoMerge "BuildSystem: Avoid $EUID and use id -u instead."
Jenkins2 [Fri, 19 Jan 2018 01:31:20 +0000 (19:31 -0600)]
Merge "BuildSystem: Avoid $EUID and use id -u instead."

17 months agoMerge "loader: Miscellaneous fixes."
Jenkins2 [Fri, 19 Jan 2018 01:18:01 +0000 (19:18 -0600)]
Merge "loader: Miscellaneous fixes."

17 months agoMerge "cel_odbc.c: Fix menuslect module description display."
Jenkins2 [Thu, 18 Jan 2018 21:55:17 +0000 (15:55 -0600)]
Merge "cel_odbc.c: Fix menuslect module description display."

17 months agores_pjsip: Document tlsv1_1 and tlsv1_2 methods
Sean Bright [Thu, 18 Jan 2018 20:55:20 +0000 (15:55 -0500)]
res_pjsip: Document tlsv1_1 and tlsv1_2 methods

Change-Id: I67ed9039bf3f132fb20ee7a750e0aef0f704d7d3

17 months agoMerge "BuildSystem: Use the detected name for MD5 everywhere."
Jenkins2 [Thu, 18 Jan 2018 16:17:49 +0000 (10:17 -0600)]
Merge "BuildSystem: Use the detected name for MD5 everywhere."

17 months agoMerge "BuildSystem: Invoke install not in GNU but POSIX style."
Jenkins2 [Thu, 18 Jan 2018 16:02:53 +0000 (10:02 -0600)]
Merge "BuildSystem: Invoke install not in GNU but POSIX style."

17 months agoMerge "BuildSystem: In OpenBSD, xmlstarlet is xml."
Jenkins2 [Thu, 18 Jan 2018 15:26:50 +0000 (09:26 -0600)]
Merge "BuildSystem: In OpenBSD, xmlstarlet is xml."

17 months agoMerge "app_followme: Add a prompt to be read when a call is connected"
Jenkins2 [Thu, 18 Jan 2018 15:16:38 +0000 (09:16 -0600)]
Merge "app_followme:  Add a prompt to be read when a call is connected"

17 months agoMerge "pjproject_bundled: Prevent crash on bad outgoing header"
Jenkins2 [Wed, 17 Jan 2018 18:33:20 +0000 (12:33 -0600)]
Merge "pjproject_bundled:  Prevent crash on bad outgoing header"

17 months agoapp_followme: Add a prompt to be read when a call is connected
ghjm [Wed, 27 Dec 2017 23:44:31 +0000 (18:44 -0500)]
app_followme:  Add a prompt to be read when a call is connected

This patch adds the ability to configure a prompt which will be read
to the "winner" who pressed 1 (or the configured value) and received
the call.

ASTERISK-24372 #close

Change-Id: I6ec1c6c883347f7d1e1f597189544993c8d65272

17 months agoMerge "res_pjsip: Split type=identify to IP address and SIP header matching priorities"
Jenkins2 [Wed, 17 Jan 2018 17:42:03 +0000 (11:42 -0600)]
Merge "res_pjsip: Split type=identify to IP address and SIP header matching priorities"

17 months agoloader: Miscellaneous fixes.
Corey Farrell [Wed, 17 Jan 2018 06:28:57 +0000 (01:28 -0500)]
loader: Miscellaneous fixes.

* Remove comment about lazy load.
* Improve message about module already being loaded and running.
* Handle allocation error in add_to_load_order.
* Dead code elimination from modules_shutdown.

Change-Id: I22261599c46d0f416e568910ec9502f45143197f

18 months agoBuildSystem: Use the detected name for MD5 everywhere.
Alexander Traud [Wed, 17 Jan 2018 14:36:14 +0000 (15:36 +0100)]
BuildSystem: Use the detected name for MD5 everywhere.

Affacted the (automatic) download script for external modules:


Change-Id: If4c3176f7bf58df32fec6e02a659f1a78d57cf4b

18 months agoBuildSystem: Invoke install not in GNU but POSIX style.
Alexander Traud [Wed, 17 Jan 2018 13:11:24 +0000 (14:11 +0100)]
BuildSystem: Invoke install not in GNU but POSIX style.


Change-Id: Iaaa6a19d2fe031dffcba441d0502a7ea65c93cb3

18 months agoBuildSystem: In OpenBSD, xmlstarlet is xml.
Alexander Traud [Wed, 17 Jan 2018 12:47:45 +0000 (13:47 +0100)]
BuildSystem: In OpenBSD, xmlstarlet is xml.


Change-Id: I1c7087f7f7582e40b3312c690d912c9a86466805

18 months agoBuildSystem: Detect external library Lua in version 5.3.
Alexander Traud [Wed, 17 Jan 2018 08:51:29 +0000 (09:51 +0100)]
BuildSystem: Detect external library Lua in version 5.3.

On some platforms, you decide to go for one specific version of Lua, for
example in OpenBSD. On other platforms, you are able to install several versions
side-by-side, for example in Ubuntu and Fedora. Asterisk already works with
Lua 5.3. Asterisk failed to detect Lua 5.3 on those platforms which allow
several versions.


Change-Id: If7a4b395d844a464e9a1f4f626c5bff4ee67eed8

18 months agores_pjsip: Split type=identify to IP address and SIP header matching priorities
Richard Mudgett [Sat, 23 Dec 2017 01:50:34 +0000 (19:50 -0600)]
res_pjsip: Split type=identify to IP address and SIP header matching priorities

The type=identify endpoint identification method can match by IP address
and by SIP header.  However, the SIP header matching has limited
usefulness because you cannot specify the SIP header matching priority
relative to the IP address matching.  All the matching happens at the same
priority and the order of evaluating the identify sections is
indeterminate.  e.g., If you had two type=identify sections where one
matches by IP address for endpoint alice and the other matches by SIP
header for endpoint bob then you couldn't predict which endpoint is
matched when a request comes in that matches both.

* Extract the SIP header matching criteria into its own "header" endpoint
identification method so the user can specify the relative priority of the
SIP header and the IP address matching criteria in the global
endpoint_identifier_order option.  The "ip" endpoint identification method
now only matches by IP address.


Change-Id: I9df142a575b7e1e3471b7cda5d3ea156cef08095

18 months agotaskprocessor.c: Increase the number of tps_singletons container buckets.
Richard Mudgett [Tue, 16 Jan 2018 14:32:20 +0000 (08:32 -0600)]
taskprocessor.c: Increase the number of tps_singletons container buckets.

Since v12 the number of taskprocessors in the system has increased a lot.
Small systems can easily have over a hundred and larger systems can have

Most uses of the tps_singletons container deal with creating and
destroying the taskprocessors.  However, the pjsip distributor looks up
taskprocessors/serializers by name frequently.  It needs to find the
serializer for incoming SIP responses to distribute them to the
appropriate serializer.

Change-Id: Ice0603606614ba49f7c0c316c524735c064e7e43

18 months agoMerge "BuildSystem: Resolve resolv.h not via Generic but Particular Header-Check."
Jenkins2 [Tue, 16 Jan 2018 15:52:45 +0000 (09:52 -0600)]
Merge "BuildSystem: Resolve resolv.h not via Generic but Particular Header-Check."

18 months agoMerge "res_stasis_recording: Allow symbolic links in configured recordings dir."
Jenkins2 [Tue, 16 Jan 2018 15:42:25 +0000 (09:42 -0600)]
Merge "res_stasis_recording: Allow symbolic links in configured recordings dir."

18 months agopjproject_bundled: Prevent crash on bad outgoing header
George Joseph [Tue, 16 Jan 2018 14:20:28 +0000 (07:20 -0700)]
pjproject_bundled:  Prevent crash on bad outgoing header

We still need to figure out how a bad header is getting into the
outgoing message but this patch to pjproject prevents attempting
to print that header and causing a crash.

For several users, this crash happens when sending 183 progress

Reported by: Ross Beer, Jan Rozhon

Change-Id: Ie5c5a921c890c843587763e7f33f987dfe66bd16

18 months agoBuildSystem: Avoid $EUID and use id -u instead.
Alexander Traud [Tue, 16 Jan 2018 12:34:23 +0000 (13:34 +0100)]
BuildSystem: Avoid $EUID and use id -u instead.

Makefile included a call to ${EUID} which requires the shell bash. To keep
compatibility with other shells like dash or ksh, use id -u instead.


Change-Id: Ia6e74f5bc9aab4e6dc62b7439f647b7964e6f657

18 months agocel_odbc.c: Fix menuslect module description display.
Richard Mudgett [Tue, 16 Jan 2018 00:03:07 +0000 (18:03 -0600)]
cel_odbc.c: Fix menuslect module description display.

Asterisk's makefile for menuselect has a very simple source file parsing
script that looks for AST_MODULE_INFO lines to extract the quoted string
as a module description.  If it does not find a quoted string it uses the
whole line as the description.

Change-Id: I80f13a63818e4e28d683639a94a4dfaea405c1d5

18 months agoloader: Add dependency fields to module structures.
Corey Farrell [Sun, 19 Nov 2017 22:30:49 +0000 (17:30 -0500)]
loader: Add dependency fields to module structures.

* Declare 'requires' and 'enhances' text fields on module info structure.
* Rename 'nonoptreq' to 'optional_modules'.
* Update doxygen comments.

Still need to investigate dependencies among modules I cannot compile.

Change-Id: I3ad9547a0a6442409ff4e352a6d897bef2cc04bf

18 months agovector: Additional string vector definitions.
Corey Farrell [Mon, 20 Nov 2017 02:10:09 +0000 (21:10 -0500)]
vector: Additional string vector definitions.

This function will add items to an ast_vector_string by splitting values
of a string buffer.  Items are appended to the vector in the order they
are found.

A vector of 'const char *'.

Change-Id: I1bf02a1efeb2baeea11c59c557d39dd1197494d7

18 months agoBuildSystem: Resolve resolv.h not via Generic but Particular Header-Check.
Alexander Traud [Mon, 15 Jan 2018 16:57:11 +0000 (17:57 +0100)]
BuildSystem: Resolve resolv.h not via Generic but Particular Header-Check.


Change-Id: I27c67563788e6f67eeda5fb51a741823a50a95e2

18 months agoMerge "config_transport: Enable TCP_NODELAY on TLS transports"
Jenkins2 [Mon, 15 Jan 2018 16:40:27 +0000 (10:40 -0600)]
Merge "config_transport:  Enable TCP_NODELAY on TLS transports"

18 months agoMerge "BuildSystem: Really do not pass unknown-warning options to the compiler."
Jenkins2 [Mon, 15 Jan 2018 13:24:06 +0000 (07:24 -0600)]
Merge "BuildSystem: Really do not pass unknown-warning options to the compiler."

18 months agoMerge "menuselect: Remove unused dev-mode option TRACE_FRAMES."
Jenkins2 [Mon, 15 Jan 2018 13:12:22 +0000 (07:12 -0600)]
Merge "menuselect: Remove unused dev-mode option TRACE_FRAMES."

18 months agoMerge "res_config_pgsql: Avoid typecasting an int to unsigned char."
Jenkins2 [Sun, 14 Jan 2018 15:04:19 +0000 (09:04 -0600)]
Merge "res_config_pgsql: Avoid typecasting an int to unsigned char."

18 months agoconfig_transport: Enable TCP_NODELAY on TLS transports
George Joseph [Sat, 13 Jan 2018 19:49:07 +0000 (12:49 -0700)]
config_transport:  Enable TCP_NODELAY on TLS transports

We did this for TCP transports already but I'm not sure why we
didn't do it for TLS transports.

ASTERISK_27474 #not_final_fix

Change-Id: I5b1ef4b882f7b859e718236686b7898751dbb262

18 months agores_stasis_recording: Allow symbolic links in configured recordings dir.
Corey Farrell [Sat, 13 Jan 2018 00:37:43 +0000 (19:37 -0500)]
res_stasis_recording: Allow symbolic links in configured recordings dir.

If any component of ast_config_AST_RECORDING_DIR is a symbolic link we
would incorrectly assume the ARI user was trying to escape the recording
path.  Create additional check to check the recording directory's
realpath, only deny access if both do not match.

This is needed by the testsuite when run by 'run-local'.

Change-Id: I9145e841865edadcb5f75cead3471ad06bbb56c0

18 months agoMerge "install_prereq: Update Debian/Ubuntu libraries."
Jenkins2 [Fri, 12 Jan 2018 18:20:24 +0000 (12:20 -0600)]
Merge "install_prereq: Update Debian/Ubuntu libraries."

18 months agomenuselect: Remove unused dev-mode option TRACE_FRAMES.
Corey Farrell [Fri, 12 Jan 2018 18:00:26 +0000 (13:00 -0500)]
menuselect: Remove unused dev-mode option TRACE_FRAMES.

ASTERISK-27575 #close

Change-Id: Ica3a522892afed7a96816a5ecf140e1671f46ad4

18 months agoMerge "chan_ooh323: Avoid typecasting an int to unsigned short."
Jenkins2 [Fri, 12 Jan 2018 17:24:13 +0000 (11:24 -0600)]
Merge "chan_ooh323: Avoid typecasting an int to unsigned short."

18 months agoMerge "app_osplookup.c: Avoid two format truncations."
Jenkins2 [Fri, 12 Jan 2018 16:36:23 +0000 (10:36 -0600)]
Merge "app_osplookup.c: Avoid two format truncations."

18 months agoMerge "cdr_syslog: Deprecate unmaintained module"
Jenkins2 [Fri, 12 Jan 2018 15:29:37 +0000 (09:29 -0600)]
Merge "cdr_syslog: Deprecate unmaintained module"

18 months agores_config_pgsql: Avoid typecasting an int to unsigned char.
Alexander Traud [Fri, 12 Jan 2018 09:50:32 +0000 (10:50 +0100)]
res_config_pgsql: Avoid typecasting an int to unsigned char.

clang 5.0 warned about this.


Change-Id: If41f400a51973c06cdb9b75462e535b616bfe385

18 months agoMerge "chan_sip: Check that an iostream exists before accessing."
Joshua Colp [Fri, 12 Jan 2018 14:45:08 +0000 (08:45 -0600)]
Merge "chan_sip: Check that an iostream exists before accessing."

18 months agoMerge "Ignore quilt .pc directory, used in deb packaging"
Jenkins2 [Fri, 12 Jan 2018 14:29:43 +0000 (08:29 -0600)]
Merge "Ignore quilt .pc directory, used in deb packaging"

18 months agoBuildSystem: Really do not pass unknown-warning options to the compiler.
Alexander Traud [Fri, 12 Jan 2018 09:17:04 +0000 (10:17 +0100)]
BuildSystem: Really do not pass unknown-warning options to the compiler.

When an older GCC version is called with a too new warning option, GCC exited
with an error and Asterisk was not built. Therefore, the configure script tests
the installed compiler whether it supports that warning option. If not, Asterisk
does not pass it to the installed compiler. However, some compilers (like clang)
do not exit (error) but give just a warning in such a case. Because the compiler
did not exit, Asterisk passed the unknown-warning option.


Change-Id: Ia9d148e689c173df4e91699113605dab2de36038

18 months agoapp_osplookup.c: Avoid two format truncations.
Alexander Traud [Fri, 12 Jan 2018 10:27:23 +0000 (11:27 +0100)]
app_osplookup.c: Avoid two format truncations.

GCC 7 warned about this.


Change-Id: I4a00458dbe9b575ef04338b6a7852272745e1552

18 months agochan_ooh323: Avoid typecasting an int to unsigned short.
Alexander Traud [Fri, 12 Jan 2018 10:03:38 +0000 (11:03 +0100)]
chan_ooh323: Avoid typecasting an int to unsigned short.

clang 5.0 warned about this.


Change-Id: I898fe4255023138a9e8b579fe4482fcf582f2b78

18 months agoinstall_prereq: Update Debian/Ubuntu libraries.
Alexander Traud [Fri, 5 Jan 2018 21:13:52 +0000 (22:13 +0100)]
install_prereq: Update Debian/Ubuntu libraries.


Change-Id: I0818b6e42631be1b69237e2b41d3415275693e53

18 months agoMerge "res_pjsip_endpoint_identifier_ip.c: Remove unnecessary requirement."
Jenkins2 [Thu, 11 Jan 2018 19:36:02 +0000 (13:36 -0600)]
Merge "res_pjsip_endpoint_identifier_ip.c: Remove unnecessary requirement."

18 months agochan_sip: Check that an iostream exists before accessing.
Joshua Colp [Thu, 11 Jan 2018 18:05:05 +0000 (13:05 -0500)]
chan_sip: Check that an iostream exists before accessing.

Before getting the file descriptor for an iostream check
that it is present.


Change-Id: Ie0aa1394007a37c30e337ea1176a6fb3a63bc99c

18 months agoMerge "stasis_message_router: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 14:46:34 +0000 (08:46 -0600)]
Merge "stasis_message_router: Remove silly usage of RAII_VAR."

18 months agoMerge "res_pjsip.c: Update the endpoint identification documentation."
Jenkins2 [Thu, 11 Jan 2018 14:42:52 +0000 (08:42 -0600)]
Merge "res_pjsip.c: Update the endpoint identification documentation."

18 months agoIgnore quilt .pc directory, used in deb packaging
Tzafrir Cohen [Thu, 11 Jan 2018 14:09:04 +0000 (16:09 +0200)]
Ignore quilt .pc directory, used in deb packaging

Debian packaging uses quilt to manage patches. Book-keeping for them is
done using quilt (either directly, or in a compatible format), and
tracked in the directory .pc .

Change-Id: I22c90f3d7ab8918e6216e7b686de6fa0e1fdaa7b
Signed-off-by: Tzafrir Cohen <>

18 months agoMerge "stasis_endpoints: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 13:58:08 +0000 (07:58 -0600)]
Merge "stasis_endpoints: Remove silly usage of RAII_VAR."

18 months agoMerge "stasis_system: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 13:25:51 +0000 (07:25 -0600)]
Merge "stasis_system: Remove silly usage of RAII_VAR."

18 months agoMerge "stasis: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 12:58:10 +0000 (06:58 -0600)]
Merge "stasis: Remove silly usage of RAII_VAR."

18 months agoMerge "stasis_bridges: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 12:43:33 +0000 (06:43 -0600)]
Merge "stasis_bridges: Remove silly usage of RAII_VAR."

18 months agoMerge "stasis_cache: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 12:16:07 +0000 (06:16 -0600)]
Merge "stasis_cache: Remove silly usage of RAII_VAR."

18 months agoMerge "stasis_cache_pattern: Remove silly usage of RAII_VAR."
Jenkins2 [Thu, 11 Jan 2018 11:48:52 +0000 (05:48 -0600)]
Merge "stasis_cache_pattern: Remove silly usage of RAII_VAR."

18 months agoMerge "res_pjsip.c: Fix ident_to_str() and refactor ident_handler()."
Joshua Colp [Thu, 11 Jan 2018 10:55:21 +0000 (04:55 -0600)]
Merge "res_pjsip.c: Fix ident_to_str() and refactor ident_handler()."

18 months agostasis: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 17:23:00 +0000 (12:23 -0500)]
stasis: Remove silly usage of RAII_VAR.

Change-Id: Ib11193531e797bcb16bba560a408eab155f706d1

18 months agostasis_cache_pattern: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 17:09:08 +0000 (12:09 -0500)]
stasis_cache_pattern: Remove silly usage of RAII_VAR.

Change-Id: Ic98a51f555062cd863b6db3f8d76065943a9dea3

18 months agoMerge "app_confbridge: Fix NULL check in action_kick_last."
Joshua Colp [Wed, 10 Jan 2018 15:08:27 +0000 (09:08 -0600)]
Merge "app_confbridge: Fix NULL check in action_kick_last."

18 months agoMerge "bridge_softmix: Fix sfu_append_source_streams test."
Joshua Colp [Wed, 10 Jan 2018 14:19:56 +0000 (08:19 -0600)]
Merge "bridge_softmix: Fix sfu_append_source_streams test."

18 months agocdr_syslog: Deprecate unmaintained module
Sean Bright [Tue, 9 Jan 2018 22:23:54 +0000 (17:23 -0500)]
cdr_syslog: Deprecate unmaintained module

There has been an open issue against cdr_syslog (ASTERISK~14441) about
a race condition for 7.5 years that has never been addressed. Because
this module is effectively unmaintained and currently broken, there is
no sense in keeping it around.

If logging CDRs to syslog is a desirable feature, it would probably be
better to write the logs directly to the syslog server via socket
instead of using the facilities provided by openlog/syslog/closelog.
Doing so would address the race condition referenced in the associated

Change-Id: Ic77b94cd97f355a9cf5b1d3f3444964a6e0ba5dc

18 months agoMerge "res_pjsip_endpoint_identifier_ip.c: Allow multiple IdentifyDetail AMI events."
Joshua Colp [Wed, 10 Jan 2018 13:16:14 +0000 (07:16 -0600)]
Merge "res_pjsip_endpoint_identifier_ip.c: Allow multiple IdentifyDetail AMI events."

18 months agoMerge "res_pjsip: Add AMI action 'PJSIPShowAuths'"
Joshua Colp [Wed, 10 Jan 2018 12:55:29 +0000 (06:55 -0600)]
Merge "res_pjsip: Add AMI action 'PJSIPShowAuths'"

18 months agoMerge "res_stasis: Reduce RAII_VAR usage."
Joshua Colp [Wed, 10 Jan 2018 12:54:40 +0000 (06:54 -0600)]
Merge "res_stasis: Reduce RAII_VAR usage."

18 months agostasis_bridges: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 17:16:58 +0000 (12:16 -0500)]
stasis_bridges: Remove silly usage of RAII_VAR.

Change-Id: I0fa7ab05454f183dc4ff10e26d18776d2b0fcf1f

18 months agostasis_cache: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 17:10:27 +0000 (12:10 -0500)]
stasis_cache: Remove silly usage of RAII_VAR.

Change-Id: Ifa95e5801c949df296c7e4376347730fb0ed52ef

18 months agostasis_endpoints: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 16:57:50 +0000 (11:57 -0500)]
stasis_endpoints: Remove silly usage of RAII_VAR.

Change-Id: Ic099dc552f36c353c89783a4bcfd09f010432733

18 months agostasis_message_router: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 16:55:37 +0000 (11:55 -0500)]
stasis_message_router: Remove silly usage of RAII_VAR.

Change-Id: I50d6ae230920e0b878ed9cc8f79eef746e06701d

18 months agostasis_system: Remove silly usage of RAII_VAR.
Corey Farrell [Tue, 9 Jan 2018 16:53:28 +0000 (11:53 -0500)]
stasis_system: Remove silly usage of RAII_VAR.

Change-Id: Iedbe5656cee68cd3a96a953558764aa02d4a0c3b

18 months agoMerge "res_pjsip_session: Always bundle streams if WebRTC is enabled."
Jenkins2 [Tue, 9 Jan 2018 20:23:42 +0000 (14:23 -0600)]
Merge "res_pjsip_session: Always bundle streams if WebRTC is enabled."

18 months agoMerge "Revert "codec_opus: Make libcurl a dependency in menuselect""
Jenkins2 [Tue, 9 Jan 2018 19:52:14 +0000 (13:52 -0600)]
Merge "Revert "codec_opus: Make libcurl a dependency in menuselect""

18 months agores_pjsip.c: Update the endpoint identification documentation.
Richard Mudgett [Wed, 3 Jan 2018 23:26:42 +0000 (17:26 -0600)]
res_pjsip.c: Update the endpoint identification documentation.

* Endpoint identify_by documentation.
* IP/Header endpoint identifier documentation.

Change-Id: Id92f00b495acca7be945daf749d2abd7f76a0b5a

18 months agores_pjsip_endpoint_identifier_ip.c: Remove unnecessary requirement.
Richard Mudgett [Wed, 3 Jan 2018 21:20:27 +0000 (15:20 -0600)]
res_pjsip_endpoint_identifier_ip.c: Remove unnecessary requirement.

The requirement that "ip" must be in the endpoint identify_by list to
allow the type=identify method to identify the endpoint is not necessary.
The "ip" identifier method can match one and only one endpoint.  To even
work, the "ip" identifier method configuration must explicitly specify the
identified endpoint.  Therefore, why bother configuring the type=identify
identifier in the first place?  The requirement only adds the potential
for configuration errors for no benefit.  Even worse, those configuration
errors cannot be detected when the configuration loads.  The requirement
was introduced with the ASTERISK_27206 patch.

* Remove the code change that enforces the requiremnt.  Listing the "ip"
method in the identify_by value is simply documentation.

Change-Id: Ia057f92a33fb5d9f51dc5d5692e3d5ee1a6f2c11

18 months agores_pjsip.c: Fix ident_to_str() and refactor ident_handler().
Richard Mudgett [Sat, 6 Jan 2018 01:03:16 +0000 (19:03 -0600)]
res_pjsip.c: Fix ident_to_str() and refactor ident_handler().

* Extracted sip_endpoint_identifier_type2str() and
sip_endpoint_identifier_str2type() to simplify the calling functions.

* Fixed pjsip_configuration.c:ident_to_str() building the endpoint's
identify_by value string.

Change-Id: Ide876768a8d5d828b12052e2a75008b0563fc509

18 months agores_pjsip_endpoint_identifier_ip.c: Allow multiple IdentifyDetail AMI events.
Richard Mudgett [Thu, 4 Jan 2018 23:04:39 +0000 (17:04 -0600)]
res_pjsip_endpoint_identifier_ip.c: Allow multiple IdentifyDetail AMI events.

The AMI PJSIPShowEndpoint action could only list one IdentifyDetail AMI
event per endpoint.  However, there is no reason that multiple
type=identify sections cannot identify the same endpoint.

* Reworked format_ami_endpoint_identify() to generate as many
IdentifyDetail AMI events as there are matching identifiers.

Change-Id: Ie146792aef72d78e05416ab5b27bc552a30399db

18 months agotranslate: Avoid absolute value on unsigned substraction.
Alexander Traud [Fri, 5 Jan 2018 11:51:47 +0000 (12:51 +0100)]
translate: Avoid absolute value on unsigned substraction.

ast_format_get_sample_rate(.) returns an unsigned type. The difference of a
substraction between two unsigned types does not get implicitly converted to a
signed type. Therefore, using abs(.) did not make sense.


Change-Id: Ib904d9ee0d46b6fdd1476fbc464fbbf813304017

18 months agoMerge "res_pjsip.c: Fix endpoint identifier registration name search."
Jenkins2 [Tue, 9 Jan 2018 14:23:57 +0000 (08:23 -0600)]
Merge "res_pjsip.c: Fix endpoint identifier registration name search."

18 months agoRevert "codec_opus: Make libcurl a dependency in menuselect"
Sean Bright [Tue, 9 Jan 2018 14:22:35 +0000 (08:22 -0600)]
Revert "codec_opus: Make libcurl a dependency in menuselect"

This reverts commit 028f4320de60a204e457ad606ab0a3318493b431.

Change-Id: Ieb91f825cb55202a937f5361c01d356e7662b70c

18 months agoMerge "res_stasis: Fix dial bridge unload."
Joshua Colp [Tue, 9 Jan 2018 13:01:45 +0000 (07:01 -0600)]
Merge "res_stasis: Fix dial bridge unload."

18 months agoMerge "BuildSystem: Really do not pass unknown-warning options to the compiler."
Jenkins2 [Tue, 9 Jan 2018 12:39:40 +0000 (06:39 -0600)]
Merge "BuildSystem: Really do not pass unknown-warning options to the compiler."

18 months agoMerge "codec_gsm: Avoid shifting a negative signed value."
Jenkins2 [Tue, 9 Jan 2018 12:22:30 +0000 (06:22 -0600)]
Merge "codec_gsm: Avoid shifting a negative signed value."

18 months agoMerge "res_pjsip_endpoint_identifier_ip.c: Fix apply identify validation."
Jenkins2 [Tue, 9 Jan 2018 11:46:34 +0000 (05:46 -0600)]
Merge "res_pjsip_endpoint_identifier_ip.c: Fix apply identify validation."

18 months agoMerge "BuildSystem: Find ptlib-config on Debian/Ubuntu."
Joshua Colp [Tue, 9 Jan 2018 11:41:24 +0000 (05:41 -0600)]
Merge "BuildSystem: Find ptlib-config on Debian/Ubuntu."

18 months agores_pjsip_session: Always bundle streams if WebRTC is enabled.
Joshua Colp [Mon, 8 Jan 2018 16:54:00 +0000 (16:54 +0000)]
res_pjsip_session: Always bundle streams if WebRTC is enabled.

Some WebRTC clients can't handle renegotiation with the addition of
streams that include an offer to bundle. They instead expect the
newly added streams to already be bundled. This change does such a thing
if WebRTC support is enabled on an endpoint.


Change-Id: I7fe9b7ac35a2798627d9c2c8369129f407af6461

18 months agobridge_softmix: Fix sfu_append_source_streams test.
Corey Farrell [Tue, 9 Jan 2018 02:25:23 +0000 (21:25 -0500)]
bridge_softmix: Fix sfu_append_source_streams test.

* validate_stream: zero result from ast_format_cap_identical indicates
  they are not identical, rather than non-zero indicating an error.
* validate_original_streams: use num_streams instead of
* Fix declaration of alice_dest_stream and bob_dest_stream.

Change-Id: I6b1dd8bed10439d3c7406f033eb1896b6c419147

18 months agoapp_confbridge: Fix NULL check in action_kick_last.
Corey Farrell [Tue, 9 Jan 2018 00:47:38 +0000 (19:47 -0500)]
app_confbridge: Fix NULL check in action_kick_last.

The check for last_user == NULL needs to happen before we dereference
the variable, previously it was possible for us to check flags of a NULL

Change-Id: I274f737aa8af9d2d53e4a78cdd7ad57561003945

18 months agores_stasis: Reduce RAII_VAR usage.
Corey Farrell [Sat, 6 Jan 2018 08:17:15 +0000 (03:17 -0500)]
res_stasis: Reduce RAII_VAR usage.

In addition to being a micro-optimization (RAII_VAR has overhead), this
change improves output of REF_DEBUG.  Unfortunately when RAII_VAR calls
ao2_cleanup it does so from a generated _dtor_varname function.  For
example this caused _dtor_app to release a reference instead of

Change-Id: I4ce67120583a446babf9adeec678b71d37fcd9e5

18 months agoMerge "res_stasis: Fix app_is_subscribed_bridge_id."
Jenkins2 [Mon, 8 Jan 2018 17:25:45 +0000 (11:25 -0600)]
Merge "res_stasis: Fix app_is_subscribed_bridge_id."

18 months agores_pjsip: Add AMI action 'PJSIPShowAuths'
Sungtae Kim [Fri, 5 Jan 2018 00:47:11 +0000 (01:47 +0100)]
res_pjsip: Add AMI action 'PJSIPShowAuths'

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


Change-Id: I1a88a75b38a2b1dd9d1de6c0307b20a3f584c817

18 months agoMerge "General: Avoid implicit conversion to char when changes value to negative."
Jenkins2 [Mon, 8 Jan 2018 12:51:40 +0000 (06:51 -0600)]
Merge "General: Avoid implicit conversion to char when changes value to negative."

18 months agoMerge "bridge_softmix: Removed unused parameter from check_binaural_position_change...
Jenkins2 [Mon, 8 Jan 2018 12:38:13 +0000 (06:38 -0600)]
Merge "bridge_softmix: Removed unused parameter from check_binaural_position_change(.)."

18 months agoMerge "editline: Avoid comparison between pointer and zero character constant."
Jenkins2 [Mon, 8 Jan 2018 12:13:32 +0000 (06:13 -0600)]
Merge "editline: Avoid comparison between pointer and zero character constant."

18 months agoMerge "pbx: Prevent execution of NULL pointer."
Jenkins2 [Mon, 8 Jan 2018 11:53:29 +0000 (05:53 -0600)]
Merge "pbx: Prevent execution of NULL pointer."

18 months agores_stasis: Fix dial bridge unload.
Corey Farrell [Mon, 8 Jan 2018 03:38:49 +0000 (22:38 -0500)]
res_stasis: Fix dial bridge unload.

If the dial bridge has been created it must be released by calling
ast_bridge_destroy, simply releasing the ao2 reference is not enough.

Also move stasis_app_control_shutdown earlier in unload to ensure the
bridge cannot be created or grabbed after the app_bridges container is

Change-Id: I372302de94ca63876069e2585a049c5060e5e767

18 months agores_stasis: Fix app_is_subscribed_bridge_id.
Corey Farrell [Mon, 8 Jan 2018 02:21:13 +0000 (21:21 -0500)]
res_stasis: Fix app_is_subscribed_bridge_id.

Instead of searching for bridge_id provided in an argument this function
always searched for BRIDGE_ALL first.  Rewrite this function to work
like the similar functions for channel and endpoint functions.

Change-Id: Ib5caca69e11727c5c8a7284a1d00621f40f1e60a