[Serdev] Re: Handling of early CANCELs - was Re: [Serusers] SER Nokia CANCEL Problem

Jiri Kuthan jiri at iptel.org
Thu Mar 29 20:19:33 CEST 2007


At 15:58 26/02/2007, Klaus Darilion wrote:
>FYI: This is the pragmatic approach how openser users handle the problem:
>
>1. drop the CANCEL if there is no corresponding INVITE transaction. The UAC must retransmit the CANCEL and meanwhile there should be the INVITE transaction. (since 1.0)
>
>if ( is_method("CANCEL") && !t_check_trans() ) {
>  # CANCEL without matching INVITE transaction, ignore!
>  # May happen if the INVITE is slower than the CANCEL.
>  # Ignore the CANCEL, as the client will retransmit it, and maybe
>  # the INVITE transaction is already created for the next CANCEL
>  xlog("L_WARN","$ci CANCEL without matching transaction ... ignore\n");
>  exit;
>}

which does not appear really reboot-safe to me. What it can lead to that ser reboot
affects pending calls in that cancels are never forwarded and ringing phones will
never stop ringing -- not very pleasant indeed, is it.

-jiri



--
Jiri Kuthan            http://iptel.org/~jiri/




More information about the sr-users mailing list