]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-3794 please repat all tests with this version
authorAnthony Minessale <anthm@freeswitch.org>
Mon, 16 Jan 2012 23:24:39 +0000 (17:24 -0600)
committerAnthony Minessale <anthm@freeswitch.org>
Mon, 16 Jan 2012 23:26:35 +0000 (17:26 -0600)
libs/sofia-sip/.update
libs/sofia-sip/libsofia-sip-ua/nua/nua_notifier.c
src/mod/endpoints/mod_sofia/sofia_presence.c
src/mod/endpoints/mod_sofia/sofia_reg.c

index 5c84424678e7c3ef55313e20e1b86740e4077653..692541efac1f0744abff753c981ae8e2cdc8925d 100644 (file)
@@ -1 +1 @@
-Mon Jan 16 12:47:24 CST 2012
+Mon Jan 16 17:26:19 CST 2012
index 923e8de416b577ef67d6d4dca8d2766f2e04a165..e7d3d7470f0b32097303ad792881761e6960bb6b 100644 (file)
@@ -428,12 +428,16 @@ int nua_subscribe_server_report(nua_server_request_t *sr, tagi_t const *tags)
  * @sa @RFC3265, #nua_i_subscribe, #nua_i_refer, NUTAG_ALLOW_EVENTS()
  */
 
+#if 0
 static int nua_notify_client_init(nua_client_request_t *cr,
                                  msg_t *, sip_t *,
                                  tagi_t const *tags);
+
+
 static int nua_notify_client_init_etag(nua_client_request_t *cr,
                                       msg_t *msg, sip_t *sip,
                                       tagi_t const *tags);
+
 static int nua_notify_client_request(nua_client_request_t *cr,
                                     msg_t *, sip_t *,
                                     tagi_t const *tags);
@@ -442,7 +446,8 @@ static int nua_notify_client_report(nua_client_request_t *cr,
                                    sip_t const *sip,
                                    nta_outgoing_t *orq,
                                    tagi_t const *tags);
