[SR-Users] FS#213 - pua_reginfo: registration state may be incorrect when unregistering single contact

Gnaneshwar Gatla GGatla at InTouchHealth.com
Sat Jun 2 00:02:41 CEST 2012


I'm working with pua_reginfo module, I thought everything was working fine.
But FS#213, is not resolved yet.

@@ -118,9 +111,10 @@ str* build_reginfo_full(urecord_t * record, str uri, ucontact_t* c, int type) {
                                               xmlNewProp(contact_node, BAD_CAST "id", BAD_CAST buf);
                                               /* Check, if this is the modified contact: */
                                               if (ptr == c) {
-                                                              if ((type & UL_CONTACT_INSERT) || (type & UL_CONTACT_UPDATE))
+                                                             if ((type & UL_CONTACT_INSERT) || (type & UL_CONTACT_UPDATE)) {
+                                                                             reg_active = 1;
                                                                               xmlNewProp(contact_node, BAD_CAST "state", BAD_CAST "active");
-                                                              else
+                                                             } else
                                                                               xmlNewProp(contact_node, BAD_CAST "state", BAD_CAST "terminated");
                                                               if (type & UL_CONTACT_INSERT) xmlNewProp(contact_node, BAD_CAST "event", BAD_CAST "created");
                                                               else if (type & UL_CONTACT_UPDATE) xmlNewProp(contact_node, BAD_CAST "event", BAD_CAST "refreshed");
from the above code in pua_reginfo_fix_registration_state.patch
If(ptr == c) returns false and the server keeps the state to "active" and the reg_info is never set to refreshed/terminated.

I was wondering if I could use the following instead.
If(strcmp(ptr->c, c->c)), which would compare the contact string, if equal the reg_info is update in the presentity.

Regards
Gnaneshwar Gatla | InTouch Health | Software Developer
6330 Hollister Ave. Goleta CA, 93117 | P: 805.562.8686 ext: 199
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20120601/f287bd34/attachment.htm>


More information about the sr-users mailing list