Richard Mudgett [Fri, 3 Oct 2014 19:42:54 +0000 (19:42 +0000)]
audiohooks: Reevaluate the bridge technology when an audiohook is added or removed.
Adding a mixmonitor to a channel causes the bridge to change technologies
from native to simple_bridge so the call can be recorded. However, when
the mixmonitor is stopped the bridge does not switch back to the native
technology.
* Added unbridge requests to reevaluate the bridge when a channel
audiohook is removed.
* Moved the unbridge request into ast_audiohook_attach() ensure that the
bridge reevaluates whenever an audiohook is attached. This simplified the
mixmonitor and chan_spy start code as well.
* Added defensive code to stop_mixmonitor_full() in case additional
arguments are ever added to the StopMixMonitor application.
* Made ast_framehook_detach() not do an unbridge request if the framehook
does not exist.
* Made ast_framehook_list_fixup() do an unbridge request if there are any
framehooks. Also simplified the loop.
ASTERISK-24195 #close
Reported by: Jonathan Rose
Review: https://reviewboard.asterisk.org/r/4046/
........
Merged revisions 424506 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424507 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424508
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 3 Oct 2014 18:54:53 +0000 (18:54 +0000)]
app_queue: Add dialplan function to get the channel name at the specified position in a queue.
The QUEUE_GET_CHANNEL function returns the caller's channel name at the
specified position in a queue.
QUEUE_GET_CHANNEL(<queuename>[,<position>])
The queue position parameter defaults to 1 if not specified.
Noop(${QUEUE_GET_CHANNEL(queuename, 2)})
"SIP/peer-
00000002", if queue exist and have at least 2 callers
Noop(${QUEUE_GET_CHANNEL(queuename, 1)})
Noop(${QUEUE_GET_CHANNEL(queuename)})
"SIP/peer-
00000000", if queue exist and have at least 1 caller
ASTERISK-24365 #close
Reported by: Kristian Hogh
Patches:
queue_get_firstchannel.patch (license #6639) patch uploaded by Kristian Hogh
rb4035.patch (license #6639) patch uploaded by Kristian Hogh
Patch morphed from QUEUE_GET_FIRSTCHANEL to the more general QUEUE_GET_CHANNEL
on reviewbord.
Review: https://reviewboard.asterisk.org/r/4035/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424493
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 3 Oct 2014 17:47:42 +0000 (17:47 +0000)]
chan_pjsip: Fix deadlock when masquerading PJSIP channels.
Performing a directed call pickup resulted in a deadlock when PJSIP
channels were involved.
A masquerade needs to hold onto the channel locks while it swaps channel
information between the two channels involved in the masquerade. With
PJSIP channels, the fixup routine needed to push a fixup task onto the
PJSIP channel's serializer. Unfortunately, if the serializer was also
processing a task that needed to lock the channel, you get deadlock.
* Added a new control frame that is used to notify the channels that a
masquerade is about to start and when it has completed.
* Added the ability to query taskprocessors if the current thread is the
taskprocessor thread.
* Added the ability to suspend/unsuspend the PJSIP serializer thread so a
masquerade could fixup the PJSIP channel without using the serializer.
ASTERISK-24356 #close
Reported by: rmudgett
Review: https://reviewboard.asterisk.org/r/4034/
........
Merged revisions 424471 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424472 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424473
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Fri, 3 Oct 2014 15:55:57 +0000 (15:55 +0000)]
sorcery: Prevent SEGV in sorcery_wizard_create when there's no create function
When you call ast_sorcery_create() you don't necessarily know which wizard is
going to be invoked. If it happens to be a wizard like 'config' that doesn't
have a 'create' virtual function you get a segfault in the
sorcery_wizard_create callback. This patch catches the null function pointer,
does an ast_assert, and logs an error.
Review: https://reviewboard.asterisk.org/r/4044/
........
Merged revisions 424447 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424448 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424449
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 3 Oct 2014 13:59:09 +0000 (13:59 +0000)]
PJSIP: Restore functional default for callerid_privacy
The pjsip config option default fixups from r424263 altered the
functional default from "allowed_not_screened" to "allowed". This
change restores the functional default value when none is provided.
........
Merged revisions 424426 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424427 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424428
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 3 Oct 2014 13:33:11 +0000 (13:33 +0000)]
Manager: Add missing fields and documentation for CoreShowChannels
This corrects some issues introduced in the responses to the
CoreShowChannels AMI command as well as adding documentation for the
responses. The command in Asterisk 12 was missing the following fields:
Duration, Application, ApplicationData, and BridgedChannel and
BridgedUniqueID (replaced with BridgeId).
ASTERISK-24262 #close
Reported by: Mitch Claborn
Review: https://reviewboard.asterisk.org/r/4040/
........
Merged revisions 424423 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424424 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424425
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Thu, 2 Oct 2014 21:55:37 +0000 (21:55 +0000)]
res_pjsip: Make transport cipher option accept a comma separated list of cipher names.
Improvements to the res_pjsip transport cipher option.
* Made the cipher option accept a comma separated list of OpenSSL cipher
names. Users of realtime will be glad if they have more than one name to
list.
* Added the CLI command 'pjsip list ciphers' so a user can know what
OpenSSL names are available for the cipher option.
* Updated the cipher option online XML documentation to specify what is
expected for the value.
* Updated pjsip.conf.sample to not indicate that ALL is acceptable since
ALL does not imply a preference order for the ciphers and PJSIP does not
simply pass the string to OpenSSL for interpretation.
ASTERISK-24199 #close
Reported by: Joshua Colp
Review: https://reviewboard.asterisk.org/r/4018/
........
Merged revisions 424393 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424394 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424395
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 2 Oct 2014 20:23:38 +0000 (20:23 +0000)]
Alembic: Add enumerator value to sippeers -> directmedia - 'outgoing'
The 'outgoing' value was left off of the enumerator when first creating the
column. This patch adds it, and should gracefully upgrade keeping the existing
data in tact.
ASTERISK-23781 #close
Reported by: Stephen More
Review: https://reviewboard.asterisk.org/r/4013/
........
Merged revisions 424372 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424373 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424380
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 2 Oct 2014 15:33:50 +0000 (15:33 +0000)]
chan_pjsip: Fix an assertion for channels that lack formats on creation
ASTERISK-24222 #close
Reported by: Mark Michelson
Review: https://reviewboard.asterisk.org/r/4017/
........
Merged revisions 424333 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424358
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Scott Griepentrog [Thu, 2 Oct 2014 13:36:01 +0000 (13:36 +0000)]
res_pjsip: document use of rewrite_contact in sample conf
Without setting rewrite_contact, an invite to an endpoint
behind NAT will not reach it - unless the endpoint itself
uses STUN or TURN to discover it's public URI. Thus, the
use of this should be in the sample documentation.
Review: https://reviewboard.asterisk.org/r/4036/
........
Merged revisions 424337 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424338 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424339
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Corey Farrell [Wed, 1 Oct 2014 20:37:31 +0000 (20:37 +0000)]
res_hep: Release allocation reference to configuration.
ASTERISK-24362 #close
Reported by: Corey Farrell
Review: https://reviewboard.asterisk.org/r/4026/
........
Merged revisions 424312 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424313 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424314
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Wed, 1 Oct 2014 16:39:45 +0000 (16:39 +0000)]
res_pjsip: Add 'dtls_fingerprint' option to configure DTLS fingerprint hash.
During the latest update to DTLS-SRTP support the ability to configure
the hash used for fingerprints was added. This gave us two supported ones:
SHA-1 and SHA-256. The default was accordingly updated to SHA-256.
Unfortunately this configuration ability was not exposed within res_pjsip.
This change adds a dtls_fingerprint option that controls it.
#SIPit31
........
Merged revisions 424290 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424291 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424292
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Wed, 1 Oct 2014 16:20:40 +0000 (16:20 +0000)]
res_pjsip_sdp_rtp: Accept DTLS attributes in top level, not just media session.
#SIPit31
........
Merged revisions 424287 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424288 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424289
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Wed, 1 Oct 2014 12:28:05 +0000 (12:28 +0000)]
PJSIP: Handle defaults properly
This updates the code behind PJSIP configuration options with custom
handlers to deal with the assigned default values properly where it
makes sense and adjusting the default value where it doesn't. Before
applying this patch, there were several cases where the default value
for an option would prevent that config section from loading properly.
Reported by: Thomas Thompson
Review: https://reviewboard.asterisk.org/r/4019/
........
Merged revisions 424263 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424266 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424267
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Wed, 1 Oct 2014 12:15:56 +0000 (12:15 +0000)]
PJSIP: Force transport on contact rewrite
If contact rewriting is enabled but the contact differs in transport
from what is actually being used, messages after the initial INVITE
transaction can be sent to an incorrect transport/port combination. In
the case where this bug occurred the remote party never received a BYE
since it was sent to the remote party's TCP port over UDP.
Review: https://reviewboard.asterisk.org/r/4032/
........
Merged revisions 424244 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424245 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424246
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Wed, 1 Oct 2014 10:10:41 +0000 (10:10 +0000)]
chan_sip: Simplify some unref code by removing unlink_peer_from_tables.
ASTERISK-22945 #related
Reported by: ibercom
Patches:
asterisk11-chan_sip-simplifies.patch uploaded by ibercom (License #6599)
........
Merged revisions 424181 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 424182 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 424183 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424184 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424185
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Wed, 1 Oct 2014 09:55:10 +0000 (09:55 +0000)]
chan_sip: Remove excess ref of realtime peer before sip_poke_peer.
The peer is referenced at the end of sip_poke_peer, it should not get
an extra ref before the call to sip_poke_peer. This fixes a memory
leak.
ASTERISK-22945 #close
Reported by: ibercom
Tested by: Yuriy Gorlichenko
Patches:
asterisk11.patch uploaded by ibercom (License #6599)
Review: https://reviewboard.asterisk.org/r/4031/
........
Merged revisions 424176 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 424177 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 424178 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424179 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424180
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Tue, 30 Sep 2014 11:42:00 +0000 (11:42 +0000)]
res_pjsip_sdp_rtp: Don't place an extra whitespace before 'rport' and don't put IPv6 addresses in brackets.
#SIPit31
........
Merged revisions 424155 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424156 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424157
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Tue, 30 Sep 2014 11:36:14 +0000 (11:36 +0000)]
res_rtp_asterisk: Ensure that the base and mapped address for candidates is present in SDP.
This change fixes an issue where ICE candidates put into the SDP did not contain
the 'raddr' and 'rport' information for server reflexive and relay candidates.
#SIPit31
........
Merged revisions 424151 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 424152 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424153 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424154
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Mon, 29 Sep 2014 22:00:38 +0000 (22:00 +0000)]
pjsip_cli: Suppress header print on error or no objects
If there's an error on the pjsip command line or there are no objects, don't
print the column headers.
ASTERISK-24350 #close
Reported-by: Brad Latus
Tested-by: George Joseph
Tested-by: Brad Latus
Review: https://reviewboard.asterisk.org/r/4025/
........
Merged revisions 424128 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424129 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424130
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Mon, 29 Sep 2014 21:32:10 +0000 (21:32 +0000)]
autosupport: Fix bashism.
'==' is bashism (bashspecific, fails when dash is /bin/sh). Anyway, a
'case' works better there.
Originally committed in r375059 and r375060 on 2012-10-16 21:13:08.
ASTERISK-20567 #close
Reported by: Tzafrir Cohen
........
Merged revisions 424117 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 424125 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424126 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424127
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Mon, 29 Sep 2014 21:18:54 +0000 (21:18 +0000)]
Simplify UUID generation in several places.
Replace code using ast_uuid_generate() with simpler and faster code using
ast_uuid_generate_str(). The new code avoids a malloc(), free(), and
copy.
........
Merged revisions 424103 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424105 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424109
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Mon, 29 Sep 2014 20:28:24 +0000 (20:28 +0000)]
threadpool.c: Minor cleanup fixes.
* Fix threadpool_alloc() prototype.
* Add missing off-nominal NULL check of pool in threadpool_alloc().
* searializer_create() does not need to create the object with a lock as
the lock is not used.
........
Merged revisions 424096 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424097 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424098
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Sat, 27 Sep 2014 17:29:05 +0000 (17:29 +0000)]
res_pjsip_session: Reduce SDP size by removing duplicate connection lines.
Due to the architecture of how media streams are handled each individual
handler adds connection details (IP address) for it. The first media stream
is then used as the top level SDP connection line. In practice each
line ends up being the same so to reduce the SDP size stream-level connection
information is also added to the SDP if it differs from the top level SDP
connection line.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424077
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Sat, 27 Sep 2014 12:44:38 +0000 (12:44 +0000)]
res_pjsip_session: Add additional checks for delaying session refreshes.
There are certain situations which no checks existed for which need to prevent
session refreshes. This includes sending a session refresh with SDP before SDP
negotiation has completed and sending a session refresh before the dialog itself
has been established. Checks for these have been added.
Additionally COLP related UPDATEs were including SDP when it is not needed.
Review: https://reviewboard.asterisk.org/r/4008/
........
Merged revisions 424056 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 424057 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424058
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 26 Sep 2014 15:51:22 +0000 (15:51 +0000)]
format_mp3: Made the get script conditionally apply patch if not already there.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424039
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Fri, 26 Sep 2014 15:43:04 +0000 (15:43 +0000)]
core: Ouch, forgot to undo a test free() in r423978.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424038
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 26 Sep 2014 15:28:39 +0000 (15:28 +0000)]
res_fax: Fix out of bounds error in update_modem_bits().
ASTERISK-24357 #close
Reported by: Jeremy Laine
Patches:
res_fax_bounds.patch (license #6561) patch uploaded by Jeremy Laine
Modified patch to not use magic numbers.
........
Merged revisions 423979 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423983 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423987 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423992 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@424016
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Fri, 26 Sep 2014 14:41:38 +0000 (14:41 +0000)]
core: Don't allow free to mean ast_free (and malloc, etc..).
This gets rid of most old libc free/malloc/realloc and replaces them
with ast_free and friends. When compiling with MALLOC_DEBUG you'll
notice it when you're mistakenly using one of the libc variants. For
the legacy cases you can define WRAP_LIBC_MALLOC before including
asterisk.h.
Even better would be if the errors were also enabled when compiling
without MALLOC_DEBUG, but that's a slightly more invasive header
file change.
Those compiling addons/format_mp3 will need to rerun
./contrib/scripts/get_mp3_source.sh.
ASTERISK-24348 #related
Review: https://reviewboard.asterisk.org/r/4015/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423978
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Fri, 26 Sep 2014 08:26:24 +0000 (08:26 +0000)]
docs: Escape unescaped minus sign in asterisk.8 manpage.
ASTERISK-23768 #close
Reported by: Jeremy Lainé
Patches:
escape_manpage_hyphen.patch uploaded by Jeremy Lainé (License #6561)
........
Merged revisions 423915 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423916 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423917 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423918 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423919
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Thu, 25 Sep 2014 21:03:51 +0000 (21:03 +0000)]
res_pjsip.c: Add missing off nominal cleanup in ast_sip_push_task_synchronous().
* Made memset the std struct in ast_sip_push_task_synchronous() because if
DEBUG_THREADS is enabled then uninitialized lock tracking data is used.
........
Merged revisions 423894 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423895 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423896
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Thu, 25 Sep 2014 20:49:04 +0000 (20:49 +0000)]
musiconhold: Add preferchannelclass=no option to prefer app class.
The new option 'preferchannelclass' is added to musiconhold.conf. If yes
(the default) the CHANNEL(musicclass) is preferred when choosing the
hold music. If it is no, the class suggested by the application that
calls the MoH (e.g. the Queue() app) gets preferred (new behaviour).
This way you set a different hold-music from the Queue-music by setting
both the CHANNEL(musicclass) and the queue-context musicclass.
ASTERISK-24276 #close
Reported by: Kristian Høgh
Patches:
app_override_channel_moh.patch uploaded by Kristian Høgh (License #6639)
Review: https://reviewboard.asterisk.org/r/4010/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423893
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Wed, 24 Sep 2014 18:35:47 +0000 (18:35 +0000)]
pjsip_options.c: Fix race condition stopping periodic out of dialog OPTIONS request.
The crash on the issues is a result of an invalid transport configuration
change when asterisk is restarted. The attempt to send the qualify
request fails and we cleaned up. However, the callback is also called
which results in a double unref of the objects involved.
* Put a wrapper around pjsip_endpt_send_request() to detect when the
passed in callback is called because of an error so callers can know to
not cleanup.
* Made send_request_cb() able to handle repeated challenges (Up to 10).
* Fix periodic endpoint qualify OPTIONS sched deletion race by avoiding
it. The sched entry will no longer self stop and must be externally
stopped.
* Added REF_DEBUG description tags to struct sched_data in
pjsip_options.c.
* Fix some off-nominal ref leaks in schedule_qualify(),
qualify_and_schedule().
* Reordered pjsip_options.c module start/stop code to cleanup better on
error.
ASTERISK-24295 #close
Reported by: Rogger Padilla
Review: https://reviewboard.asterisk.org/r/3954/
........
Merged revisions 423866 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423867 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423868
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Wed, 24 Sep 2014 08:55:02 +0000 (08:55 +0000)]
chan_sip: Unref outbound proxy structure on dialog/pvt destruction.
Make sure outbound proxy refs are always unreffed on dialog destruction.
Review: https://reviewboard.asterisk.org/r/4016/
........
Merged revisions 423800 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423801 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423802 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423803 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423804
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Tue, 23 Sep 2014 14:36:00 +0000 (14:36 +0000)]
Make CDR and CEL unit tests less FRACKy.
Prior to this commit, CDR and CEL tests were expected to trigger
FRACKs (i.e. assertions) due to the fact that the channels they
create have no formats on them. Some code was independently added
recently that attempts to prevent FRACKs from occurring by failing
early when attempting to set up translation paths if one or both
channels support no formats. Unfortunately, this attempt to be helpful
made the CDR and CEL tests go from simply FRACKing to outright
failing and in some cases, failing so badly as to crash Asterisk.
This commit seeks to correct past mistakes by adding the ulaw format
to channels created by the CDR and CEL unit tests. This makes setting
up translation paths succeed, eliminates previously-seen FRACKs, and
ultimately causes the unit tests to succeed again.
Review: https://reviewboard.asterisk.org/r/4014
........
Merged revisions 423783 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423784
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Mon, 22 Sep 2014 19:49:30 +0000 (19:49 +0000)]
chan_sip: On INVITE retransmission, don't add an extra 503 response.
INVITE arrives to asterisk, asterisk responds Busy(). If the INVITE is
retransmitted, asterisk would generate a 503 in addition to the 486.
Thanks Torrey Searle for providing a working regression test.
ASTERISK-24335 #close
Review: https://reviewboard.asterisk.org/r/4003/
Patches:
retrans_486_invite.patch uploaded by Torrey Searle (License #5334)
........
Merged revisions 423720 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423721 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423722 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423723 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423724
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Mon, 22 Sep 2014 17:42:26 +0000 (17:42 +0000)]
cli.c: Fix tab completion "module load" when MALLOC_DEBUG is enabled.
r421600 conflicted with r155763.
ASTERISK-24348 #close
........
Merged revisions 423657 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423658 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423659 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423660 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423661
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Sun, 21 Sep 2014 01:16:05 +0000 (01:16 +0000)]
main/channel: Unlock channel in off-nominal path
In r423414 (13) / r423415 (trunk), an API call that determines if a format
capability structure is empty was added. This returns true if the format
capability structure is completely empty or "none". A check for this was added
in channel.c's set_format call. Unfortunately, when this check was true, it
returned from the function while still holding the channel lock. This caused
the CDR unit tests - which have a tendency to create channels with no formats -
to deadlock. Whoops.
This patch unlocks the channel on the off-nominal path.
........
Merged revisions 423641 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423642
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Sat, 20 Sep 2014 23:55:45 +0000 (23:55 +0000)]
rest-api/api-docs/events.json: Remove non-compliant 'extends' attribute
Prior to the release of Swagger 1.2, the attribute 'extends' was being
promoted as a possible way to show that a particular object extends an existing
object. Instead, the Swagger specification went with the 'subTypes' attribute
in the base object. This patch removes the unsupported attribute; the object
that the offending objects proposed to extend already lists them in its
'subTypes' attribute.
ASTERISK-24300 #close
Reported by: Bradley Watkins
........
Merged revisions 423620 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423621 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423622
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Sat, 20 Sep 2014 23:41:55 +0000 (23:41 +0000)]
rest-api/api-docs: Correct basePath in resources to match top resources file
The resources.json file that defines the resource JSON files used with ARI
references a basePath of 'http://localhost:8088/ari'. This does not match what
is defined in the resource files themselves, 'http://localhost:8088/stasis'.
The correct base path is the one that includes 'ari' in the URL; this patch
updates the various resource JSON files to have the correct basePath.
ASTERISK-24339 #close
Reported by: Bradley Watkins
........
Merged revisions 423617 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423618 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423619
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Fri, 19 Sep 2014 19:51:50 +0000 (19:51 +0000)]
res_pjsip_notify: Fix crash on unload/load and don't say the module doesn't exist on reload.
When unloading the module did not unregister the CLI commands causing a crash upon
load when they were registered again.
When reloading the module the return value from the config options framework was not
checked to determine if an error occurred or not. This caused a message to be output
saying the module did not exist when reloading if no changes were present.
AST-1433 #close
AST-1434 #close
........
Merged revisions 423579 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423580 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423581
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 19 Sep 2014 17:16:32 +0000 (17:16 +0000)]
res_pjsip_sdp_rtp.c: Fix native formats containing formats that were not negotiated.
Outgoing PJSIP calls can result in non-negotiated formats listed in the
channel's native formats if video formats are listed in the endpoint's
configuration. The resulting call could then use a non-negotiated format
resulting in one way audio.
* Simplified the update of session->req_caps in set_caps(). Why do
something in five steps when only one is needed?
AFS-162 #close
Review: https://reviewboard.asterisk.org/r/4000/
........
Merged revisions 423561 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423563
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 19 Sep 2014 15:54:20 +0000 (15:54 +0000)]
Stasis_channels: Resolve unfinished Dials when doing masquerades
Masquerades into channels that are in the dialing state don't end their dial
and this goes against the model for things like CDRs and generating Dial end
manager actions and such.
ASTERISK-24237 #close
Reported by: Richard Mudgett
Review: https://reviewboard.asterisk.org/r/3990/
........
Merged revisions 423525 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423530 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423546
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 19 Sep 2014 15:11:06 +0000 (15:11 +0000)]
chan_iax2: Fix a crash when using chan_iax2 jitterbuffer settings
Caused by format changes in Asterisk 13
ASTERISK-24265 #close
Reported by: Dafi Ni
Review: https://reviewboard.asterisk.org/r/3999/
........
Merged revisions 423524 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423526
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 19 Sep 2014 12:50:08 +0000 (12:50 +0000)]
PJSIP: Prevent T38 framehook being put on wrong channel
This change gives framehooks a reverse-direction masquerade callback in
addition to chan_fixup_cb similar to the callback added to datastores
to handle the same situation. The new callback provides the same
parameters as the fixup callback, but is called on the new channel's
framehooks before moving framehooks from the old channel to the new
channel. This gives the framehooks an oppurtunity to decide whether
they should remain on the new channel or be removed.
This new callback is used to prevent the PJSIP T.38 framehook from
remaining on a masqueraded channel if the new channel is not also a
PJSIP channel. This was causing a crash when a local channel was
masqueraded into a PJSIP channel and the framehook was executed on the
local channel since the channel's tech private data was not structured
as expected.
Review: https://reviewboard.asterisk.org/r/4001/
........
Merged revisions 423503 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423504 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423505
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Sean Bright [Thu, 18 Sep 2014 19:31:03 +0000 (19:31 +0000)]
res_pjsip: Don't require a password when doing userpass authentication.
An empty password is valid for username/password authentication so we should
allow password to be empty/not supplied.
Review: https://reviewboard.asterisk.org/r/3988
........
Merged revisions 423481 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423482 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423483
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Thu, 18 Sep 2014 19:23:39 +0000 (19:23 +0000)]
utils: Create ast_strsep function that ignores separators inside quotes
This function acts like strsep with three exceptions...
* The separator is a single character instead of a string.
* Separators inside quotes are treated literally instead of like separators.
* You can elect to have leading and trailing whitespace and quotes
stripped from the result and have '\' sequences unescaped.
Like strsep, ast_strsep maintains no internal state and you can call it
recursively using different separators on the same storage.
Also like strsep, for consistent results, consecutive separators are not
collapsed so you may get an empty string as a valid result.
Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3989/
........
Merged revisions 423476 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423478 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423480
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Thu, 18 Sep 2014 18:56:54 +0000 (18:56 +0000)]
Add subscription state test events.
These are needed for a set of batched notification RLS tests that are
about to be committed to the testsuite.
Review: https://reviewboard.asterisk.org/r/3967
........
Merged revisions 423462 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423463
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 18 Sep 2014 17:22:03 +0000 (17:22 +0000)]
res_pjsip_endpoint_identifier_ip: Fix parsing of match value with CIDR
Also fixes comma separates match lists
ASTERISK-24290 #close
Reported by: Ray Crumrine
Review: https://reviewboard.asterisk.org/r/3995/
........
Merged revisions 423417 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423425 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423442
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Thu, 18 Sep 2014 17:10:50 +0000 (17:10 +0000)]
bridge_softmix.c: Made use ao2_replace() instead of the inline equivalent.
* Clarified some read/write format comments.
* Fixed a doxygen tag typo.
........
Merged revisions 423423 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423424
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Thu, 18 Sep 2014 16:56:40 +0000 (16:56 +0000)]
astobj2.c/refcounter.py: Fix to deal with invalid object refs.
* Make astob2 REF_DEBUG output an invalid object line when an invalid ao2
object ref/unref is attempted. This is similar to the
constructor/destructor lines.
* Fixed refcounter.py to handle skewed objects that have
constructor/destructor states.
* Made refcounter.py highlight the invalid ao2 object refs by putting them
in their own section of the processed output file.
* Made refcounter.py highlight unreffing an object by more than one that
results in a negative ref count and the object being destroyed. The
abnormally destroyed object is reported in the invalid and finalized
object sections of the output.
Review: https://reviewboard.asterisk.org/r/3971/
........
Merged revisions 423349 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423400 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423416 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423418 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423422
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Thu, 18 Sep 2014 16:38:26 +0000 (16:38 +0000)]
Add API call to determine if format capability structure is "empty".
Empty here means that there are no formats in the format_cap structure
or the only format in it is the "none" format.
I've added calls to check the emptiness of a format_cap in a few places
in order to short-circuit operations that would otherwise be pointless
as well as to prevent some assertions from being triggered in cases
where channels with no formats are used.
........
Merged revisions 423414 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423415
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Thu, 18 Sep 2014 16:24:48 +0000 (16:24 +0000)]
res_fax_spandsp: Properly handle cleanup before starting FAXes.
If faxing fails at a very early stage, then it is possible for
us to pass a NULL t30 state pointer to spandsp, which spandsp
is none too pleased with.
This patch ensures that we pass the correct pointer to spandsp
in the situation where we have not yet set our local t30 state
pointer.
ASTERISK-24301 #close
Reported by Matt Jordan
Patches:
ASTERISK-24301-fax.diff Uploaded by Mark Michelson (License #5049)
........
Merged revisions 423360 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423365 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423372 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423380
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Thu, 18 Sep 2014 16:09:25 +0000 (16:09 +0000)]
res_pjsip_pubsub: Add some type safety when generating NOTIFY bodies.
res_pjsip_pubsub has two separate checks that it makes when a SUBSCRIBE
arrives.
* It checks that there is a subscription handler for the Event
* It checks that there are body generators for the types in the Accept header
The problem is, there's nothing that ensures that these two things will
actually mesh with each other. For instance, Asterisk will accept a subscription
to MWI that accepts pidf+xml bodies. That doesn't make sense.
With this commit, we add some type information to the mix. Subscription
handlers state they generate data of type X, and body generators state
that they consume data of type X. This way, Asterisk doesn't end up in
some hilariously mismatched situation like the one in the previous paragraph.
ASTERISK-24136 #close
Reported by Mark Michelson
Review: https://reviewboard.asterisk.org/r/3877
Review: https://reviewboard.asterisk.org/r/3878
........
Merged revisions 423344 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423348 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423350
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Thu, 18 Sep 2014 15:14:38 +0000 (15:14 +0000)]
res_pjsip: ami: Fix error in AMI output when an endpoint has no transport
When no transport is associated to an endpoint, the AMI output for
PJSIPShowEndpoint indicates an error instead of silently ignoring the
missing transport.
This patch causes the error to appear only if a transport was specified
on the endpoint and the transport doesn't exist. It also fixes an issue
with counting the objects that were actually found.
ASTERISK-24161 #close
ASTERISK-24331 #close
Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3998/
........
Merged revisions 423282 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423284 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423285
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
David M. Lee [Thu, 18 Sep 2014 15:07:12 +0000 (15:07 +0000)]
Only install dahdi_span_config_hook if DAHDI is enabled
This patch changes the install to only install the hook script if
DAHDI is enabled. It also adds the script to the uninstall task, and
moves the DAHDI_UDEV_HOOK_DIR variable so that it's not between the
_MAKEOPTS variables and their comment.
This allows installs which specify a --prefix to work normally, as
long as they don't enable DAHDI.
Review: https://reviewboard.asterisk.org/r/3972/
........
Merged revisions 423281 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423283
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Thu, 18 Sep 2014 14:46:12 +0000 (14:46 +0000)]
config: bug: Fix SEGV in ast_category_insert when matching category isn't found
If you call ast_category_insert with a match category that doesn't exist, the
list traverse runs out of 'next' categories and you get a SEGV. This patch
adds check for the end-of-list condition and changes the signature to return
an int for success/failure indication instead of a void.
The only consumer of this function is manager and it was also changed to use
the return value.
Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3993/
........
Merged revisions 423276 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423277 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423278 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423279 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423280
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Wed, 17 Sep 2014 18:06:06 +0000 (18:06 +0000)]
res_rtp_asterisk: Ensure that the thread terminating pj stuff is registered.
........
Merged revisions 423253 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423254 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423255 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423256
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Tue, 16 Sep 2014 22:46:29 +0000 (22:46 +0000)]
pbx/Makefile: Revert r423237
This patch was supposed to go into a team branch, but I was a bit fast on the
gun before 'svn switch' had apparently moved the target branch over.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423238
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Tue, 16 Sep 2014 22:42:09 +0000 (22:42 +0000)]
Add some pbx python stuff
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423237
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Tue, 16 Sep 2014 21:06:22 +0000 (21:06 +0000)]
Multiple revisions 423209,423212
........
r423209 | file | 2014-09-16 17:35:34 -0300 (Tue, 16 Sep 2014) | 8 lines
res_rtp_asterisk: Fix building when pjproject is not used.
........
Merged revisions 423207 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423208 from http://svn.asterisk.org/svn/asterisk/branches/12
........
r423212 | file | 2014-09-16 18:03:59 -0300 (Tue, 16 Sep 2014) | 10 lines
res_rtp_asterisk: Fix 100% CPU usage due to timer heap thread spinning.
Side note: I need a vacation.
........
Merged revisions 423210 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423211 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423209,423212 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423213
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Scott Griepentrog [Tue, 16 Sep 2014 16:33:53 +0000 (16:33 +0000)]
Voicemail: get correct duration when copying file to vm
Changes made during format improvements resulted in the
recording to voicemail option 'm' of the MixMonitor app
writing a zero length duration in the msgXXXX.txt file.
This change introduces a new function ast_ratestream(),
which provides the sample rate of the format associated
with the stream, and updates the app_voicemail function
for ast_app_copy_recording_to_vm to calculate the right
duration.
Review: https://reviewboard.asterisk.org/r/3996/
ASTERISK-24328 #close
........
Merged revisions 423192 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423193
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Tue, 16 Sep 2014 12:12:36 +0000 (12:12 +0000)]
res_pjsip_session: Fix usage of wrong memory pool when creating local SDP.
........
Merged revisions 423172 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423173 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423174
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Tue, 16 Sep 2014 11:12:30 +0000 (11:12 +0000)]
res_rtp_asterisk: Fix a myriad of TURN client issues.
1. The number of file descriptors an ioqueue instance can handle is fixed, so we
now spawn the required number to handle the load.
2. Our transport identifiers were exceeding the range supported by pjnath.
3. The TURN client did not set up client binding causing needless bandwidth usage.
4. The code no longer updates address information on each packet.
5. STUN traffic was getting looped back to Asterisk instead of going through the
TURN server.
6. Synchronization now ensures things are completely setup or destroyed.
7. Logging now reflects the target the TURN server is sending to/receiving from
on our behalf.
ASTERISK-23577 #close
Reported by: Jay Jideliov
ASTERISK-23634 #close
Reported by: Roman Skvirsky
Review: https://reviewboard.asterisk.org/r/3982/
........
Merged revisions 423150 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423151 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423152 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423153
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Mon, 15 Sep 2014 10:50:11 +0000 (10:50 +0000)]
contrib: Fix verifyi typo in alembic DB script ps_transport table.
Reported by: Zogot (on IRC)
Patches:
tmp.diff uploaded by Zogot, cleaned up by me.
........
Merged revisions 423128 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423129 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423130
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Sun, 14 Sep 2014 15:54:22 +0000 (15:54 +0000)]
chan_sip: Clarify that sipdebug=yes cannot be undone by the CLI.
Document it in sip.conf.
ASTERISK-24249 #close
Reported by: Avinash Mohod
Review: https://reviewboard.asterisk.org/r/3926/
........
Merged revisions 423066 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 423067 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 423068 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 423069 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423070
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Walter Doekes [Sun, 14 Sep 2014 15:41:58 +0000 (15:41 +0000)]
musiconhold: Add sort=randstart, and deprecate old stuff.
- adds sort=randstart (next to sort=, sort=random, sort=alpha)
- combines duplicate moh option parsing code into a single function
- adds deprecationwarnings for application=r to sort randomly
- adds deprecationwarnings for random=yes to sort randomly
- removes invisible code that was supposed to stay until 1.8
The sort=randstart works like sort=alpha, except we start at a random
position.
Review: https://reviewboard.asterisk.org/r/3991/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423065
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Fri, 12 Sep 2014 17:42:15 +0000 (17:42 +0000)]
chan_rtp: Add unicast RTP support.
This module supports sending both unicast and multicast RTP
to a specified target. Multicast functionality is the same as
chan_multicast_rtp was. In the case of unicast a specific
IP address and port can be specified, along with optional RTP
engine and format in the form of:
UnicastRTP/<ip address>:<port>/<engine>/<format>
This can be useful for sending a copy of a media stream to
another application for processing.
Review: https://reviewboard.asterisk.org/r/3981/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423004
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 12 Sep 2014 16:19:19 +0000 (16:19 +0000)]
Realtime: Fix a bug that caused realtime destroy command to crash
Also has could affect with anything that goes through ast_destroy_realtime.
If a CLI user used the command 'realtime destroy <family>' with only a single
column/value pair, Asterisk would crash when trying to create a variable list
from a NULL value.
ASTERISK-24231 #close
Reported by: Niklas Larsson
Review: https://reviewboard.asterisk.org/r/3985/
........
Merged revisions 422984 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422985 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422991
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Thu, 11 Sep 2014 22:17:39 +0000 (22:17 +0000)]
Remove undocumented default behavior of ast_play_and_record_full acceptdtmf.
ast_play_and_record_full() has a parameter called "acceptdtmf" that is a
string of acceptable DTMF digits that may be pressed by a caller to end
and accept the recording.
ARI uses this function in order to perform recording, and it provides
options for what is passed as acceptdtmf to ast_play_and_record_full().
By default, ARI passes an empty string, with the intention that no DTMF
can be used to end the recording.
The problem is that ast_play_and_record_full() attempts to be "helpful"
by setting "#" as the acceptdtmf if an empty string or NULL pointer
has been passed in. With ARI, this results in unexpected behavior
occurring if you have attempted to intercept "#" yourself in order
to perform some other manipulation of the live recording.
This change removes the "helpful" behavior by no longer accepting
"#" as a default acceptdtmf if none is specified by the caller of
ast_play_and_record_full(). This makes the ARI scenario work as
expected.
The other callers of ast_play_and_record_full() are app_voicemail
and app_minivm, and in both cases, they pass an explicit "#" to
ast_play_and_record_full() as acceptdtmf, so they are unaffected
by this change.
........
Merged revisions 422964 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422965 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422967
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Wed, 10 Sep 2014 16:07:04 +0000 (16:07 +0000)]
config: bug: fix truncation of included config files on permissions error
ast_config_text_file_save() currently truncates include files as they
are processed. If a subsequent include file or the main config file has
a permissions error that prevents writing, earlier include files are left
truncated resulting in a frantic search for backups.
This patch causes ast_config_text_file_save to check for write access
on all files before it truncates any of them.
Will be applied 1.8 > trunk.
Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3986/
........
Merged revisions 422900 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422903 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422904 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422905 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422906
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Sean Bright [Wed, 10 Sep 2014 16:00:36 +0000 (16:00 +0000)]
pjsip/config_auth.c: Add missing whitespace to log messages.
The errors generated when validating 'auth' settings are missing a space which
makes the messages a little confusing.
........
Merged revisions 422899 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422901 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422902
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Tue, 9 Sep 2014 20:15:57 +0000 (20:15 +0000)]
Update CHANGES for CHANNEL(onhold).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422885
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Rusty Newton [Tue, 9 Sep 2014 20:11:10 +0000 (20:11 +0000)]
Sounds/BuildSystem: Modifications to include new releases and Japanese language.
Modifying Makefile and sounds.xml to include new core 1.4.26 and extra 1.4.15
sound prompt releases, plus the new Japanese core sound prompts contributed
by QLOOG.
ASTERISK-23324
Reported by: Kevin McCoy
Tested by: Rusty Newton
........
Merged revisions 422789 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422790 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422791 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422883 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422884
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Tue, 9 Sep 2014 16:14:02 +0000 (16:14 +0000)]
func_channel: Add CHANNEL(onhold) item to get the current hold status of the channel.
It would be useful to get the current hold status of a channel.
Added CHANNEL(onhold) item that returns 1 (onhold) and 0 (not-onhold) for
the hold status of a channel.
ASTERISK-24038
Reported by: Matt Jordan
AFS-113 #close
Reported by: Mark Michelson
Review: https://reviewboard.asterisk.org/r/3983/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422870
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Mon, 8 Sep 2014 18:04:01 +0000 (18:04 +0000)]
Add note about configuring list_items on a single line.
........
Merged revisions 422855 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422856
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Mon, 8 Sep 2014 17:53:33 +0000 (17:53 +0000)]
Add sample configuration for resource lists.
On review /r/3977, it was recommended to note in the
sample configuration about the size limitation for
resource lists. However, since there was no section in
the sample configuration at all for resource list
subscriptions, I decided to make a separate commit
where I have added the necessary sample configuration
as well as the size limitation warning.
........
Merged revisions 422853 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422854
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Mon, 8 Sep 2014 17:35:02 +0000 (17:35 +0000)]
Pre-allocate transmission data buffer for RLS NOTIFY requests.
PJSIP, unless a constant is modified at compilation time, limits
SIP requests to 4000 bytes. Full-state RLS notifications can easily
exceed this limit with moderately small lists.
This changeset allows for Asterisk to work around this size limit by
performing its own allocation of the transmission data buffer. This
way, Asterisk can allocate a buffer that exceeds the built-in maximum.
We still impose our own limit of 64000 bytes, mainly because making
allocations larger than that is a bit absurd.
ASTERISK-24181 #close
Reported by Mark Michelson
Review: https://reviewboard.asterisk.org/r/3977
........
Merged revisions 422851 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422852
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Mon, 8 Sep 2014 15:58:24 +0000 (15:58 +0000)]
res_pjsip_pubsub: Check supported headers for eventlist when subscribing to
resource list
https://wiki.asterisk.org/wiki/display/AST/Resource+List+Subscription+Test+Plan
According to the off-nominal plan, if evenlist support is not specified in a
SUBSCRIBE's supported header(s), that subscription should be rejected with an
error.
ASTERISK-23871
Reported by: Mark Michelson
Review: https://reviewboard.asterisk.org/r/3960/diff/#index_header
........
Merged revisions 422836 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422837
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Sat, 6 Sep 2014 22:50:24 +0000 (22:50 +0000)]
main/cdr: Copy over location information during a fork
When a CDR is forked, a new CDR is created and appended to the CDR chain for
the Party A. The forked CDR starts life off as a clone of the last
non-finalized for the particular Party A. In the past, merely copying over
the snapshots for Party A/Party B would be sufficient. However, as the CDRs
now contain cached information from Party A - specifically application/data,
context, and extension - we need to copy that over during a fork as well.
Huzzah for unit tests catching this when the context/extension were derived
from a cached value on the CDR instead of on Party A.
........
Merged revisions 422769 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422770 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422771
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Sat, 6 Sep 2014 22:22:34 +0000 (22:22 +0000)]
main/rtp_engine: Format NTP timestamps as unsigned ints
On some systems, a timeval's tv_sec/tv_usec will be unsigned lont ints, as
opposed to long ints. When the RTP engine formats these as strings, it was
previously formatting them as signed integers, which can result in some
odd negative timestamp values (particularly on 32-bit systems). This patch
formats the values as unsigned long integers.
........
Merged revisions 422766 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422767 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422768
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Sat, 6 Sep 2014 19:13:10 +0000 (19:13 +0000)]
res_pjsip_sdp_rtp: Fix retrieval of "ice-pwd" attribute if in session and not media stream.
........
Merged revisions 422746 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422747 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422748
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 5 Sep 2014 22:04:33 +0000 (22:04 +0000)]
main/cdrs: Preserve context/extension when executing a Macro or GoSub
The context/extension in a CDR is generally considered the destination of a
call. When looking at a 2-party call CDR, users will typically be presented
with the following:
context exten channel dest_channel app data
default 1000 SIP/8675309 SIP/1000 Dial SIP/1000,,20
However, if the Dial actually takes place in a Macro, the current behaviour
in 12 will result in the following CDR:
context exten channel dest_channel app data
macro-dial s SIP/8675309 SIP/1000 Dial SIP/1000,,20
The same is true of a GoSub:
context exten channel dest_channel app data
subs dial_stuff SIP/8675309 SIP/1000 Dial SIP/1000,,20
This generally makes the context/exten fields less than useful.
It isn't hard to preserve these values in the CDR state machine; however, we
need to have something that informs us when a channel is executing a
subroutine. Prior to this patch, there isn't anything that does this.
This patch solves this problem by adding a new channel flag,
AST_FLAG_SUBROUTINE_EXEC. This flag is set on a channel when it executes a
Macro or a GoSub. The CDR engine looks for this value when updating a Party A
snapshot; if the flag is present, we don't override the context/exten on the
main CDR object. In a funny quirk, executing a hangup handler must *not* abide
by this logic, as the endbeforehexten logic assumes that the user wants to see
data that occurs in hangup logic, which includes those subroutines. Since
those execute outside of a typical Dial operation (and will typically have
their own dedicated CDR anyway), this is unlikely to cause any heartburn.
Review: https://reviewboard.asterisk.org/r/3962/
ASTERISK-24254 #close
Reported by: tm1000, Tony Lewis
Tested by: Tony Lewis
........
Merged revisions 422718 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422719 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422720
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 5 Sep 2014 21:56:52 +0000 (21:56 +0000)]
main/cdr: Fix crash/memory consumption in CDRs in multi-party bridge scenarios
This patch fixes an issue where CDRs would get stuck generating an infinite
number of CDRs, eventually crashing Asterisk (and consuming a lot of memory
along the way).
When a channel enters into a multi-party bridge, the CDR engine creates
mappings of each participant to each other participant, picking the 'A' party
as it goes. So, if we have four channels in a multi-party bridge (Alice, Bob,
Charlie, Denise), we would have something like:
Alice => Bob
Alice => Charlie
Alice => Denise
Bob => Charlie
Bob => Denise
Charlie => Denise
This works fine when participants enter the bridge a single time.
When a participant leaves a bridge, the CDRs for that channel are transitioned
to a finalized state.
The bug occurs if Bob rejoins. When the CDR engine creates mappings between the
channels, it walks through all the participants currently in the bridge, and
realizes that no one in the bridge can create a CDR with the channel (Bob).
As such it creates a new CDR for the candidate and appends it to that
candidate's chain. Unfortunately, on this particular code path, it doesn't
stop traversing the candidate's chain. Since we just added ourselves to the
chain, this causes the loop to keep going, constantly adding new CDRs.
This patch makes it so the engine bails when it creates a CDR match in this
case.
Review: https://reviewboard.asterisk.org/r/3964/
ASTERISK-24241 #close
Reported by: Deepak Singh Rawat
Tested by: Deepak Singh Rawat
ASTERISK-24208
Reported by: Frankie Chin
........
Merged revisions 422715 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422716 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422717
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 5 Sep 2014 20:38:27 +0000 (20:38 +0000)]
func_channel.c: Add missing locking to some CHANNEL() requests.
* The CHANNEL() audionativeformat, videonativeformat, audioreadformat, and
audiowriteformat now need locking since the media format rework when
accessing the channel's format pointers.
* Increased the buffer size for CHANNEL() audionativeformat and
videonativeformat output strings since the allow=all can be a lengthy
list.
* Tweaked the CHANNEL() XML documentation for secure_bridge_signaling,
secure_bridge_media, and state.
* Ensured the output buffer is initialized for secure_bridge_signaling and
secure_bridge_media.
* Made use the locked_copy_string() macro instead of inlining it for trace
and checkhangup.
........
Merged revisions 422700 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422701
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 5 Sep 2014 20:22:12 +0000 (20:22 +0000)]
Dial API: Add a dial option to indicate the dialed channel will replace dialer
Adds an option to the dial API that marks an outgoing dial as replacing the dialing channel for the purpose of propagating accountcode. When it is used, AST_CHANNEL_REQUESTOR_REPLACEMENT is used instead of AST_CHANNEL_REQUESTOR_BRIDGE_PEER when setting accountcodes on the involved channels with ast_channel_req_accountcodes.
Review: https://reviewboard.asterisk.org/r/3968/
........
Merged revisions 422684 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422697
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Fri, 5 Sep 2014 19:39:04 +0000 (19:39 +0000)]
Call IDs: Fix appearance of call ID in core show channels when NULL
NULL call IDs were meant to appear as '(none)' but instead were showing
the contents of an uninitialized character buffer.
ASTERISK-24223
Review: https://reviewboard.asterisk.org/r/3979/
........
Merged revisions 422664 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422665 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422683
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Richard Mudgett [Fri, 5 Sep 2014 17:45:03 +0000 (17:45 +0000)]
devicestate.c: Minor tweaks
* In ast_state_chan2dev() use ARRAY_LEN() instead of a sentinel value in
chan2dev[].
* Fix some comments in chan_iax2.c.
........
Merged revisions 422661 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422663
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Kinsey Moore [Fri, 5 Sep 2014 13:29:38 +0000 (13:29 +0000)]
Menuselect: Fix incorrect enabling on failed deps
This corrects a situation where menuselect can incorrectly enable a
module by default that has defaultenabled set to "no" and has
failed/non-selected dependencies. The bug is due to an inverted test
when checking for whether the given module should be set to enabled by
default on load.
Review: https://reviewboard.asterisk.org/r/3975/
Reported by: John Bigelow
........
Merged revisions 422646 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422647
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Jonathan Rose [Thu, 4 Sep 2014 22:05:41 +0000 (22:05 +0000)]
Manager: Require read permission for SYSTEM in order to send FullyBooted
Review: https://reviewboard.asterisk.org/r/3969/
........
Merged revisions 422584 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422625 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422626 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422631 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422632
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Joshua Colp [Wed, 3 Sep 2014 14:05:58 +0000 (14:05 +0000)]
res_pjsip_transport_websocket: Fix crash when the Contact header is not a URI.
The code for changing the Contact header wrongly assumed that the Contact
would always contain a URI. This is incorrect.
ASTERISK-24271
Reported by: Dafi Ni
........
Merged revisions 422557 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422558 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422559
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Mark Michelson [Tue, 2 Sep 2014 20:29:58 +0000 (20:29 +0000)]
Resolve race condition where channels enter dialplan application before media has been negotiated.
Testsuite tests will occasionally fail because on reception of a 200 OK SIP response,
an AST_CONTROL_ANSWER frame is queued prior to when media has finished being
negotiated. This is because session supplements are called into before PJSIP's
inv_session code has told us that media has been updated. Sometimes the queued answer
frame is handled by the PBX thread before the ensuing media negotiations occur, causing
a test failure.
As it turns out, there is another place that session supplements could be called into, which is
after media has finished getting negotiated. What this commit introduces is a means for session
supplements to indicate when they wish to be called into when handling an incoming SIP response.
By default, all session supplements will be run at the same point that they were prior to this
commit. However, session supplements may indicate that they wish to be handled earlier than
normal on redirects, or they may indicate they wish to be handled after media has been negotiated.
In this changeset, two session supplements have been updated to indicate a preference for when
they should be run: res_pjsip_diversion executes before handling redirection in order to get
information from the Diversion header, and chan_pjsip now handles responses to INVITEs after
media negotiation to fix the race condition mentioned previously.
ASTERISK-24212 #close
Reported by Matt Jordan
Review: https://reviewboard.asterisk.org/r/3930
........
Merged revisions 422536 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422542 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422543
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Mon, 1 Sep 2014 15:25:26 +0000 (15:25 +0000)]
main/cli: Do not attempt to show CDR data for internal channels
Internal channels don't have CDRs. Querying the CDR engine for their variables
will make it cranky.
........
Merged revisions 422506 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422507 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422524
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Mon, 1 Sep 2014 14:15:32 +0000 (14:15 +0000)]
res_stasis: Don't play MoH to channels by default when added to holding bridges
When ARI manipulates a bridge, it generally doesn't care what the mixing
technology is. Operations on a bridge initiated through ARI should perform
their action in generally the same way, regardless of the bridge's mixing
technology. While the mixing technology may determine how media flows to
channels, the actual operations on a bridge themselves should be the same.
Currently, this isn't the case with holding bridges. When a channel joins
without a role, MoH is started on that channel automatically. Subsequent bridge
operations that would stop MoH would fail (as there is no Announcer channel
playing MoH to the bridge). Starting MoH on the bridge will also create two
MoH streams: one from the MoH being played on the participant channel, and one
from the announcer channel. From the perspective of ARI users, this is
counter-intuitive - I would not expect MoH to be started for me. The mixing
technology determines how media is shared between participants, not the
application experience.
This patch does the following:
* The Stasis bridge class now inspects channels as they are going into a
bridge. If the bridge has a holding capability, and the channel has no
roles, we give it a participant role and mark the default behaviour to have
no entertainment. This allows addChannel operations to continue to set a
participant role with an entertainment option if it felt like it (or could
do it).
* The music on hold channel is now Stasis approved (tm)
Review: https://reviewboard.asterisk.org/r/3929/
ASTERISK-24264 #close
Reported by: Samuel Galarneau
Tested by: Samuel Galarneau
........
Merged revisions 422503 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422504 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422505
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Sat, 30 Aug 2014 17:33:08 +0000 (17:33 +0000)]
confbridge: Add Duration to ConfbridgeList event
The ConfbridgeList event doesn't include how long the user has been a
member of the conference. This patch adds Duration (seconds) which
is based on user->chan->answertime.
Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3955/
........
Merged revisions 422444 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422445 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422446
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
George Joseph [Sat, 30 Aug 2014 17:24:57 +0000 (17:24 +0000)]
manager: Make WaitEvent action respect eventfilters
A WaitEvent issued via an http session isn't respecting eventfilters defined
for the user. I just added a match_filter to the predicate that controls
astman_append.
Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3958/
........
Merged revisions 422439 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422440 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422441 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422442 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422443
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 29 Aug 2014 19:40:34 +0000 (19:40 +0000)]
doc: Add a manpage for the smsq utility
This patch adds a manpage for the smsq utility. Note that this is one of
the patches the Debian distro applies for the Asterisk project, as per
ASTERISK-24191.
Review: https://reviewboard.asterisk.org/r/3895/
ASTERISK-24171 #close
Reported by: Jeremy Laine
patches:
smsq.8 uploaded by Jeremy Laine (License 6561)
........
Merged revisions 422376 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422377 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422378 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422379 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422380
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Fri, 29 Aug 2014 19:35:43 +0000 (19:35 +0000)]
doc: Add a manpage for the aelparse utility
This patch adds a manpage for the aelparse utility. Note that this is one of
the patches the Debian distro applies for the Asterisk project, as per
ASTERISK-24191.
Review: https://reviewboard.asterisk.org/r/3896/
ASTERISK-24171 #close
Reported by: Jeremy Laine
patches:
aelparse.8 uploaded by Jeremy Laine (License 6561)
........
Merged revisions 422371 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422372 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422373 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422374 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422375
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Scott Griepentrog [Fri, 29 Aug 2014 18:46:19 +0000 (18:46 +0000)]
The assertion that peer was not found on final event
message was being triggered on configuration reload.
This patch changes that case to just return instead.
Review: https://reviewboard.asterisk.org/r/3953/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422358
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
Matthew Jordan [Thu, 28 Aug 2014 21:54:44 +0000 (21:54 +0000)]
LICENSE: Clarify language in Asterisk's LICENSE to allow for linking to UniMRCP
The UniMRCP project distributes Asterisk modules that integrate Asterisk with
UniMRCP, and other Asterisk users use the UniMRCP library as well.
Unfortunately, the UniMRCP license is Apache 2.0, which per the Free Software
Foundation, is not a compatible license with the GPLv2.
"Please note that this license is not compatible with GPL version 2, because it
has some requirements that are not in that GPL version. These include certain
patent termination and indemnification provisions. The patent termination
provision is a good thing, which is why we recommend the Apache 2.0 license for
substantial programs over other lax permissive licenses."
On the other hand, UniMRCP is a great project and we'd like to let people use
it with Asterisk.
This patch updates the LICENSE text to allow users to link Asterisk with
UniMRCP and distribute the resulting binaries.
........
Merged revisions 422293 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 422294 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 422295 from http://svn.asterisk.org/svn/asterisk/branches/12
........
Merged revisions 422296 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@422297
65c4cc65-6c06-0410-ace0-
fbb531ad65f3