Commit Graph

30905 Commits

Author SHA1 Message Date
Jenkins2 5843a19797 Merge "loader: Convert reload_classes to built-in modules." 2018-03-19 12:53:12 -05:00
George Joseph c9dffc4c62 Merge "BuildSystem: Avoid an extra case for OpenBSD." 2018-03-19 11:15:51 -05:00
Jenkins2 e905b232f1 Merge "BuildSystem: When no download utility is available, display the explanation." 2018-03-19 10:19:29 -05:00
Jenkins2 a12976e20a Merge "BuildSystem: Enable dladdr on non-Linux platforms like FreeBSD." 2018-03-19 10:02:14 -05:00
George Joseph c29b5389c5 Merge "app_voicemail: Fix json blob errors" 2018-03-19 09:50:00 -05:00
George Joseph d6a49afb56 Merge "app_dial: Enable early-media video" 2018-03-19 09:34:16 -05:00
Jenkins2 19196a98d0 Merge "main/cdr: Use ast_cli_completion_add for CDR channel completion." 2018-03-19 06:17:42 -05:00
Alexander Traud f697025ae5 BuildSystem: When no download utility is available, display the explanation.
./configure --with-pjproject-bundled
did not display an explanation, when no download utility like wget, curl, or
fetch was installed beforehand, although an explanation existed in code. This
happened because the code expected the variable DOWNLOAD_TO_STDOUT to be empty.
However, the script ./configure set that variable always.

Change-Id: I64c99b76a03525c69471e5055bf124b36a51bbd4
2018-03-17 14:14:29 +01:00
Joshua Colp d5bfba60d2 Merge "astobj2_container: Use ast_cli_completion_add for container names." 2018-03-16 19:09:48 -05:00
Jenkins2 6df575541b Merge "main/ccss: Use ast_cli_completion_add for core id." 2018-03-16 19:07:58 -05:00
Florian Floimair ecc846b26b 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
2018-03-16 17:53:20 +01:00
Jenkins2 6c4719fc2a Merge "main/channel: Use ast_cli_completion_add for channeltypes." 2018-03-16 10:51:38 -05:00
Jenkins2 a33af7243c Merge "cli: Enable ast_cli_completion_add on public completion generators." 2018-03-16 10:34:16 -05:00
Alexander Traud 02fa145a1b BuildSystem: Avoid an extra case for OpenBSD.
Nine years ago with Mantis 13639 (now ASTERISK-12841) an extra case for OpenBSD
was introduced: Vorbis required Ogg to be specified manually, because the shared
library libvorbis.so did not specify its required dependency on -logg itself.

Today with OpenBSD 6.2, all libvorbis*.so declare their dependencies correctly.
Therefore, an extra case is not required anymore.

Change-Id: Ifd04e0994ce9f1e4ad29c3948a0398b91d1e97bc
2018-03-16 09:11:37 -06:00
George Joseph 4d1e3fef6b 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
2018-03-16 08:09:19 -06:00
Corey Farrell ebe957c5e9 main/cdr: Use ast_cli_completion_add for CDR channel completion.
Change-Id: Ie81830647a23aad61c1162583b6d50adbe6e7822
2018-03-15 10:32:37 -04:00
Alexander Traud dbf5ff6ed0 install_prereq: Add Arch Linux.
ASTERISK-27738

Change-Id: I7ca620e3c4dfb4b064a19382c4915aeb42a2a09f
2018-03-15 14:24:56 +01:00
Corey Farrell 89ba4d4e3d main/ccss: Use ast_cli_completion_add for core id.
Change-Id: I44b25d6d24c7d9bc1bb38a50774b38883162f98f
2018-03-15 09:19:58 -04:00
Corey Farrell aa0d95c730 astobj2_container: Use ast_cli_completion_add for container names.
Change-Id: I4f0fc09e820eb8d8da2354a177dbcf503c56ddd1
2018-03-15 08:29:50 -04:00
Corey Farrell b929a7fb8d main/channel: Use ast_cli_completion_add for channeltypes.
Change-Id: Ia845fae6a84801cc7d9996767b99efb2753cbb48
2018-03-15 08:11:23 -04:00
Jenkins2 607baba9f4 Merge "res_pjsip_rfc3326.c: Account for more than one 'Reason' header" 2018-03-15 06:51:40 -05:00
Jenkins2 4b8a2dd3a0 Merge "install_prereq: Add SUSE." 2018-03-15 06:45:00 -05:00
Corey Farrell b45bb476bb 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
2018-03-15 07:25:28 -04:00
Jenkins2 1a9ed413a1 Merge "core: Remove incorrect usage of attribute_malloc." 2018-03-14 20:56:34 -05:00
Ross Beer 92158b7f37 res_pjsip_rfc3326.c: Account for more than one 'Reason' header
ASTERISK-27741

