[sr-dev] [kamailio/kamailio] Bugfix presence race 2 (#726)

Phil Lavin notifications at github.com
Wed Jul 27 16:07:27 CEST 2016


presentity: don't update terminated presentity entries in the database

- This fix is pull requested based on the stuff in pull request #724. That is because the stuff done here builds on that earlier work. #724 probably wants to be merged before this one.

- Fixes a race condition caused by, for example, the call being answered at almost exactly the same time as the caller cancels. This causes a terminated state to change back to completed. The dialog is then removed from the database and the presentity entry stays in place until it expires.
- This fix explicitly prevents terminated entries being updated as the state machine in RFC 4235 prohibits this behaviour.


You can view, comment on, or merge this pull request online at:

  https://github.com/kamailio/kamailio/pull/726

-- Commit Summary --

  * presence: Always check if a record exists for this dialog before inserting
  * presence: fix memory leak introduced by last commit
  * presence: log when presentity is deleted due to already existing
  * presentity: don't update terminated presentity entries in the database

-- File Changes --

    M modules/presence/presentity.c (297)

-- Patch Links --

https://github.com/kamailio/kamailio/pull/726.patch
https://github.com/kamailio/kamailio/pull/726.diff

---
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/726
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20160727/16de6999/attachment.html>


More information about the sr-dev mailing list