Commit Graph

30243 Commits

Author SHA1 Message Date
Alexander Traud
83353997f4 BuildSystem: Add support for building RADIUS with radcli.
Radcli is yet another RADIUS client library, generally compatible with
freeradius and radiusclient-ng.

This commit adds autoconf option for detecting it as well and changes
cdr_radius and cel_radius to use its header file in that case.

ASTERISK-26540
Reported by: Tzafrir Cohen

Change-Id: Icc056d476b7acf481309219e9abdca416866c6ec
2018-04-02 08:12:55 -05:00
Jenkins2
e9313920e5 Merge "pjproject_bundled: Add patch for pj_atomic crashes" into 13 2018-04-02 08:11:09 -05:00
Jenkins2
025fe67f2a Merge "core: Create main/options.c." into 13 2018-04-02 08:10:59 -05:00
Richard Mudgett
e1363283d7 res_pjsip: Fix deadlock on reliable transport shutdown.
A deadlock can happen when the PJSIP monitor thread is shutting down a
connection oriented transport (TCP/TLS) used by a subscription at the same
time as another thread tries to send something for that subscription.  The
deadlock is between the pjsip monitor thread attempting to get the dialog
lock and another thread sending something for that dialog when it tries to
get the transport manager lock.

* res_pjsip_pubsub.c: Avoid the deadlock by pushing the subscription
removal to the subscription serializer.

* res_pjsip_registrar.c: Pushed off incoming registration contact removals
to a default serializer as a precaution.  Removing the contacts involves
sorcery access which in this case will involve database access.  Depending
upon the setup, the database may not be on the same machine and could take
awhile.  We don't want to hold up the pjsip monitor thread with
potentially long access times.

ASTERISK-27706

Change-Id: I56b647aea565f24dba33e9e5ebeed4cd3f31f8c4
2018-03-29 17:21:45 -05:00
Kevin Harwell
f17d53fd32 Merge "BuildSystem: pjsip_evsub_set_uas_timeout was not used (part 2)." into 13 2018-03-29 15:20:07 -05:00
Kevin Harwell
dfaa8a4935 Merge "pjsip_transport_events.c: Fix crash using stale transport pointer." into 13 2018-03-29 15:13:55 -05:00
George Joseph
c63a2e28f1 pjproject_bundled: Add patch for pj_atomic crashes
There have been some crashes in the past where something attempts
to use a pj_atomic after it's already been destroyed.  This patch
tries to prevent it by making sure that pj_atomic_destroy sets
its mutex to NULL when it's done.  The pj_mutex functions already check
for a NULL mutex and just return PJ_EINVAL.

Teluu also added some checks to the win32 implementation as well.

Change-Id: Id25f70b79fdedf44ead6e6e1763a4417d3b3f825
2018-03-28 10:32:05 -06:00
Corey Farrell
5908c6753b core: Create main/options.c.
This creates a separate source to 'own' symbols related to options.h and
paths.h.  This significantly reduces the number of exports created by
main/asterisk.o.  This change is required to eventually be able to
link unmodified Asterisk sources to utilities and/or stand-alone tests.

ASTERISK~26245

Change-Id: I5cf184f4757f9363b80c9e678bdc35c477122380
2018-03-28 09:18:06 -04:00
Alexander Traud
e8e4fc6202 install_prereq: Add Slackware (somehow).
ASTERISK-27770

Change-Id: Ib87e0483c785542238cfe34c1e884d5a31edfaab
2018-03-23 12:15:54 -06:00
Alexander Traud
96a668e60b install_prereq: Add Gentoo Linux.
ASTERISK-27769

Change-Id: Ieb13293cd67481f3a33f58f6f7c8c3ee1e338e7a
2018-03-23 15:18:56 +01:00
Corey Farrell
6615469a05 main/indications: Use ast_cli_completion_add for all completions.
Change-Id: I371be01f178fb542a9fbe8d97e7ae21aa4d82c36
2018-03-23 01:39:48 -06:00
Jenkins2
2041d56d58 Merge "bridge_softmix: Clear "talking" when a channel is put on hold" into 13 2018-03-22 08:32:22 -05:00
Joshua Colp
c399e8528b Merge "Revert "BuildSystem: In NetBSD, the Python Programming Language is python-X.Y."" into 13 2018-03-22 07:38:15 -05:00
Alexander Traud
de4e2c1de8 BuildSystem: pjsip_evsub_set_uas_timeout was not used (part 2).
The previous change was not complete.

ASTERISK-27435

