Subject: [Sip] Processing REGISTER REQUESTS - STEP 6

From: [email-masked]
Date: Thu, 13 Jan 2005 16:00:33 +0530

Hello,
 
As per section 10.3 step 6 the bindings must not be removed if there is an incoming REGISTER request with...
 
CallID==One stored
CSeq==Same as stored
Contact : *
Expires: 0
 
But I found couple of Registrar implementations removing the bindings and sends 200Ok.It should have dropped the request.
 
Any thoughts or inputs??
 
Thanks
karthikeyan

_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: "Brett Tate" <[email-masked]>
Date: Thu, 13 Jan 2005 09:00:23 -0500

> As per section 10.3 step 6 the bindings 
> must not be removed if there is an 
> incoming REGISTER request with...
>
> CallID==One stored
> CSeq==Same as stored
> Contact : *
> Expires: 0
>
> But I found couple of Registrar implementations 
> removing the bindings and sends 200Ok.
> It should have dropped the request.
>
> Any thoughts or inputs??

The Registrar is compliant to RFC2543 and has not yet become compliant to
that particular "MUST" within RFC3261.

The situation can occur if the REGISTER forked.  If a merged request was
observed, a 482 response might be returned.  If the merge was not detected,
the REGISTER might trigger a second deletion and return a 200 response.
During a race condition with a new REGISTER, this second removal might be
problematic.  I do not know if RFC3261 discusses this race condition or
provides a solution.