sofia-sip: bump to 1.13.4 665/head
authorSebastian Kemper <sebastian_ml@gmx.net>
Tue, 3 Aug 2021 16:13:59 +0000 (18:13 +0200)
committerSebastian Kemper <sebastian_ml@gmx.net>
Tue, 3 Aug 2021 16:14:01 +0000 (18:14 +0200)
Fixes some issues, for instance a segfault during shutdown when
sofia-sip wasn't fully loaded, see [1]. The segfault was reproducible
by simply calling "freeswitch -help".

The added patch is to address a library versioning regression, patch is
from upstream.

[1] https://github.com/freeswitch/sofia-sip/issues/58

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
libs/sofia-sip/Makefile
libs/sofia-sip/patches/02-NUA_handles-mem-leak-fix.patch [deleted file]
libs/sofia-sip/patches/02-fix-lib-version.patch [new file with mode: 0644]

index a25e9e0c079d2c0fdc4eb00aeb3240ef619c3cf2..f7b755dfcf97fcbbeef399afca73f4e4df81121b 100644 (file)
@@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=sofia-sip
 
-PKG_VERSION:=1.13.3
-PKG_RELEASE:=2
+PKG_VERSION:=1.13.4
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/freeswitch/$(PKG_NAME)/tar.gz/v${PKG_VERSION}?
-PKG_HASH:=6f9cc7ed674e2214809e390728da0df646f94e5b991cff9f393217176de9d7e4
+PKG_HASH:=3f3f7b7b26cc150dae7e1cae95a0fe2c65905311fe143145b4bcda8f97d7ed4e
 
 # sofia-sip adds a version to include path
 # need to update this when the version changes
diff --git a/libs/sofia-sip/patches/02-NUA_handles-mem-leak-fix.patch b/libs/sofia-sip/patches/02-NUA_handles-mem-leak-fix.patch
deleted file mode 100644 (file)
index 54cc5b3..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-commit 8071e8accd250bd1d7758dd16166382b48a6e6d4
-Author: Andrey Volk <andywolk@gmail.com>
-Date:   Wed Mar 10 18:37:18 2021 +0300
-
-    NUA handles must be able to unref via stack (nua_handle_unref_user() API) when they are already destroyed or nua is in shutdown
-
---- a/libsofia-sip-ua/nua/nua.c
-+++ b/libsofia-sip-ua/nua/nua.c
-@@ -1165,11 +1165,7 @@ void nua_unref_user(nua_t *nua)
- void nua_handle_unref_user(nua_handle_t *nh)
- {
--      enter;
--      if (NH_IS_VALID(nh)) {
--        nua_signal(nh->nh_nua, nh, NULL, nua_r_handle_unref, 0, NULL, TAG_NULL());
--      }
--      else {
--        SU_DEBUG_1(("nua: nua_r_handle_unref with invalid handle %p\n", (void *)nh));
--      }
-+      assert(nh);
-+      nh_enter;
-+      nua_signal(nh->nh_nua, nh, NULL, nua_r_handle_unref, 0, NULL, TAG_NULL());
- }
---- a/libsofia-sip-ua/nua/nua_common.c
-+++ b/libsofia-sip-ua/nua/nua_common.c
-@@ -376,6 +376,8 @@ char const *nua_event_name(nua_event_t e
-   case nua_r_nit_respond: return "nua_r_nit_respond";
-   case nua_r_set_params: return "nua_r_set_params";
-   case nua_r_ack: return "nua_r_ack";
-+  case nua_r_handle_unref: return "nua_r_handle_unref";
-+  case nua_r_unref: return "nua_r_unref";
-   default: return "NUA_UNKNOWN";
-   }
- }
---- a/libsofia-sip-ua/nua/nua_stack.c
-+++ b/libsofia-sip-ua/nua/nua_stack.c
-@@ -514,7 +514,7 @@ int nua_signal(nua_t *nua, nua_handle_t
-     assert(tend == t); (void)tend; assert(b == bend); (void)bend;
--    e->e_always = event == nua_r_destroy || event == nua_r_shutdown;
-+    e->e_always = event == nua_r_destroy || event == nua_r_shutdown || event == nua_r_handle_unref || event == nua_r_unref;
-     e->e_event = event;
-     e->e_nh = nh ? nua_handle_ref(nh) : NULL;
-     e->e_status = status;
-@@ -549,10 +549,10 @@ void nua_stack_signal(nua_t *nua, su_msg
-   nua_event_data_t *e = ee->ee_data;
-   nua_handle_t *nh = e->e_nh;
-   tagi_t *tags = e->e_tags;
--  nua_event_t event;
-+  nua_event_t event = (enum nua_event_e)e->e_event;
-   int error = 0;
--  if (nh) {
-+  if (nh && event != nua_r_handle_unref) {
-     if (!nh->nh_prev)
-       nh_append(nua, nh);
-     if (!nh->nh_ref_by_stack) {
-@@ -575,8 +575,6 @@ void nua_stack_signal(nua_t *nua, su_msg
-   su_msg_save(nua->nua_signal, msg);
--  event = (enum nua_event_e)e->e_event;
--
-   if (nua->nua_shutdown && !e->e_always) {
-     /* Shutting down */
-     nua_stack_event(nua, nh, NULL, event,
diff --git a/libs/sofia-sip/patches/02-fix-lib-version.patch b/libs/sofia-sip/patches/02-fix-lib-version.patch
new file mode 100644 (file)
index 0000000..09d931d
--- /dev/null
@@ -0,0 +1,20 @@
+commit d2cc5ce437880ca135ef8ee857cf41ba58981675
+Author: Andrey Volk <andywolk@gmail.com>
+Date:   Thu Jun 24 19:18:45 2021 +0300
+
+    Update library version information back to 6:0:6
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -22,9 +22,9 @@ AC_CONFIG_MACRO_DIR([m4])
+ AC_SUBST(VER_LIBSOFIA_SIP_UA_MAJOR_MINOR, [1.13])
+ dnl Includedir specific to this sofia version
+ AC_SUBST(include_sofiadir, '${includedir}/sofia-sip-1.13')
+-AC_SUBST(LIBVER_SOFIA_SIP_UA_CUR, [4])
++AC_SUBST(LIBVER_SOFIA_SIP_UA_CUR, [6])
+ AC_SUBST(LIBVER_SOFIA_SIP_UA_REV, [0])
+-AC_SUBST(LIBVER_SOFIA_SIP_UA_AGE, [4])
++AC_SUBST(LIBVER_SOFIA_SIP_UA_AGE, [6])
+ AC_SUBST(LIBVER_SOFIA_SIP_UA_SOVER, [0]) # CUR-AGE
+ AC_SUBST(LIBVER_SOFIA_SIP_UA_GLIB_CUR, [3])
+ AC_SUBST(LIBVER_SOFIA_SIP_UA_GLIB_REV, [0])