Change-Id: I11082c14c0ef9c6af8c995084a6851337ea2a90f
2018-03-22 06:28:34 -06:00
Alexander Traud
79bb956b69 BuildSystem: With external editline, do not require libs for internal editline.
ASTERISK-27761

Change-Id: Ib17a7415297a210cfcdbf149e4df9b6edadbfab6
2018-03-22 11:52:45 +01:00
George Joseph
3a4a441817 Revert "BuildSystem: In NetBSD, the Python Programming Language is python-X.Y."
Something is causing a python2/python3 mismatch on Fedora27.

PYTHON='/usr/bin/python2'
PYTHONDEV_CFLAGS='-I/usr/include/python3.6m '
PYTHONDEV_INCLUDE='-I/usr/include/python3.6m '
PYTHONDEV_LIB='-lpython3.6m '
PYTHONDEV_LIBS='-lpython3.6m '


This reverts commit c0c537c1d3.

Change-Id: I670a82aa7c872fa5facea1e3bc718e2d3124cc28
2018-03-21 18:25:19 -06:00
Jenkins2
b9eb86b56e Merge "chan_sip: Peers with distinct source ports don't match, regardless of transport." into 13 2018-03-21 09:33:26 -05:00
Kevin Harwell
17cd687679 bridge_softmix: Clear "talking" when a channel is put on hold
This patch clears the talking flag from the channel (if already set), and
notifies listeners when that channel is put on hold. Note however, if the
endpoint continues to send audio frames and these are received by the bridge
then that channel will be put back into a "talking" state even though they
are on hold.

ASTERISK-27755 #close

Change-Id: I930e16c4662810f9f02043d69062f88173c5e2ef
2018-03-20 15:28:12 -05:00
Ross Beer
5955cdf5ae pjsip_transport_events.c: Fix crash using stale transport pointer.
Apparently it is possible for the transport to be destroyed without
triggering the transport callback logic.  As a result the transport gets
destroyed and we have a stale pointer in the active_transports container.

* Invoke the transport monitor callback checks when the transport is
destroyed in addition to when it is disconnected and shutdown.

ASTERISK-27688

Change-Id: Ia9b5469fea8f2b3f2d8476fae6b748a4d23e7261
2018-03-20 15:04:17 -05:00
Ivan Poddubny
69de659224 func_channel: Delete dead CHANNEL_TRACE code
The functions behind the flag and the flag itself were removed
from Asterisk 12 as incompatible with the new architecture.

Change-Id: I058493ef7a53ee290fd225bbcbb07bf46b623ccf
2018-03-20 13:28:01 -06:00
Alexander Traud
7580d1e0bb BuildSystem: For consistency, avoid extra libs to be empty.
AST_EXT_LIB_CHECK has several optional parameters. When an optional parameter
is left empty, [] is used to indicate this. However, this is done in the script
./configure only then, when a further parameter is not empty. For example, when
no extra libraries are needed to test the checked library, parameter 5 is not
mentioned. Except parameter 6 and higher are used, then parameter 5 must be
empty.

However, this general rule was broken
* three times for parameter 5 (extra libs) and
* three times for parameter 4 (header)
as found via the Regular Expression \[\]\). In case of parameter 5, all cases
were changed, because that happened for no reason. In case of parameter 4, an
[] improves readability actually. Therefore for parameter 4, the only case which
did not do it was changed. All this aims to create more consistency: Only do
something different if there is a reason to do so.