-
+#endif
+#if 0
 static nua_client_methods_t const nua_notify_client_methods = {
   SIP_METHOD_NOTIFY,           /* crm_method, crm_method_name */
   0,                           /* crm_extra */
@@ -460,6 +465,25 @@ static nua_client_methods_t const nua_notify_client_methods = {
   nua_notify_client_report,    /* crm_report */
   NULL,                                /* crm_complete */
 };
+#endif
+
+nua_client_methods_t const nua_notify_client_methods = {
+  SIP_METHOD_NOTIFY,           /* crm_method, crm_method_name */
+  0,                           /* crm_extra */
+  {                            /* crm_flags */
+    /* create_dialog */ 1,
+    /* in_dialog */ 1,
+    /* target refresh */ 1
+  },
+  NULL,                                /* crm_template */
+  NULL,                /* crm_init */
+  NULL,        /* crm_send */
+  NULL,                                /* crm_check_restart */
+  NULL,                                /* crm_recv */
+  NULL,                                /* crm_preliminary */
+  NULL,                                /* crm_report */
+  NULL,                                /* crm_complete */
+};
 
 /**@internal Send NOTIFY. */
 int nua_stack_notify(nua_t *nua,
@@ -469,7 +493,7 @@ int nua_stack_notify(nua_t *nua,
 {
   return nua_client_create(nh, e, &nua_notify_client_methods, tags);
 }
-
+#if 0
 static int nua_notify_client_init(nua_client_request_t *cr,
                                  msg_t *msg, sip_t *sip,
                                  tagi_t const *tags)
@@ -715,7 +739,7 @@ int nua_notify_client_request(nua_client_request_t *cr,
 
   return nua_base_client_request(cr, msg, sip, tags);
 }
-
+#endif
 /** @NUA_EVENT nua_r_notify
  *
  * Response to an outgoing @b NOTIFY request.
@@ -747,7 +771,7 @@ int nua_notify_client_request(nua_client_request_t *cr,
  *
  * @END_NUA_EVENT
  */
-
+#if 0
 static int nua_notify_client_report(nua_client_request_t *cr,
                                    int status, char const *phrase,
                                    sip_t const *sip,
@@ -782,7 +806,7 @@ static int nua_notify_client_report(nua_client_request_t *cr,
 
   return 0;
 }
-
+#endif
 
 static void nua_notify_usage_refresh(nua_handle_t *nh,
                                     nua_dialog_state_t *ds,
index d1993767ad8cd3db800041208eb11d96fc1b43e6..cbcc177237288569b3e78f12f739798a3cc7e3e3 100644 (file)
@@ -1703,12 +1703,12 @@ static void send_presence_notify(sofia_profile_t *profile,
        cseq = sip_cseq_create(nh->nh_home, callsequence, SIP_METHOD_NOTIFY);
        nua_handle_bind(nh, &mod_sofia_globals.destroy_private);
        
-       if (exptime > 0) {
-               switch_snprintf(sstr, sizeof(sstr), "active;expires=%u", (unsigned) exptime);
-       } else {
-               switch_snprintf(sstr, sizeof(sstr), "terminated;reason=noresource");
+       if (exptime <= 0) {
+               exptime = 5;
        }
 
+       switch_snprintf(sstr, sizeof(sstr), "active;expires=%u", (unsigned) exptime);
+
     tmp = (char *)contact;
        contact = sofia_glue_get_url_from_contact(tmp, 0);
 
@@ -3701,6 +3701,8 @@ void sofia_presence_check_subscriptions(sofia_profile_t *profile, time_t now)
        char *sql;
 
        if (now) {
+
+#if 0 // I think actually doing it right and sending terminated notify breaks dumb phones.
                sql = switch_mprintf("select full_to, full_from, contact, expires, call_id, event, network_ip, network_port, "
                                                         "NULL as ct, NULL as pt "
                                                         " from sip_subscriptions where (expires = -1 or (expires > 0 and expires <= %ld)) and hostname='%q'",
@@ -3708,6 +3710,7 @@ void sofia_presence_check_subscriptions(sofia_profile_t *profile, time_t now)
 
                sofia_glue_execute_sql_callback(profile, profile->ireg_mutex, sql, sofia_presence_send_sql, profile);
                switch_safe_free(sql);
+#endif
 
                sql = switch_mprintf("delete from sip_subscriptions where (expires = -1 or (expires > 0 and expires <= %ld)) and hostname='%q'",
                                                         (long) now, mod_sofia_globals.hostname);
index 16b22a52c696bd808a88dff87755dd2402474c02..7403bc05b53922fc9c588834bdfd04e3ee1ffb82 100644 (file)
@@ -572,19 +572,6 @@ int sofia_reg_nat_callback(void *pArg, int argc, char **argv, char **columnNames
 }
 
 
-int sofia_sub_del_callback(void *pArg, int argc, char **argv, char **columnNames)
-{
-       sofia_profile_t *profile = (sofia_profile_t *) pArg;
-       nua_handle_t *nh;
-
-       if (argv[0]) {
-               if ((nh = nua_handle_by_call_id(profile->nua, argv[0]))) {
-                       nua_handle_destroy(nh);
-               }
-       }
-       return 0;
-}
-
 void sofia_reg_send_reboot(sofia_profile_t *profile, const char *user, const char *host, const char *contact, const char *user_agent,
                                                   const char *network_ip)
 {
@@ -760,18 +747,6 @@ void sofia_reg_check_expire(sofia_profile_t *profile, time_t now, int reboot)
 
        sofia_glue_actually_execute_sql(profile, sql, NULL);
        
-       if (now) {
-               switch_snprintf(sql, sizeof(sql),
-                                               "select call_id from sip_subscriptions where (expires = -1 or (expires > 0 and expires <= %ld)) and hostname='%s'", (long) now,
-                                               mod_sofia_globals.hostname);
-       } else {
-               switch_snprintfv(sql, sizeof(sql), "select sub_to_user,sub_to_host,call_id from sip_subscriptions where expires >= -1 and hostname='%q'", 
-                                               mod_sofia_globals.hostname);
-       }
-
-       sofia_glue_execute_sql_callback(profile, NULL, sql, sofia_sub_del_callback, profile);
-
-
        sofia_presence_check_subscriptions(profile, now);
 
        if (now) {
@@ -879,10 +854,6 @@ void sofia_reg_check_sync(sofia_profile_t *profile)
        switch_snprintfv(sql, sizeof(sql), "delete from sip_authentication where expires > 0 and hostname='%q'", mod_sofia_globals.hostname);
        sofia_glue_actually_execute_sql(profile, sql, NULL);
        
-       switch_snprintfv(sql, sizeof(sql), "select sub_to_user,sub_to_host,call_id from sip_subscriptions where expires >= -1 and hostname='%q'", 
-                                       mod_sofia_globals.hostname);
-       sofia_glue_execute_sql_callback(profile, NULL, sql, sofia_sub_del_callback, profile);
-
        switch_snprintfv(sql, sizeof(sql), "delete from sip_subscriptions where expires >= -1 and hostname='%q'", mod_sofia_globals.hostname);
        sofia_glue_actually_execute_sql(profile, sql, NULL);