Summary:ASTERISK-11352: DIAL option 'T' still has a bad behaviour
Reporter:Sergey Tamkovich (sergee)Labels:
Date Opened:2008-02-01 02:17:31.000-0600Date Closed:2008-06-13 11:39:17
Versions:Frequency of
Description:This is a reminder to myself and to anybody who is interested.

we fixed bugs 7904, 9565, 10198, 10897 only for 't' option. 'T' option still has a security issues and should be fixed.


here is a scenario:

A calls B
A transfers B to C

in the resulting call B will have transfer capabilities, even if option 't' wasn't set. This happens because B is masqaraded as A and inherits all his properties.
Comments:By: Terry Wilson (twilson) 2008-02-01 12:06:25.000-0600

I've got an idea to knock out this class of bugs.  I'll see if I can get it done quickly.

By: jmls (jmls) 2008-05-03 14:21:18

any luck ?

By: Terry Wilson (twilson) 2008-05-28 14:45:18

No luck yet.  Ran into a bunch of other issues.  Taking another look at it--harder to fix than it sounded.

By: Terry Wilson (twilson) 2008-05-28 17:50:24

For anyone else and just to document, this only actually happens if you do an asterisk built-in attended transfer--it doesn't happen with blind transfer or SIP native transfers, etc.

By: David Woolley (davidw) 2008-05-29 04:28:25

I think it is important to note that this item actually includes ASTERISK-9286.  Currently that is only indicated by the relationship, not by a restatement of the relevant parts of ASTERISK-9286. (E.g. comment 87843 refers to "this [issue]", when they actually only mean the original scope, not the scope after the related issues were merged.)

Our actual interest in this that, because the unpark code effectively forces Tt to be set on unparked calls, unparked calls are not eligible for SIP re-invites, or other RTP path optimisation.

Maybe "duplicate" is the best that Mantis can do, but it doesn't really describe the true status of ASTERISK-9286.

By: Digium Subversion (svnbot) 2008-06-13 11:22:22

Repository: asterisk
Revision: 122589

U   branches/1.4/apps/app_dial.c
U   branches/1.4/res/res_features.c

r122589 | twilson | 2008-06-13 11:22:21 -0500 (Fri, 13 Jun 2008) | 7 lines

This should fix the behavior of the 'T' dial feature being passed incorrectly to the transferee when builtin_atxfers are used.
Also, doing a builtin_atxfer to parking was broken and is fixed here as well.

(closes issue ASTERISK-11352)
Reported by: sergee
Tested by: otherwiseguy



By: Digium Subversion (svnbot) 2008-06-13 11:39:16

Repository: asterisk
Revision: 122590

_U  team/murf/CDRfix4/
U   team/murf/CDRfix4/CHANGES
U   team/murf/CDRfix4/acinclude.m4
U   team/murf/CDRfix4/apps/app_chanspy.c
A   team/murf/CDRfix4/apps/app_dahdibarge.c
A   team/murf/CDRfix4/apps/app_dahdiras.c
A   team/murf/CDRfix4/apps/app_dahdiscan.c
U   team/murf/CDRfix4/apps/app_dial.c
U   team/murf/CDRfix4/apps/app_disa.c
U   team/murf/CDRfix4/apps/app_flash.c
U   team/murf/CDRfix4/apps/app_forkcdr.c
U   team/murf/CDRfix4/apps/app_getcpeid.c
U   team/murf/CDRfix4/apps/app_meetme.c
U   team/murf/CDRfix4/apps/app_page.c
U   team/murf/CDRfix4/apps/app_parkandannounce.c
U   team/murf/CDRfix4/apps/app_read.c
U   team/murf/CDRfix4/apps/app_rpt.c
D   team/murf/CDRfix4/apps/app_zapbarge.c
D   team/murf/CDRfix4/apps/app_zapras.c
D   team/murf/CDRfix4/apps/app_zapscan.c
U   team/murf/CDRfix4/build_tools/menuselect-deps.in
A   team/murf/CDRfix4/channels/chan_dahdi.c
U   team/murf/CDRfix4/channels/chan_iax2.c
U   team/murf/CDRfix4/channels/chan_mgcp.c
U   team/murf/CDRfix4/channels/chan_misdn.c
D   team/murf/CDRfix4/channels/chan_zap.c
A   team/murf/CDRfix4/codecs/codec_dahdi.c
D   team/murf/CDRfix4/codecs/codec_zap.c
U   team/murf/CDRfix4/configure
U   team/murf/CDRfix4/configure.ac
U   team/murf/CDRfix4/contrib/utils/zones2indications.c
U   team/murf/CDRfix4/funcs/func_cdr.c
U   team/murf/CDRfix4/funcs/func_channel.c
U   team/murf/CDRfix4/include/asterisk/autoconfig.h.in
U   team/murf/CDRfix4/include/asterisk/cdr.h
U   team/murf/CDRfix4/include/asterisk/channel.h
A   team/murf/CDRfix4/include/asterisk/dahdi_compat.h
U   team/murf/CDRfix4/include/asterisk/indications.h
U   team/murf/CDRfix4/include/asterisk/options.h
U   team/murf/CDRfix4/main/app.c
U   team/murf/CDRfix4/main/asterisk.c
U   team/murf/CDRfix4/main/cdr.c
U   team/murf/CDRfix4/main/channel.c
U   team/murf/CDRfix4/main/file.c
U   team/murf/CDRfix4/main/indications.c
U   team/murf/CDRfix4/main/loader.c
U   team/murf/CDRfix4/makeopts.in
U   team/murf/CDRfix4/pbx/pbx_config.c
U   team/murf/CDRfix4/res/res_features.c
U   team/murf/CDRfix4/res/res_indications.c
U   team/murf/CDRfix4/res/res_musiconhold.c
U   team/murf/CDRfix4/res/snmp/agent.c

