[Asterisk-code-review] app dial: remove pending CONNECTED LINE updates before initi... (asterisk[13])
Richard Mudgett
asteriskteam at digium.com
Fri Jul 20 17:19:55 CDT 2018
Richard Mudgett has posted comments on this change. ( https://gerrit.asterisk.org/9558 )
Change subject: app_dial: remove pending CONNECTED LINE updates before initialize calls
......................................................................
Patch Set 1:
> > > This is a sledgehammer approach that just seems wrong.
> >
> > app_dial.c
> > The function dial_exec_full while loop through the list of dial
> > destinations and set CONNECTED LINE ID on outgoing channel
> > if OPT_FORCECLID ast_channel_set_connected_line with forced_clid
> > else ast_connected_line_copy_from_caller
> >
> > The function wait_for_answer calls ast_read on originating
> channel
> > and to process AST_CONTROL_CONNECTED_LINE calls
> > ast_indicate_data(in, AST_CONTROL_CONNECTED_LINE, f->data.ptr,
> > f->datalen);
> > on outgoing channel.
> > If this is pending AST_CONTROL_CONNECTED_LINE updates it could
> > happen before PJSIP forms INVITE message.
> > So CONNECTED LINE ID replaced by this frame data on outgoing
> > channel.
> >
> > The pending AST_CONTROL_CONNECTED_LINE update appears at early
> > stage on Local channel ';2' for attandend transfer.
> > core_unreal.c
> > The function unreal_colp_redirect_indicate on AST_CONTROL_CONNECTED_LINE
> > calls ast_connected_line_copy_to_caller where dst='Local/****;2'
> > and src 'Local/****;1'
> > and then build and queue frame AST_CONTROL_CONNECTED_LINE to
> > 'Local/****;2'
>
> I've asked to see the logs demonstrating this on ASTERISK-27980
You may simply need make sure that the ast_call() channel technology specific function completes before returning for PJSIP channels. chan_pjsip.c:chan_pjsip_call() change ast_sip_push_task() to ast_ast_sip_push_task_wait_serializer() to avoid the race condition of the connected line information being updated before the INVITE goes out.
--
To view, visit https://gerrit.asterisk.org/9558
To unsubscribe, or for help writing mail filters, visit https://gerrit.asterisk.org/settings
Gerrit-Project: asterisk
Gerrit-Branch: 13
Gerrit-MessageType: comment
Gerrit-Change-Id: I346652661949b6611c23e431ede0dbea1be3017a
Gerrit-Change-Number: 9558
Gerrit-PatchSet: 1
Gerrit-Owner: Alexei Gradinari <alex2grad at gmail.com>
Gerrit-Reviewer: Alexei Gradinari <alex2grad at gmail.com>
Gerrit-Reviewer: Jenkins2
Gerrit-Reviewer: Richard Mudgett <rmudgett at digium.com>
Gerrit-Comment-Date: Fri, 20 Jul 2018 22:19:55 +0000
Gerrit-HasComments: No
Gerrit-HasLabels: No
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20180720/caf88f39/attachment-0001.html>
More information about the asterisk-code-review
mailing list