Change-Id: I0aa59a54735c6d20b95c54db1bd095dbf93e7adf
2018-03-14 17:49:56 -06:00
Alexander Traud b0fff03bb5 install_prereq: Add SUSE.
ASTERISK-27736

Change-Id: I4cafc8973349d50a7cb7919ddf0bb1aaef4bfc3e
2018-03-14 14:57:16 +01:00
Jenkins2 0a96cd082b Merge "install_prereq: Update FreeBSD libraries." 2018-03-14 07:56:10 -05:00
Jenkins2 15bf51af73 Merge "core: Remove non-critical cleanup from startup aborts." 2018-03-14 07:00:57 -05:00
Jenkins2 681bdc8dbf Merge "BuildSystem: Enable IMAP storage on openSUSE and Arch Linux." 2018-03-14 06:45:30 -05:00
Joshua Colp baf06002fe Merge "BuildSystem: Add NetBSD." 2018-03-14 06:17:01 -05:00
Joshua Colp 6d81a2a684 Merge "res_srtp: Add support for libsrtp2.x on openSUSE." 2018-03-14 06:16:40 -05:00
Corey Farrell 572a508ef2 loader: Convert reload_classes to built-in modules.
* acl (named_acl.c)
* cdr
* cel
* ccss
* dnsmgr
* dsp
* enum
* extconfig (config.c)
* features
* http
* indications
* logger
* manager
* plc
* sounds
* udptl

These modules are now loaded at appropriate time by the module loader.
Unlike loadable modules these use AST_MODULE_LOAD_FAILURE on error so
the module loader will abort startup on failure of these modules.

Some of these modules are still initialized or shutdown from outside the
module loader.  logger.c is initialized very early and shutdown very
late, manager.c is initialized by the module loader but is shutdown by
the Asterisk core (too much uses it without holding references).

Change-Id: I371a9a45064f20026c492623ea8062d02a1ab97f
2018-03-14 05:20:12 -04:00
Jenkins2 92a94fb058 Merge "install_prereq: Add NetBSD." 2018-03-13 18:23:28 -05:00
Jenkins2 4c0361f4f0 Merge "BuildSystem: Re-check for another UUID library only when previous check failed." 2018-03-13 18:17:22 -05:00
Jenkins2 200f7c520c Merge "BuildSystem: Enable PortAudio in NetBSD." 2018-03-13 17:55:22 -05:00
Corey Farrell 9e488dd482 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
2018-03-13 17:39:48 -04:00
Alexander Traud d9776870e8 BuildSystem: Enable IMAP storage on openSUSE and Arch Linux.
ASTERISK-27734

Change-Id: I8d6e6a1c08c031649764f5277fbbb85e57c3a9d4
2018-03-13 16:26:33 -05:00
Jenkins2 4b7872c9db Merge "core: Remove ABI effects of MALLOC_DEBUG." 2018-03-13 13:54:19 -05:00
Corey Farrell fee929c8ac 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
2018-03-13 13:46:08 -04:00
Jenkins2 a979e52c0a Merge "BuildSystem: For consistency, avoid double-checking via if clauses." 2018-03-13 10:48:41 -05:00
Joshua Colp 7744e83805 Merge "res_pjproject.c: Upgrade bundled PJPROJECT to 2.7.2" 2018-03-13 10:38:00 -05:00
Jenkins2 1485719531 Merge "Replace direct checks of option_debug with DEBUG_ATLEAST macro." 2018-03-12 10:44:46 -05:00
Jenkins2 0d0738aaaf Merge "BuildSystem: Enable Lua in NetBSD." 2018-03-12 09:13:51 -05:00
Jenkins2 ffdd4b1c39 Merge "Complete deprecating legacy modules." 2018-03-12 07:50:01 -05:00
Jenkins2 114c25e706 Merge "res_pjsip_session: properly handle SDP from a forked call with early media" 2018-03-12 07:23:26 -05:00
Jenkins2 e5a6c72cd7 Merge "BuildSystem: Depend not implicitly but explicitly on external libraries." 2018-03-12 07:08:14 -05:00
Jenkins2 5b076da9ab Merge "BuildSystem regression: Fix errors reported by clean targets." 2018-03-12 06:54:30 -05:00
Alexander Traud ea3b8bb080 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).

ASTERISK-27686

Change-Id: I6638a3d0dc37ad4ff5f94be15463e3dd8a2bfe74
2018-03-12 12:40:11 +01:00
Alexander Traud 9164be19d2 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.

ASTERISK-27733

Change-Id: I25c5cb8fa966043d1506ebef449e5a724412b4b6
2018-03-12 10:11:15 +01:00
Jenkins2 4ef5b58230 Merge "app_osplookup: Move header defines into the app." 2018-03-11 17:24:29 -05:00