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