r122590 | murf | 2008-06-13 11:39:02 -0500 (Fri, 13 Jun 2008) | 108 lines

Merged revisions 122046,122127,122130,122137,122208,122259,122311,122314,122589 via svnmerge from

r122046 | murf | 2008-06-12 07:47:34 -0600 (Thu, 12 Jun 2008) | 37 lines

(closes issue ASTERISK-10252)
Reported by: arkadia
Tested by: murf, arkadia

Options added to forkCDR() app and the CDR() func to
remove some roadblocks for CDR applications.

The "show application ForkCDR" output was upgraded
to more fully explain the inner workings of forkCDR.

The A option was added to forkCDR to force the
CDR system to NOT change the disposition on the
original CDR, after the fork. This involves
ast_cdr_answer, _busy, _failed, and so on.

The T option was added to forkCDR to force
obedience of the cdr LOCKED flag in the
ast_cdr_end, all the disposition changing
funcs (ast_cdr_answer, etc), and in the
ast_cdr_setvar func.

The CHANGES file was updated to explain ALL
the new options added to satisfy this bug report
(and some requests made verbally and via
email, irc, etc, over the past months/year)

The 's' option was added to the CDR() func,
to force it to skip LOCKED cdr's in the

Again, the new options should be totally transparent
to existing apps! Current behavior of CDR,
forkCDR, and the rest of the CDR system should
not change one little bit. Until you add the
new options, at least!

r122127 | murf | 2008-06-12 08:51:44 -0600 (Thu, 12 Jun 2008) | 1 line

Arkadia tried to warn me, but the code added to ast_cdr_busy, _failed, and _noanswer was redundant. Didn't spot it until I was resolving conflicts in trunk. Ugh. Redundant code removed. It wasn't harmful. Just dumb.
r122130 | tilghman | 2008-06-12 09:11:30 -0600 (Thu, 12 Jun 2008) | 4 lines

Occasionally, the alertpipe loses its nonblocking status, so detect and correct
that situation before it causes a deadlock.  (Reported and tested by ctooley
via #asterisk-dev)

r122137 | tilghman | 2008-06-12 09:18:39 -0600 (Thu, 12 Jun 2008) | 8 lines

Flipflop the sections for two options, since the section for 'X' (exit context)
may otherwise absorb keypresses meant for 's' (admin/user menu).
(closes issue ASTERISK-12175)
Reported by: blitzrage
      20080611__bug12836.diff.txt uploaded by Corydon76 (license 14)
Tested by: blitzrage

r122208 | jpeeler | 2008-06-12 09:46:08 -0600 (Thu, 12 Jun 2008) | 5 lines

(closes issue ASTERISK-11622)
Reported by: davidw
Patch by: Corydon76, modified by me to work properly with ParkAndAnnounce app

r122259 | russell | 2008-06-12 12:22:44 -0600 (Thu, 12 Jun 2008) | 3 lines

Fix some race conditions that cause ast_assert() to report that chan_iax2 tried
to remove an entry that wasn't in the scheduler

r122311 | mmichelson | 2008-06-12 12:50:58 -0600 (Thu, 12 Jun 2008) | 9 lines

Properly play a holdtime message if the announce-holdtime option is
set to "once."

(closes issue ASTERISK-12180)
Reported by: ramonpeek
     patch001.diff uploaded by ramonpeek (license 266)

r122314 | jpeeler | 2008-06-12 13:08:20 -0600 (Thu, 12 Jun 2008) | 2 lines

Adds DAHDI support alongside Zaptel. DAHDI usage favored, but all Zap stuff should continue working. Release announcement to follow.

r122589 | twilson | 2008-06-13 10:29:07 -0600 (Fri, 13 Jun 2008) | 7 lines

This should fix the behavior of the 'T' dial feature being passed incorrectly to the transferee when builtin_atxfers are used.
Also, doing a builtin_atxfer to parking was broken and is fixed here as well.

(closes issue ASTERISK-11352)
Reported by: sergee
Tested by: otherwiseguy