Previously local channels channel state never changed. This became problematic
when the state of the other side of the local channel was lost, for example
during a masquerade. Changing the state of the local channel allows for the
scenario to be detected when the channel state is set to ringing, but the peer
isn't ringing. The specific problem scenario is described in 164201. Although
this was noted on one of the issues, here is the tested dialplan verified to
work:
exten => 9700,1,Dial(Local/*9700@default&Local/#9700@default)
exten => *9700,1,Set(GLOBAL(TESTCHAN)=${CHANNEL:0:${MATH(${LEN(${CHANNEL})}-1):0:2}}1)
exten => *9700,n,wait(3) ;3 works, 1 did not
exten => *9700,n,Dial(SIP/5001)
exten => #9700,1,Wait(1) ;1 works, 3 did not
exten => #9700,n,ChannelRedirect(${TESTCHAN},parkedcalls,701,1)
(closes issue #14992)
Reported by: davidw
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@244785 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Changed after discussion on the -dev list about possible unnecessary build
failures, due to checkouts/untars causing these special source files to
possibly be newer than their resulting C files. This should additionally
ensure that nobody need learn about extra Makefile arguments to ensure the
proper files get rebuilt when changes are made to these special source files.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@242520 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Branch support, retains ABI, if backend CDR collector is adaptive then database
requires 'dnid' field to be added, otherwise no functional changes.
Reported by: alecdavis
Tested by: alecdavis
Patch
cdr_dnid.diff2.txt uploaded by alecdavis (license 585)
Review: https://reviewboard.asterisk.org/r/455/
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@242142 65c4cc65-6c06-0410-ace0-fbb531ad65f3
I should have taken a closer look at trunk/1.6.x, as this bug has already been
fixed in a much more simple manner, by just settings o->vars to NULL after the
ast_pbx_outgoing_* calls.
(issue #16554)
Reported by: mav3rick
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@241544 65c4cc65-6c06-0410-ace0-fbb531ad65f3
In pbx_spool, when we are freeing our 'outgoing' struct, we weren't deallocating
the ast_variable list we had built from SetVars in a call file. Adding a call to
ast_variables_destroy in our deallocation routine works, but only if the variables
have not already been passed into ast_pbx_outgoing_app() or _exten(), both of
which take care of destroying the variable list for us.
(closes issue #16554)
Reported by: mav3rick
Patches:
issue16554_20100119.patch uploaded by seanbright (license 71)
Tested by: mav3rick
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@241543 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Allows CDR variables added in cdr.c:set_one_cid to become visable during the call,
by executing ast_cdr_update() early in __ast_pbx_run.
Based on cdr_update.diff3.txt
(issue #16638)
Reported by: alecdavis
Patches:
cdr_update.diff3.txt uploaded by alecdavis (license 585)
Tested by: alecdavis
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@241458 65c4cc65-6c06-0410-ace0-fbb531ad65f3
One must always lock the agents list lock before the agent private. agent_read
locks the private immediately, so locking the agents list lock is not an
option (which is what agent_logoff requires). Because agent_read already
has access to the agent private all that is necessary is to do the required
hanging up that agent_logoff performed.
(closes issue #16321)
Reported by: valon24
Patches:
bug16321.patch uploaded by jpeeler (license 325)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@241227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
While reading through configuration files with the intent of returning their
full contents (comments specifically) we allocated some memory and then forgot
to free it. This doesn't fix 16554 but clears up a leak I had in the lab.
(issue #16554)
Reported by: mav3rick
Patches:
issue16554_20100118.patch uploaded by seanbright (license 71)
Tested by: seanbright
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@241015 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This patch updates the transmit_silence option to better document
why the option exists, and what it affects. Thanks to russell
for providing the verbage for this update.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@240891 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This is a possibility because our previous method assumed that no messages are
left in parallel, which is not a safe assumption. Due to the vmu structure
duplication, it was necessary to track in-process messages via a separate
structure. If at some point, we switch vmu to an ao2-reference-counted
structure, which would eliminate the prior noted duplication of structures,
then we could incorporate this new in-process structure directly into vmu.
(closes issue #16271)
Reported by: sohosys
Patches:
20100108__issue16271.diff.txt uploaded by tilghman (license 14)
20100108__issue16271__trunk.diff.txt uploaded by tilghman (license 14)
20100108__issue16271__1.6.0.diff.txt uploaded by tilghman (license 14)
Tested by: jsutton
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@240414 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This issue seems to have been exposed by the fix in 160390 whereby using a
masquerade prevented a crash. The new channel used in the masquerade was
not copying the macro information from the old channel.
(closes issue #15459)
Reported by: djrodman
Patches:
patch_15459.txt uploaded by mnick (license )
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@239838 65c4cc65-6c06-0410-ace0-fbb531ad65f3
asterisk.conf's 'transmit_silence' option existed before
this patch, but was limited to only generating silence
while recording and sending DTMF. Now enabling the
transmit_silence option generates silence during wait
times as well.
To achieve this, ast_safe_sleep has been modified to
generate silence anytime no other generators are present
and transmit_silence is enabled. Wait apps not using
ast_safe_sleep now generate silence when transmit_silence
is enabled as well.
(closes issue 0016524)
Reported by: kobaz
(closes issue 0016523)
Reported by: kobaz
Tested by: dvossel
Review: https://reviewboard.asterisk.org/r/456/
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@239718 65c4cc65-6c06-0410-ace0-fbb531ad65f3