There are many benefits to making the ast_channel an opaque handle, from
increasing maintainability to presenting ways to kill masquerades. This patch
kicks things off by taking things a field at a time, renaming the field to
'__do_not_use_${fieldname}' and then writing setters/getters and converting the
existing code to using them. When all fields are done, we can move ast_channel
to a C file from channel.h and lop off the '__do_not_use_'.
This patch sets up main/channel_interal_api.c to be the only file that actually
accesses the ast_channel's fields directly. The intent would be for any API
functions in channel.c to use the accessor functions. No more monkeying around
with channel internals. We should use our own APIs.
The interesting changes in this patch are the addition of
channel_internal_api.c, the moving of the AST_DATA stuff from channel.c to
channel_internal_api.c (note: the AST_DATA stuff will have to be reworked to
use accessor functions when ast_channel is really opaque), and some re-working
of the way channel iterators/callbacks are handled so as to avoid creating fake
ast_channels on the stack to pass in matching data by directly accessing fields
(since "name" is a stringfield and the fake channel doesn't init the
stringfields, you can't use the ast_channel_name_set() function). I went with
ast_channel_name(chan) for a getter, and ast_channel_name_set(chan, name) for a
setter.
The majority of the grunt-work for this change was done by writing a semantic
patch using Coccinelle ( http://coccinelle.lip6.fr/ ).
Review: https://reviewboard.asterisk.org/r/1655/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350223 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Even though we set the frame to the ast_null_frame and return that,
the caller of the frame hook may still need the frame. This now is
a bit more careful about when it frees the frame, i.e., only under
the same conditions that applied when we duplicated it in the first
place.
........
Merged revisions 349822 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@349823 65c4cc65-6c06-0410-ace0-fbb531ad65f3
A frame that is translated via ast_translate is also duplicated via ast_frdup.
This will allocate a new frame on the heap, which needs to be free'd
at the appropriate time. This issue reporter used valgrind to find that this
occurred in res_fax's fax_gateway_framehook; a quick search through the code
showed that only place this was currently not handling the translatted frame
properly.
(closes issue ASTERISK-19133)
Reported by: Sylvain Rochet
........
Merged revisions 349608 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@349609 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit removes the V.21 preamble detection code previously added to the
generic DSP implementation in Asterisk, and instead enhances the res_fax module
to be able to utilize V.21 preamble detection functionality made available by
FAX technology modules. This commit also adds such support to res_fax_spandsp,
which uses the Spandsp modem tone detection code to do the V.21 preamble
detection.
There should be no functional change here, other than much more reliable V.21
preamble detection (and thus T.38 gateway initiation).
........
Merged revisions 349248 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@349249 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Prior to this patch, res_musiconhold existed at the same module priority level
as the timing sources that it depends on. This would cause a problem when
music on hold was reloaded, as the timing source could be changed after
res_musiconhold was processed. This patch adds a new module priority level,
AST_MODPRI_TIMING, that the various timing modules are now loaded at. This
now occurs before loading other resource modules, such that the timing source
is guaranteed to be set prior to resolving the timing source dependencies.
(closes issue ASTERISK-17474)
Reporter: Luke H
Tested by: Luke H, Vladimir Mikhelson, zzsurf, Wes Van Tlghem, elguero, Thomas Arimont
Patches:
asterisk-17474-dahdi_timing-infinite-wait-fix_v3_branch-1.8.diff uploaded by elguero (License #5026)
asterisk-17474-dahdi_timing-infinite-wait-fix_v3_branch-10.diff uploaded by elguero (License #5026)
asterisk-17474-dahdi_timing-infinite-wait-fix_v3.diff uploaded by elguero (License #5026)
Review: https://reviewboard.asterisk.org/r/1578/
........
Merged revisions 349194 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 349195 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@349196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
The function ast_srtp_protect used a common buffer for both SRTP and SRTCP
packets. Since this function can be called from multiple threads for the same
SRTP session (scheduler for SRTCP and channel for SRTP) it was possible for the
packets to become corrupted as the buffer was used by both threads
simultaneously.
This patch adds a separate buffer for SRTCP packets to avoid the problem.
(closes issue ASTERISK-18889, Reported/patch by Daniel Collins)
........
Merged revisions 347995 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 347996 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@348567 65c4cc65-6c06-0410-ace0-fbb531ad65f3
The STUN socket must remain open between polls or the external address
seen by the STUN server is likely to change. However, if the STUN request
poll fails then the STUN server address needs to be re-resolved and the
STUN socket needs to be closed and reopened.
* Re-resolve the STUN server address and create a new socket if the STUN
request poll fails.
* Fix ast_stun_request() return value consistency.
* Fix ast_stun_request() to check the received packet for expected message
type and transaction ID.
* Fix ast_stun_request() to read packets until timeout or an associated
response packet is found. The stun_purge_socket() hack is no longer
required.
* Reduce ast_stun_request() error messages to debug output.
* No longer pass in the destination address to ast_stun_request() if the
socket is already bound or connected to the destination.
(closes issue ASTERISK-18327)
Reported by: Wolfram Joost
Tested by: rmudgett
Review: https://reviewboard.asterisk.org/r/1595/
........
Merged revisions 346700 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 346701 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@346709 65c4cc65-6c06-0410-ace0-fbb531ad65f3
As a result of the fix for ASTERISK-18039, realtime caching MOH no longer
properly resumes playing back a file between different holds in the same call.
This is because scanning for new files causes the existing file array to be
emptied and we were just comparing that the saved pointer to the filename
matched the pointer to the filename in a particular position in the array. An
easy fix is to save the filename instead of a pointer to it and then do a
strcmp instead of comparing the addresses.
(closes issue ASTERISK-18912)
Review: https://reviewboard.asterisk.org/r/1596/
........
Merged revisions 346030 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 346031 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@346033 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Sequence number was handled as an unsigned integer (usually 32 bits I think, more
depending on the architecture) and was put into the rtp packet which is basically
just a bunch of bits using an or operation. Sequence number only has 16 bits
allocated to it in an RTP packet anyway, so it would add to the next field which
just happened to be the codec. This makes sure the sequence number is set to be
a 16 bit integer regardless of architecture (hopefully) and also makes it so the
incrementing of the sequence number does bitwise or at the peak of a 16 bit number
so that the value will be set back to 0 when going beyond 65535 anyway.
(closes issue ASTERISK-18291)
Reported by: Will Schick
Review: https://reviewboard.asterisk.org/r/1542/
........
Merged revisions 342602 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 342603 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@342604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
The fix for ASTERISK-12715 and ASTERISK-12685 added a check for the Park
application because the channel needed to be masqueraded to prevent a
crash. Since the Park application now always masquerades the channel into
the parking lot, the special check is no longer needed. The fix also
resulted in AGI exec Park attempting to double park the call and not honor
the Park application parameters.
* Removed no longer necessary call to ast_masq_park_call() by AGI exec for
the Park application. (Reverts -r146923)
* Fix Park application to only return 0 or -1. The AGI exec Park was
causing broken pipe error messages because the Park application returned 1
on successful park.
(closes issue ASTERISK-18737)
........
Merged revisions 341717 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 341718 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@341719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r340971 | kmoore | 2011-10-14 15:50:37 -0500 (Fri, 14 Oct 2011) | 15 lines
Merged revisions 340970 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r340970 | kmoore | 2011-10-14 15:49:39 -0500 (Fri, 14 Oct 2011) | 8 lines
Quiet RTCP Receiver Reports during fax transmission
RTCP is now disabled for "inactive" RTP audio streams during SIP T.38 sessions.
The ability to disable RTCP streams in res_rtp_asterisk was missing, so this
code was added to support the bug fix.
(closes issue ASTERISK-18400)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@340972 65c4cc65-6c06-0410-ace0-fbb531ad65f3
There is no documented reason to not add the query field to the varlist
returned by a realtime multi query, despite the config category being
set to its value. Of course, there is no documentation that the category
should be set to the value either. There is lots of no documentation
when it comes to realtime. But, other engines do not skip this field so
I am forcing this backend to follow the convention, because not doing so
is very silly.
........
Merged revisions 340662 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 340663 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@340665 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r340109 | mnicholson | 2011-10-10 09:15:41 -0500 (Mon, 10 Oct 2011) | 18 lines
Merged revisions 340108 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r340108 | mnicholson | 2011-10-10 09:14:48 -0500 (Mon, 10 Oct 2011) | 11 lines
Load the proper XML documentation when multiple modules document the same application.
This patch adds an optional "module" attribute to the XML documentation spec
that allows the documentation processor to match apps with identical names from
different modules to their documentation. This patch also fixes a number of
bugs with the documentation processor and should make it a little more
efficient. Support for multiple languages has also been properly implemented.
ASTERISK-18130
Review: https://reviewboard.asterisk.org/r/1485/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@340110 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Added func FAXOPT(faxdetect)=yes,cng,t38[,timeout]/no
to enable dialplan faxdetect allowing more flexibility.
as soon as a fax tone is detected the framehook is removed.
there is a penalty involved in running this framehook on
non G711 channels as they will be transcoded.
CNG tone is suppresed using the SQUELCH flag to allow
WaitForNoise to be run on the channel to detect Voice.
(Closes issue ASTERISK-18569)
Reported by: Myself
Reviewed by: Matthew Nicholson, Kevin Fleming
Review: https://reviewboard.asterisk.org/r/1116/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@339465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
........
r339463 | irroot | 2011-10-05 08:28:46 +0200 (Wed, 05 Oct 2011) | 9 lines
Only change the capabilities on the gateway when
the session is been destroyed there is still
a race condition that ends in a segfault.
if the caps are changed the logic in res_fax_spandsp
will run T30 code not gateway code to end the session.
this has been experienced on a "slower" under spec system.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@339464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r339298 | jrose | 2011-10-04 09:09:50 -0500 (Tue, 04 Oct 2011) | 19 lines
Merged revisions 339297 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r339297 | jrose | 2011-10-04 09:01:05 -0500 (Tue, 04 Oct 2011) | 13 lines
Reverting revision 333265 due to component connection problems it introduces.
I'm going to attempt some generic res_jabber cleanup and come up with a new fix for this
problem, but first it seems prudent to remove this rather broad attempt to fix it and
instead approach this problem either from the same angle but looking only at canceling
(or possibly rescheduling) the send when we absolutely know it will cause a segfault
or, if that can't be easily accomplished, strictly from the devstate side of things.
Also, I'm pretty sure a lot of the code in res_jabber isn't thread safe.
(issue ASTERISK-18626)
(issue ASTERISK-18078)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@339315 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
........
r338950 | irroot | 2011-10-03 11:37:59 +0200 (Mon, 03 Oct 2011) | 14 lines
Fixup a race condition in res_fax.c where FAXOPT(gateway)=no will
turn off the gateway but the framehook is not destroyed.
this problem happens when a gateway is attempted in the dialplan and
the device is not available i may want to do fax to mail in the server
it will not be allowed.
instead of checking only AST_FAX_TECH_GATEWAY also check gateway_id
Reverts 338904
Fix some white space.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@338951 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
........
r338904 | irroot | 2011-10-02 16:17:32 +0200 (Sun, 02 Oct 2011) | 8 lines
Remove T38 Gateway capability when detaching framehook.
SET(FAXOPT(gateway)=no) does not remove the capability when
detaching the framehook.
small patch to fix this problem.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@338905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r337542 | irroot | 2011-09-22 13:44:22 +0200 (Thu, 22 Sep 2011) | 14 lines
Merged revisions 337541 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r337541 | irroot | 2011-09-22 13:39:49 +0200 (Thu, 22 Sep 2011) | 8 lines
Add warned to ast_srtp to prevent errors on each frame from libsrtp
The first 9 frames are not reported as some devices dont use srtp
from first frame these are suppresed.
the warning is then output only once every 100 frames.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@337543 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
........
r337178 | oej | 2011-09-21 10:51:41 +0200 (Ons, 21 Sep 2011) | 14 lines
Change strictrtp option to default to yes in the RTP module
Suggested by Kapejod on Facebook
Review: https://reviewboard.asterisk.org/r/1448/
(closes issue ASTERISK-18587)
Thanks for quick feedback to kpfleming and Tilghman
--Denna och nedanstående rader kommer inte med i loggmeddelandet--
M CHANGES
M configs/rtp.conf.sample
M res/res_rtp_asterisk.c
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@337179 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r336878 | russell | 2011-09-19 20:03:55 -0500 (Mon, 19 Sep 2011) | 43 lines
Merged revisions 336877 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r336877 | russell | 2011-09-19 19:56:20 -0500 (Mon, 19 Sep 2011) | 36 lines
Fix crashes in ast_rtcp_write().
This patch addresses crashes related to RTCP handling. The backtraces just
show a crash in ast_rtcp_write() where it appears that the RTP instance is no
longer valid. There is a race condition with scheduled RTCP transmissions and
the destruction of the RTP instance. This patch utilizes the fact that
ast_rtp_instance is a reference counted object and ensures that it will not get
destroyed while a reference is still around due to scheduled RTCP
transmissions.
RTCP transmissions are scheduled and executed from the chan_sip scheduler
context. This scheduler context is processed in the SIP monitor thread. The
destruction of an RTP instance occurs when the associated sip_pvt gets
destroyed (which happens when the sip_pvt reference count reaches 0). However,
the SIP monitor thread is not the only thread that can cause a sip_pvt to get
destroyed. The sip_hangup function, executed from a channel thread, also
decrements the reference count on a sip_pvt and could cause it to get
destroyed.
While this is being changed anyway, the patch also removes calling
ast_sched_del() from within the RTCP scheduler callback. It's not helpful.
Simply returning 0 prevents the callback from being rescheduled.
(closes issue ASTERISK-18570)
Related issues that look like they are the same problem:
(issue ASTERISK-17560)
(issue ASTERISK-15406)
(issue ASTERISK-15257)
(issue ASTERISK-13334)
(issue ASTERISK-9977)
(issue ASTERISK-9716)
Review: https://reviewboard.asterisk.org/r/1444/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@336879 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r335510 | russell | 2011-09-13 02:24:34 -0500 (Tue, 13 Sep 2011) | 22 lines
Merged revisions 335497 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r335497 | russell | 2011-09-13 02:11:36 -0500 (Tue, 13 Sep 2011) | 15 lines
Fix a crash in res_ais.
This patch resolves a crash observed in a load testing environment that
involved the use of the res_ais module. I observed some crashes where
the event delivery callback would get called, but the length parameter
incidcating how much data there was to read was 0. The code assumed
(with good reason I would think) that if this callback got called, there
was an event available to read. However, if the rare case that there's
nothing there, catch it and return instead of blowing up.
More specifically, the change always ensure that the size of the received
event in the cluster is always big enough to be a real ast_event.
Review: https://reviewboard.asterisk.org/r/1423/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@335511 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r334357 | rmudgett | 2011-09-02 16:08:16 -0500 (Fri, 02 Sep 2011) | 26 lines
Merged revisions 334355 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r334355 | rmudgett | 2011-09-02 15:59:49 -0500 (Fri, 02 Sep 2011) | 19 lines
MusicOnHold has extra unref which may lead to memory corruption and crash.
The problem happens when a call is disconnected and you had started a MOH
class that does not use the files mode. If you define REF_DEBUG and
recreate the problem, it will announce itself with the following warning:
Attempt to unref mohclass 0xb70722e0 (default) when only 1 ref remained,
and class is still in a container!
* Fixed moh_alloc() and moh_release() functions not handling the
state->class reference consistently.
(closes issue ASTERISK-18346)
Reported by: Mark Murawski
Patches:
jira_asterisk_18346_v1.8.patch (license #5621) patch uploaded by rmudgett
Tested by: rmudgett, Mark Murawski
Review: https://reviewboard.asterisk.org/r/1404/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@334358 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r334230 | tilghman | 2011-09-01 12:30:19 -0500 (Thu, 01 Sep 2011) | 25 lines
Merged revisions 334229 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r334229 | tilghman | 2011-09-01 12:28:09 -0500 (Thu, 01 Sep 2011) | 18 lines
Create a local alias for ast_odbc_clear_cache.
As a function pointer, the reference has to be resolved at load time
irrespective of the RTLD_LAZY flag. Creating a local alias solves
this problem, because the structure is initialized with that local
function pointer, while the actual function can remain lazily linked
until runtime.
The reason why this is important is because we lazily load function
references during the module loading process, in order to obtain
priority values for each module, ensuring that modules are loaded in
the correct order. Previous to this change, when this module was
initially loaded, the module loader would emit a symbol resolution
error, because of the above requirement.
Closes ASTERISK-18399 (reported by Mikael Carlsson, fix suggested by
Walter Doekes, patch by me)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@334231 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r333410 | jrose | 2011-08-26 11:28:03 -0500 (Fri, 26 Aug 2011) | 19 lines
Merged revisions 333378 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r333378 | jrose | 2011-08-26 11:19:07 -0500 (Fri, 26 Aug 2011) | 13 lines
[patch] Buddies are always auto-registered when processing the roster
Reporter said autoregister flag was ignored for registering 'buddies' which
had a subscription to us. Verified that this was the case and observed how
the patch addressed this and made sure it didn't break anything.
(closes issue ASTERISK-14233)
Reported by: Simon Arlott
Patches:
asterisk-0015229.patch (license #5756) patch uploaded by Simon Arlott
Tested by: Jonathan Rose
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@333428 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r333266 | jrose | 2011-08-25 14:00:05 -0500 (Thu, 25 Aug 2011) | 20 lines
Merged revisions 333265 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r333265 | jrose | 2011-08-25 13:47:42 -0500 (Thu, 25 Aug 2011) | 14 lines
Segfault when publishing device states via XMPP and not connected
When using publishing device state with res_jabber, Asterisk will attempt
to send a device state using the unconnected client using iks_send_raw
and crash. This patch checks the validity of the connection before
attempting to send the device state.
(closes issue ASTERISK-18078)
Reported by: Michael L. Young
Patches:
res_jabber-segfault-pubsub-not-connected2.patch (license #5026) patch uploaded by Michael L. Young
Tested by: Jonathan Rose
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@333276 65c4cc65-6c06-0410-ace0-fbb531ad65f3
* Fixed memory leak of vars in ldap_loadentry().
* Fixed potential NULL ptr dereference of vars in ldap_loadentry().
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@332615 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r332321 | twilson | 2011-08-17 13:09:49 -0500 (Wed, 17 Aug 2011) | 17 lines
Merged revisions 332320 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r332320 | twilson | 2011-08-17 12:35:27 -0500 (Wed, 17 Aug 2011) | 10 lines
Don't read from a disarmed or invalid timerfd
Numerous isues have been reported for deadlocks that are caused by
a blocking read in res_timing_timerfd on a file descriptor that will
never be written to. This patch adds some checks to make sure that
the timerfd is both valid and armed before calling read().
Should fix: ASTERISK-18142, ASTERISK-18166, ASTERISK-18197, AST-486,
AST-495, AST-507 and possibly others.
Review: https://reviewboard.asterisk.org/r/1361/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@332337 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/10
................
r331039 | kmoore | 2011-08-08 15:53:30 -0500 (Mon, 08 Aug 2011) | 18 lines
Merged revisions 331038 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r331038 | kmoore | 2011-08-08 15:52:45 -0500 (Mon, 08 Aug 2011) | 11 lines
In-queue MOH stops after a periodic announcement
If the seek value is past the end of file when resuming G.722 MOH, MOH will
cease to function for the duration of the MOH session through all starts and
stops until saved state is cleared. Adjusting the code to guarantee a single
valid read (which is already assumed) fixes the bug.
(closes issue ASTERISK-18077)
Review: https://reviewboard.asterisk.org/r/1328/
Tested-by: Jonathan Rose <jrose@digium.com>
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@331040 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.10
................
r328824 | kmoore | 2011-07-19 13:05:21 -0500 (Tue, 19 Jul 2011) | 18 lines
Merged revisions 328823 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r328823 | kmoore | 2011-07-19 12:57:18 -0500 (Tue, 19 Jul 2011) | 11 lines
RTP bridge away with inband DTMF and feature detection
When deciding whether Asterisk was allowed to bridge the call away from the
core, chan_sip did not take into account the usage of features on dialed
channels that require monitoring of DTMF on channels utilizing inband DTMF.
This would cause Asterisk to allow the call to be locally or remotely bridged,
preventing access to the data required to detect activations of such features.
(closes 17237)
Review: https://reviewboard.asterisk.org/r/1302/
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@328825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
generating party time to send its own T.38 reinvite.
Also don't forward frames through the gateway if we are negotiating T.38.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@327511 65c4cc65-6c06-0410-ace0-fbb531ad65f3
It was inconsistent to have the silk and celt format attribute
modules in the format file interpreter folder.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@327116 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This patch adds pass-through support for CELT. CELT
formats are defined in codecs.conf and can be configured
to any sample rate a CELT endpoint supports. This patch also
addresses a crash in channel.c resulting from a frame list being
freed incorrectly. This crash was discovered while testing a CELT
translator which had to split encoded audio into multiple frames.
The codec translator is not a part of this patch, but may be
contributed in the future.
Review: https://reviewboard.asterisk.org/r/1294/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@326855 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r326689 | jrose | 2011-07-07 11:04:51 -0500 (Thu, 07 Jul 2011) | 10 lines
res_odbc patch by tilghman to fix integers with null values
Addresses some improper sql statements in res_odbc that would cause an update to fail on
realtime peers due to trying to set as "(NULL)" rather than an actual NULL.
(closes issue #1922STERISK-17791)
Reported by: marcelloceschia
Patches:
20110505__issue19223.diff.txt uploaded by tilghman (license 14)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@326694 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r326484 | dvossel | 2011-07-06 10:26:49 -0500 (Wed, 06 Jul 2011) | 10 lines
Reverts fix for timerfd locking issue.
jrose discovered a performance issue with this
fix that prevents his analog phones from working
when using timerfd as a timing source. Until
it is understood what is causing this performance
problem, this patch is being reverted.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@326485 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r326411 | tilghman | 2011-07-05 17:08:29 -0500 (Tue, 05 Jul 2011) | 14 lines
Add the attribute "type" to each "<use>" for menuselect.
This matters only when autoconf fails to detect that weak linking is supported.
External optional dependencies will become optional in both cases, as they are
removed at compile time when not detected. However, runtime-optional modules
are made mandatory when weak linking is not found. This change affects only
the external optional dependencies; previously, they were incorrectly required
when weak linking support was not detected.
Patches:
20110702__issue18062__asterisk_trunk.diff.txt by tilghman (License #5003)
Tested by: iasgoscouk
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@326412 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r325821 | jrose | 2011-06-30 14:17:32 -0500 (Thu, 30 Jun 2011) | 10 lines
Fixes an issue with Music on Hold classes losing files in playlist when realtime is used.
The bug occurs rather intermittently and I relied on the reporters to test the patch.
After a sanity check and some testing, I'm giving it an OK.
(closes issue ASTERISK-17875)
Reported by: David Cunningham
Patches:
res_musiconhold.c.mohrt17875_v1 uploaded by Igor Goncharovsky (license #5009)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@325864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
terminal). Can be enabled on a channel by setting FAXOPT(gateway)=yes in the
dialplan.
Big thanks to irroot for porting this code to use the framehooks api.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@325816 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Asterisk now has protocol independent support for processing text messages
outside of a call. Messages are routed through the Asterisk dialplan.
SIP MESSAGE and XMPP are currently supported. There are options in sip.conf
and jabber.conf that enable these features.
There is a new application, MessageSend(). There are two new functions,
MESSAGE() and MESSAGE_DATA(). Documentation will be available on
the project wiki, wiki.asterisk.org.
Thanks to Terry Wilson for the assistance with development and to David Vossel
for helping with some additional testing.
Review: https://reviewboard.asterisk.org/r/1042/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@321546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
state of the channel reverts to unknown this should be rejected.
this is important for negotiating T.38 gateway see #13405
This patch adds a option T38_REJECTED that behaves as T38_DISABLED except it reports state rejected.
Trivial Change to res_fax to honnor UNAVAILABLE and REJECTED states.
(closes issue #18889)
Reported by: irroot
Tested by: irroot, darkbasic, mnicholson
Review: https://reviewboard.asterisk.org/r/1115
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@319087 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r318919 | bbryant | 2011-05-13 14:04:50 -0400 (Fri, 13 May 2011) | 10 lines
This patch fixes an issue with SRTP which makes HOLD/UNHOLD impossible when too
much time has passed between sending audio.
(closes issue #18206)
Reported by: bernhardsi
Patches:
res_srtp_unhold.patch uploaded by bernhards (license 1138)
Tested by: bernhards, notthematrix
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@318920 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r318351 | rmudgett | 2011-05-09 18:15:32 -0500 (Mon, 09 May 2011) | 6 lines
Remove references to res_features and its export file.
The contents of res/res_features.c was moved to into main/features.c
awhile ago. There is no longer any need for the res/Makefile to reference
res_features or the res_features linker exports file to exist.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@318352 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314780 | russell | 2011-04-22 09:02:23 -0500 (Fri, 22 Apr 2011) | 18 lines
Merged revisions 314778 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
........
r314778 | russell | 2011-04-22 08:58:03 -0500 (Fri, 22 Apr 2011) | 11 lines
Initialize buffers in getvar and getvarfull.
Initialize the buffers used to hold the result from GET VARIABLE or
GET VARIABLE FULL. The bug report shows func_read returning garbage in
the result. It assumed that the buffer passed in was initialized, like many
other functions do. In the more common code path (through the dialplan), it
is initialized, so just initialize it here too.
(closes issue #19050)
Reported by: johnz
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@314781 65c4cc65-6c06-0410-ace0-fbb531ad65f3