[SR-Users] unregister user when kamailio looses TCP connection.

Daniel-Constantin Mierla miconda at gmail.com
Thu Sep 5 09:31:27 CEST 2013


Make the patch for master branch, 4.0 doesn't take any new feature and I 
applied the patches to master branch anyhow.

Also, do not forget the patch for xml documentation.

Cheers,
Daniel

On 9/5/13 9:27 AM, Vitaliy Aleksandrov wrote:
> This patch has a bug which leads to false contact removal.
>
> This happens when UA reconnects to a proxy from the same src port and 
> sends new REGISTER with the same Contact. In that case kamailio 
> updates an existing contact and I forgot to update tcp connection id 
> in the ucontact_t object.
>
> I've fixed this bug in my production system (kamailio-3.2) and it 
> works well.
> The patch for 4.0.3 will be ready tonight.
>> Hello,
>>
>> I applied your patches with some changes. There is no need to store 
>> tcp connection id in other structure in the core, it is stored in 
>> msg->rcv.proto_reserved1.
>>
>> You have to add the documentation for the new usrloc parameter, in 
>> xml files from modules/usrloc/doc/ - send over the patch and I will 
>> commit it as well.
>>
>> Cheers,
>> Daniel
>>
>> On 8/29/13 12:47 PM, Vitaliy Aleksandrov wrote:
>>> Thanks community for all replies.
>>>
>>> I did the second try. Result is in the attachment.
>>>
>>> This time a did it in the way proposed by Daniel-Constantin Mierla.
>>> All job is done in timer process when it iterates through all 
>>> registrations looking for expired ones.
>>>
>>> It works for all database modes except DB_ONLY.
>>>
>>> I'm not sure about tcpconn_get() / tcpconn_put() functions. 
>>> tcpconn_get() increments ref counter, but there are several function 
>>> to decrement it: tcpconn_put(), tcpconn_chld_put() and 
>>> atomic_dec_and_test(). When I was looking for examples in other 
>>> modules I saw that tcp_read.c uses tcpconn_chld_put(), but forward.h 
>>> and msg_translator.c uses only tcpconn_get() without decrementing 
>>> ref counter at all.
>>>
>>> It would be great if somebody more experienced shed some light on this.
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>> sr-users at lists.sip-router.org
>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>> -- 
>> Daniel-Constantin Mierla -http://www.asipto.com
>> http://twitter.com/#!/miconda  -http://www.linkedin.com/in/miconda
>> Kamailio Advanced Trainings - Berlin, Oct 21-24; Miami, Nov 11-13, 2013
>>    - more details about Kamailio trainings athttp://www.asipto.com  -
>
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio Advanced Trainings - Berlin, Oct 21-24; Miami, Nov 11-13, 2013
   - more details about Kamailio trainings at http://www.asipto.com -

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20130905/dc078002/attachment.html>


More information about the sr-users mailing list