[Freeswitch-svn] [commit] r13061 - in freeswitch/trunk/libs/sofia-sip: . libsofia-sip-ua/nua

FreeSWITCH SVN mikej at freeswitch.org
Thu Apr 16 08:00:42 PDT 2009


Author: mikej
Date: Thu Apr 16 10:00:42 2009
New Revision: 13061

Log:
Wed Apr  8 16:37:43 CDT 2009  Pekka Pessi <first.last at nokia.com>
  * nua_session.c: do not restart CANCEL requests
  Ignore-this: 2c9d51bbafca2256630a0ea73982abea
  
  Fixes FreesWitch bug SFSIP-134, reported by vile, initial patch by Mike
  Jerris.



Modified:
   freeswitch/trunk/libs/sofia-sip/.update
   freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c

Modified: freeswitch/trunk/libs/sofia-sip/.update
==============================================================================
--- freeswitch/trunk/libs/sofia-sip/.update	(original)
+++ freeswitch/trunk/libs/sofia-sip/.update	Thu Apr 16 10:00:42 2009
@@ -1 +1 @@
-Thu Apr 16 09:59:45 CDT 2009
+Thu Apr 16 10:00:29 CDT 2009

Modified: freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c
==============================================================================
--- freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c	(original)
+++ freeswitch/trunk/libs/sofia-sip/libsofia-sip-ua/nua/nua_session.c	Thu Apr 16 10:00:42 2009
@@ -1436,6 +1436,10 @@
 static int nua_cancel_client_request(nua_client_request_t *cr,
 				     msg_t *msg, sip_t *sip,
 				     tagi_t const *tags);
+static int nua_cancel_client_check_restart(nua_client_request_t *cr,
+					   int status,
+					   char const *phrase,
+					   sip_t const *sip);
 
 nua_client_methods_t const nua_cancel_client_methods = {
   SIP_METHOD_CANCEL,		/* crm_method, crm_method_name */
@@ -1447,8 +1451,8 @@
   },
   NULL,				/* crm_template */
   NULL,				/* crm_init */
-  nua_cancel_client_request,	/* crm_send */
-  NULL,				/* crm_check_restart */
+  nua_cancel_client_request,	/* .. not really crm_send */
+  nua_cancel_client_check_restart, /* crm_check_restart */
   NULL,				/* crm_recv */
   NULL,				/* crm_preliminary */
   NULL,				/* crm_report */
@@ -1488,6 +1492,16 @@
   return 0;
 }
 
+static int
+nua_cancel_client_check_restart(nua_client_request_t *cr,
+				int status,
+				char const *phrase,
+				sip_t const *sip)
+{
+  /* We cannot really restart CANCEL */
+  return 0;
+}
+
 /** @NUA_EVENT nua_r_cancel
  *
  * Answer to outgoing CANCEL.



More information about the Freeswitch-svn mailing list