2f45135701
and run, but not a lot of functional testing. This does not have the new PJSIP, which will be coming in a followup commit. This also does not have the patches for compiling with Clang. For upgrading instructions, please see: https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+14 ----- 14.0.0 ----- The Asterisk Development Team is pleased to announce the release of Asterisk 14.0.0. Asterisk 14 is the next major release series of Asterisk. It is a Standard Support release, similar to Asterisk 12. For more information about support time lines for Asterisk releases, see the Asterisk versions page: https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions For important information regarding upgrading to Asterisk 14, please see the Asterisk wiki: https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+14 A short list of new features includes: * A complete overhaul of the core DNS support in Asterisk, including implementing full NAPTR and SRV support in the PJSIP stack via the libunbound library. * The ability to publish extension state to a SIP Subscription server, such as Kamailio. This includes the ability to automatically generate a hint in the dialplan based on device state changes using the new autohint setting. * Playback of media from a remote HTTP server via a URI is now supported by all dialplan applications and AGI. Media retrieved using a URI is cached in a media cache and re-used when possible. * When using ARI to manipulate media on a resource, a list of media resources can now be supplied. The media resources will be played back sequentially in the order that they are provided. * Channels created via ARI can now be created and handed off to Stasis for external control prior to performing the outbound dial. This enables applications to set additional state on the channel prior to dialing, as well as enabling certain early media scenarios. And much more! More information about the new features can be found on the Asterisk wiki: https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+Documentation A full list of all new features can also be found in the CHANGES file: https://github.com/asterisk/asterisk/blob/14/CHANGES For a full list of changes in the current release, please see the ChangeLog: http://downloads.asterisk.org/pub/telephony/asterisk/releases/ChangeLog-14.0.0 Thank you for your continued support of Asterisk! ----- 14.0.1 ----- The Asterisk Development Team has announced the release of Asterisk 14.0.1. The release of Asterisk 14.0.1 resolves an issue reported by the community and would have not been possible without your participation. Thank you! The following is the issue resolved in this release: Improvements made in this release: ----------------------------------- * ASTERISK-26409 - codec_opus: Update Asterisk to support the translation codec. (Reported by Kevin Harwell) For a full list of changes in this release, please see the ChangeLog: http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-14.0.1 Thank you for your continued support of Asterisk! ----- 14.0.2 ----- The Asterisk Development Team has announced the release of Asterisk 14.0.2. The release of Asterisk 14.0.2 resolves several issues reported by the community and would have not been possible without your participation. Thank you! The following are the issues resolved in this release: Bugs fixed in this release: ----------------------------------- * ASTERISK-26410 - core: Asterisk 14 doesn't show the header in the console or verbose when starting (Reported by Dan Jenkins) * ASTERISK-26426 - format_ogg_opus: remove from source (Reported by Kevin Harwell) * ASTERISK-26425 - download_externals: ignore xmlstarlet return code for optional element (Reported by Kevin Harwell) For a full list of changes in this release, please see the ChangeLog: http://downloads.asterisk.org/pub/telephony/asterisk/ChangeLog-14.0.2 Thank you for your continued support of Asterisk!
76 lines
2.6 KiB
C
76 lines
2.6 KiB
C
$NetBSD: patch-include_asterisk_lock.h,v 1.1.1.1 2016/10/25 08:17:08 jnemeth Exp $
|
|
|
|
--- include/asterisk/lock.h.orig 2015-10-09 21:48:48.000000000 +0000
|
|
+++ include/asterisk/lock.h
|
|
@@ -634,6 +634,17 @@ static void __attribute__((destructor))
|
|
*/
|
|
#define SCOPED_CHANNELLOCK(varname, chan) SCOPED_LOCK(varname, (chan), ast_channel_lock, ast_channel_unlock)
|
|
|
|
+#undef pthread_mutex_lock
|
|
+#undef pthread_mutex_unlock
|
|
+#undef pthread_mutex_trylock
|
|
+#undef pthread_mutex_init
|
|
+#undef pthread_mutex_destroy
|
|
+#undef pthread_cond_init
|
|
+#undef pthread_cond_destroy
|
|
+#undef pthread_cond_signal
|
|
+#undef pthread_cond_broadcast
|
|
+#undef pthread_cond_wait
|
|
+#undef pthread_cond_timedwait
|
|
#ifndef __CYGWIN__ /* temporary disabled for cygwin */
|
|
#define pthread_mutex_t use_ast_mutex_t_instead_of_pthread_mutex_t
|
|
#define pthread_cond_t use_ast_cond_t_instead_of_pthread_cond_t
|
|
@@ -654,7 +665,7 @@ static void __attribute__((destructor))
|
|
|
|
#define gethostbyname __gethostbyname__is__not__reentrant__use__ast_gethostbyname__instead__
|
|
|
|
-#ifndef __linux__
|
|
+#if !defined(__linux__) && !defined(__DragonFly__)
|
|
#define pthread_create __use_ast_pthread_create_instead__
|
|
#endif
|
|
|
|
@@ -676,6 +687,10 @@ int ast_atomic_fetchadd_int_slow(volatil
|
|
#include "libkern/OSAtomic.h"
|
|
#endif
|
|
|
|
+#if defined(HAVE_SYS_ATOMIC_H)
|
|
+#include <sys/atomic.h>
|
|
+#endif
|
|
+
|
|
/*! \brief Atomically add v to *p and return * the previous value of *p.
|
|
* This can be used to handle reference counts, and the return value
|
|
* can be used to generate unique identifiers.
|
|
@@ -696,6 +711,16 @@ AST_INLINE_API(int ast_atomic_fetchadd_i
|
|
{
|
|
return OSAtomicAdd64(v, (int64_t *) p) - v;
|
|
})
|
|
+#elif defined(HAVE_SYS_ATOMIC_H) && (SIZEOF_INT == 4)
|
|
+AST_INLINE_API(int ast_atomic_fetchadd_int(volatile int *p, int v),
|
|
+{
|
|
+ return atomic_add_32_nv((uint32_t *)p, v) - v;
|
|
+})
|
|
+#elif defined(HAVE_SYS_ATOMIC_H) && (SIZEOF_INT == 8)
|
|
+AST_INLINE_API(int ast_atomic_fetchadd_int(volatile int *p, int v),
|
|
+{
|
|
+ return atomic_add_64_nv((uint64_t *)p, v) - v;
|
|
+})
|
|
#elif defined (__i386__) || defined(__x86_64__)
|
|
#ifdef sun
|
|
AST_INLINE_API(int ast_atomic_fetchadd_int(volatile int *p, int v),
|
|
@@ -743,6 +768,16 @@ AST_INLINE_API(int ast_atomic_dec_and_te
|
|
{
|
|
return OSAtomicAdd64( -1, (int64_t *) p) == 0;
|
|
})
|
|
+#elif defined(HAVE_SYS_ATOMIC_H) && (SIZEOF_INT == 4)
|
|
+AST_INLINE_API(int ast_atomic_dec_and_test(volatile int *p),
|
|
+{
|
|
+ return atomic_dec_32_nv((uint32_t *)p) == 0;
|
|
+})
|
|
+#elif defined(HAVE_SYS_ATOMIC_H) && (SIZEOF_INT == 8)
|
|
+AST_INLINE_API(int ast_atomic_dec_and_test(volatile int *p),
|
|
+{
|
|
+ return atomic_dec_64_nv((uint64_t *)p) == 0;
|
|
+})
|
|
#else
|
|
AST_INLINE_API(int ast_atomic_dec_and_test(volatile int *p),
|
|
{
|