[Serdev] TM module bug (was cpl-c bug?)
Richard
mypop3mail at yahoo.com
Wed Aug 4 21:59:15 UTC 2004
It looks like t_pick_branch() in modules/tm/t_reply.c
picks the branch with picked code 408 and send it to
cpl-c callback function.
In another case where a 487 is generated from 408, it
has this debug msg "487 came for a timed-out branch".
So why do we need to pick the lowest code between the
new_code 487 and branch code 408 which is not much
useful and not right after forking to the second
phone?
--- Richard <mypop3mail at yahoo.com> wrote:
> So is there a way to tell a 487 is from a user
> cancelling the call which is final reply, OR it is a
> side effect from 408 (request timeout) canceling a
> branch?
>
>
> --- Richard <mypop3mail at yahoo.com> wrote:
>
> > Hi,
> >
> > I did a little bit troubleshooting. It looks like
> > that
> > the problem is in tm module. Somehow 487 is not
> > considered the final reply (mabye because 487 is
> > used
> > to cancel branch?). Anyway, the result is that 487
> > is
> > ignore by tm module and the old 408 status is used
> > to
> > call cpl-c callback. The ser log is in the
> original
> > message.
> >
> > Thanks,
> > Richard
> >
> > --- Richard <mypop3mail at yahoo.com> wrote:
> >
> > > Hi,
> > >
> > > I have a cpl script to do serial forking. If
> Phone
> > A
> > > doesn't answer, it goes to Phone B, then Phone
> C.
> > > When
> > > I cancel the call before the Phone B is picked
> up
> > > and
> > > after Phone A doesn't answer. The cpl script
> > doesn't
> > > seems to get the right status number.
> > >
> > > The following ser log shows status is 487. But
> the
> > > cpl-c gets a final code 408. I am not sure if it
> > is
> > > from the Phone A no answer. Anyway, the result
> is
> > > the
> > > call is forwarded to Phone C even after the
> caller
> > > hangs up.
> > >
> > > Any suggestion?
> > >
> > > Thanks,
> > > Richard
> > >
> > > 0(2702) SIP Reply (status):
> > > 0(2702) version: <SIP/2.0>
> > > 0(2702) status: <487>
> > > 0(2702) reason: <Request Cancelled>
> > > 0(2702) parse_headers: flags=1
> > > 0(2702) Found param type 232, <branch> =
> > > <z9hG4bKc29d.d5e40b56.1>; state=9
> > > 0(2702) parse_via: next_via
> > > 0(2702) Found param type 238, <x-ds0num> =
> > > <ISDN-VOICE 0/0:DS1 23:DS0>; state=5
> > > 0(2702) Found param type 232, <branch> =
> > > <z9hG4bKC9D>; state=16
> > > 0(2702) end of header reached, state=5
> > > 0(2702) parse_headers: Via found, flags=1
> > > 0(2702) parse_headers: this is the first via
> > > 0(2702) After parse_msg...
> > > 0(2702) forward_reply: found module tm, passing
> > > reply
> > > to it
> > > 0(2702) DEBUG: t_check: msg id=528 global
> id=527
> > T
> > > start=0xffffffff
> > > 0(2702) parse_headers: flags=17
> > > 0(2702) DEBUG: add_param: tag=62C39F1-14C0
> > > 0(2702) end of header reached, state=29
> > > 0(2702) DEBUG: get_hdr_field: <To> [45];
> > > uri=[sip:3560076 at o-matrix.org]
> > > 0(2702) DEBUG: to body
> > [<sip:3560076 at o-matrix.org>]
> > > 0(2702) get_hdr_field: cseq <CSeq>: <101>
> > <INVITE>
> > > 0(2702) parse_headers: flags=4
> > > 0(2702) DEBUG: t_reply_matching: hash 55596
> label
> > > 1706053213 branch 1
> > > 0(2702) DEBUG: t_reply_matching: reply matched
> > > (T=0x402f7918)!
> > > 0(2702) DBG: trans=0x402f7918, callback type 2,
> > id
> > > 0
> > > entered
> > > 0(2702) parse_headers: flags=4
> > > 0(2702) DEBUG: t_check: msg id=528 global
> id=528
> > T
> > > end=0x402f7918
> > > 0(2702) DEBUG: reply_received: org. status
> > uas=183,
> > > uac[1]=183 local=0 is_invite=1)
> > > 0(2702) parse_headers: flags=4
> > > 0(2702) XLOG: xl_print_log: final buffer length
> > 41
> > > 0(2702) entering on reply route with SIP and
> SDP
> > > 0(2702) check_via_address(66.175.65.80,
> > > 66.175.65.80,
> > > 0)
> > > 0(2702) parse_headers: flags=64
> > > 0(2702) DEBUG: get_hdr_body : content_length=0
> > > 0(2702) found end of header
> > > 0(2702) XLOG: xl_print_log: final buffer length
> > 34
> > > 0(2702) with status 3xx/4xx for rtp proxy
> > > 0(2702) DEBUG: add_param: tag=62BFE20-180D
> > > 0(2702) end of header reached, state=29
> > > 0(2702) ->>>>>>>>> T_code=183, new_code=487
> > > 0(2702) DBG: trans=0x402f7918, callback type
> 64,
> > id
> > > 1
> > > entered
> > > 0(2702) DEBUG:cpl-c:negativ_reply:
> > > ------------------------------>
> > > ---------------------------------> negativ
> reply
> > > received
> > > 0(2702) DEBUG:cpl-c:failed_reply:final_reply:
> got
> > a
> > > final 408
> > > 0(2702) DEBUG:cpl_run_script: processing sub
> node
> > > 0(2702) DEBUG:cpl_run_script: processing
> location
> > > node
> > > 0(2702) DEBUG:cpl_run_script: processing proxy
> > node
> > >
> > >
> > >
> __________________________________________________
> > > Do You Yahoo!?
> > > Tired of spam? Yahoo! Mail has the best spam
> > > protection around
> > > http://mail.yahoo.com
> > >
> > > _______________________________________________
> > > Serdev mailing list
> > > serdev at lists.iptel.org
> > > http://lists.iptel.org/mailman/listinfo/serdev
> > >
> >
> >
> >
> >
> > __________________________________
> > Do you Yahoo!?
> > Yahoo! Mail - You care about security. So do we.
> > http://promotions.yahoo.com/new_mail
> >
> > _______________________________________________
> > Serdev mailing list
> > serdev at lists.iptel.org
> > http://lists.iptel.org/mailman/listinfo/serdev
> >
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam
> protection around
> http://mail.yahoo.com
>
> _______________________________________________
> Serdev mailing list
> serdev at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serdev
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
More information about the Serdev
mailing list