Change-Id: I037ef170cf1ad94497151a9ea5071a31c656cafe
2018-03-20 17:55:56 +01:00
Jenkins2
7d8445d576 Merge "core: Remove dead symbols from asterisk.exports.in." into 13 2018-03-20 11:31:09 -05:00
Jenkins2
b39c727848 Merge "channel.c: Allow generic plc then channel formats are equal" into 13 2018-03-20 11:03:38 -05:00
Jenkins2
8b1665bc55 Merge "BuildSystem: In NetBSD, the Python Programming Language is python-X.Y." into 13 2018-03-20 10:37:50 -05:00
Joshua Colp
6bda2d7baf Merge "BuildSystem: Instead of $PJPROJECT_LIBS with s, use $PJPROJECT_LIB everywhere." into 13 2018-03-20 10:09:08 -05:00
Joshua Colp
4040b0e909 Merge "main/sounds: Use ast_cli_completion_add." into 13 2018-03-20 09:48:30 -05:00
Jenkins2
fbd2504907 Merge "named_acl: Use ast_cli_completion_add." into 13 2018-03-20 09:37:16 -05:00
Jenkins2
44c85ddc57 Merge "manager: Use ast_cli_completion_add for completion generators." into 13 2018-03-20 09:06:49 -05:00
Jenkins2
7f40e09b3e Merge "main/test: Use ast_cli_completion_add." into 13 2018-03-20 08:50:56 -05:00
Joshua Colp
38d081c9f6 Merge "core: Minor cleanup of ast_el_read_char." into 13 2018-03-20 08:37:16 -05:00
Joshua Colp
3742534956 Merge "aco: Use ast_cli_completion_add for 'config show help'." into 13 2018-03-20 08:18:38 -05:00
Jenkins2
648405779e Merge "main/config: Use ast_cli_completion_add for reload completion." into 13 2018-03-20 07:54:13 -05:00
Jenkins2
1a82f5b645 Merge "main/translate: Use ast_cli_completion_add." into 13 2018-03-20 07:44:14 -05:00
Jenkins2
6a6bda3703 Merge "main/taskprocessor: Use ast_cli_completion_add." into 13 2018-03-20 07:22:41 -05:00
Jenkins2
dc4960e48a Merge "main/bridge: Use ast_cli_completion_add." into 13 2018-03-20 07:04:33 -05:00
Joshua Colp
aacea4263a Merge "BuildSystem: Enable Advanced Linux Sound Architecture (ALSA) in NetBSD." into 13 2018-03-20 06:51:34 -05:00
Joshua Colp
d3a0d545a3 Merge "BuildSystem: Check for header file of OGG." into 13 2018-03-20 06:23:33 -05:00
Joshua Colp
599f326b41 Merge "BuildSystem: Remove unused dependency on libltdl." into 13 2018-03-20 06:22:52 -05:00
Corey Farrell
6f304697b0 core: Remove dead symbols from asterisk.exports.in.
* dahdi_chan_name
* dahdi_chan_name_len
* dahdi_chan_mode
* __manager_event
* dialed_interface_info

Added comment about __progname and environ being needed for FreeBSD to
prevent accidental removal in the future.

Change-Id: I3ae026bc541cd9cb572be2ffa95fc359547642b5
2018-03-19 16:00:48 -06:00
Corey Farrell
8df4811cfa named_acl: Use ast_cli_completion_add.
Change-Id: I317a82de976bbdbfe4352c243e32a7bb8f66c377
2018-03-19 15:48:34 -06:00
Corey Farrell
a89323236f main/sounds: Use ast_cli_completion_add.
Change-Id: I140e1137906bbfcdb61c0c6304159be459ad873e
2018-03-19 15:45:08 -06:00
Corey Farrell
dc520b6d8f manager: Use ast_cli_completion_add for completion generators.
Change-Id: I658141c6ec490a3e866b02d2afea757928ceaabf
2018-03-19 14:26:58 -06:00
Corey Farrell
534fda0a59 main/test: Use ast_cli_completion_add.
Change-Id: I5133ff2ba4e030f9733fb3d050c863d72a22ae6b
2018-03-19 14:21:21 -06:00
George Joseph
a8daaa171e Merge "BuildSystem: Enable dladdr on non-Linux platforms like FreeBSD." into 13 2018-03-19 11:13:21 -05:00
George Joseph
373e7e3fb0 channel.c: Allow generic plc then channel formats are equal
If the two formats on a channel are equal, we don't transcode and since
the generic plc needs slin to work, it doesn't get invoked.

* A new configuration option "genericplc_on_equal_codecs" was added
  to the "plc" section of codecs.conf to allow generic packet loss
  concealment even if no transcoding was originally needed.
  Transcoding via SLIN is forced in this case.

ASTERISK-27743

Change-Id: I0577026a179dea34232e63123254b4e0508378f4
2018-03-19 10:09:53 -06:00
Jenkins2
94b72ace2f Merge "core: Backport compatible MALLOC_DEBUG changes." into 13 2018-03-19 10:33:42 -05:00
Jenkins2
09e61213b7 Merge "BuildSystem: When no download utility is available, display the explanation." into 13 2018-03-19 10:19:13 -05:00
Jenkins2
36fd7c26fb Merge "BuildSystem: Avoid an extra case for OpenBSD." into 13 2018-03-19 09:48:15 -05:00
Jenkins2
08e0181fc3 Merge "main/cdr: Use ast_cli_completion_add for CDR channel completion." into 13 2018-03-19 09:05:33 -05:00
Jenkins2
9e21d04755 Merge "app_dial: Enable early-media video" into 13 2018-03-19 09:04:28 -05:00