[reSIProcate] Session Timers bug: refresher="uas" is not respected by InviteSession
Byron Campen
bcampen at estacado.net
Mon Sep 24 15:47:15 CDT 2007
I'm going to take the opportunity to say I don't like the
"dynamic_cast<>(this)" technique of figuring out whether we're UAS or
UAC. How about we just put virtual bool isUAS() and virtual bool isUAC
() in InviteSession? (Or, we could create an enum and declare a
virtual UAType getUAType()) This would be more efficient, more terse,
and less fragile.
Aside from that, the patch looks sane to me (so far), but we need to
fix another part of the code (region around InviteSession.cxx:2217).
Best regards,
Byron Campen
> Hi,
>
>
>
> I’m seeing odd behaviour with session timers in the following
> case. I have a fix that I’ve tested out (see attached patch), but
> I’d like to run it by you (Scott) before committing it as I believe
> you’re more familiar with that code...
>
>
>
> (note that the default Session-Expires used in the following is 90
> seconds)
>
>
>
> DUM ------------------- proxy
>
>
>
> INVITE ----> (no refresher preference specified)
>
> <---- 100
>
> <---- 180
>
> <---- 200 (refresher=”uas”)
>
> ACK ---->
>
>
>
> … 45 seconds go by …
>
>
>
> <---- INVITE (refresher=”uas”)
>
> 200 ----> (refresher=”uas”)
>
>
>
> … 45 seconds go by …
>
>
>
> <---- INVITE (refresher=”uas”)
>
> INVITE ----> (refresher=”uac”)
>
>
>
> At this point, DUM is confused and thinks that it is the refresher,
> so we get the INVITE glare condition, and things go downhill from
> there. The problem seems to be logic in InviteSession that gets
> executed when it receives the first refresh after 45 seconds.
>
>
>
> I’ve tested out the attached patch, but please let me know if you
> think I’ve missed something…
>
>
>
> Thanks,
>
> - Jeremy -
>
>
>
>
>
> Jeremy Geras
>
> Software Developer
>
> CounterPath Solutions Inc.
>
> (formerly NewHeights Software Corp.)
>
>
>
>
>
>
>
>
>
>
>
>
>
> <session_timers_fix_sipfoundry.patch>
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel at resiprocate.org
> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20070924/f5653600/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2423 bytes
Desc: not available
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20070924/f5653600/attachment.bin>
More information about the resiprocate-devel
mailing list