asterisk: bump to 18.20.2 851/head
authorSebastian Kemper <sebastian_ml@gmx.net>
Fri, 5 Jan 2024 22:34:56 +0000 (23:34 +0100)
committerSebastian Kemper <sebastian_ml@gmx.net>
Fri, 5 Jan 2024 22:34:59 +0000 (23:34 +0100)
- Resolves GHSA-98rc-4j27-74hh, GHSA-hxj9-xwr8-w8pq, GHSA-5743-x3p5-3rg7
  and GHSA-8857-hfmw-vg8f
- patches refreshed
- patch 180-app_queue_time_t.patch added to fix new warnings
- 180-chan_iax2.c-Avoid-crash-with-IAX2-switch-support.patch removed as
  it's included in upstream release tar ball.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
net/asterisk/Makefile
net/asterisk/patches/030-GNU-GLOB-exts-only-on-glibc.patch
net/asterisk/patches/130-eventfd.patch
net/asterisk/patches/140-use-default-lua.patch
net/asterisk/patches/180-app_queue_time_t.patch [new file with mode: 0644]
net/asterisk/patches/180-chan_iax2.c-Avoid-crash-with-IAX2-switch-support.patch [deleted file]

index d670e8b6e6514bf13937b1ad43d893bc53b73159..743c9378661d431c4e7674b3d5a0d23257c333f3 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk
-PKG_VERSION:=18.15.1
-PKG_RELEASE:=3
+PKG_VERSION:=18.20.2
+PKG_RELEASE:=1
 
 PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://downloads.asterisk.org/pub/telephony/asterisk/releases
-PKG_HASH:=7594b045e1979a6e80f07ecfff634204830917fd2a7686b161cf4849454f4531
+PKG_HASH:=7ee8499fc704e5fcae57c5f195f806f2ce4da7ae5f62faa43e73b3e6d218747f
 
 PKG_BUILD_DEPENDS:=libxml2/host
 
index f6289a649d2f571bda50943dc53883b23d909e52..0dad20366fc5c8aec517c16fea8954ab661574c5 100644 (file)
@@ -1,6 +1,6 @@
 --- a/res/ael/ael.flex
 +++ b/res/ael/ael.flex
-@@ -601,7 +601,7 @@ includes   { STORE_POS; return KW_INCLUDES
+@@ -598,7 +598,7 @@ includes   { STORE_POS; return KW_INCLUDES
                   snprintf(fnamebuf2,sizeof(fnamebuf2), "%s/%s", (char *)ast_config_AST_CONFIG_DIR, fnamebuf);
                   ast_copy_string(fnamebuf,fnamebuf2,sizeof(fnamebuf));
                }
@@ -11,7 +11,7 @@
                        glob_ret = glob(fnamebuf, GLOB_NOMAGIC|GLOB_BRACE, NULL, &globbuf);
 --- a/res/ael/ael_lex.c
 +++ b/res/ael/ael_lex.c
-@@ -1982,7 +1982,7 @@ YY_RULE_SETUP
+@@ -1966,7 +1966,7 @@ YY_RULE_SETUP
                   snprintf(fnamebuf2,sizeof(fnamebuf2), "%s/%s", (char *)ast_config_AST_CONFIG_DIR, fnamebuf);
                   ast_copy_string(fnamebuf,fnamebuf2,sizeof(fnamebuf));
                }
index b14ec04c0342f109af44ff4282604657fcf81739..f06dec263cf0c7505674a79a7fb0b945b1726c17 100644 (file)
@@ -1,6 +1,6 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1262,7 +1262,7 @@ if test "${ac_cv_have_variable_fdset}x"
+@@ -1264,7 +1264,7 @@ if test "${ac_cv_have_variable_fdset}x"
  fi
  
  AC_MSG_CHECKING([if we have usable eventfd support])
index 2dbfd4febc5122ac42fbb781a5309dd020f9d3c1..8fa0c6fe48cd105b728f93c01d657f9d88c2e117 100644 (file)
@@ -1,6 +1,6 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -2625,7 +2625,7 @@ if test -z "$__opus_include" -o x"$__opu
+@@ -2634,7 +2634,7 @@ if test -z "$__opus_include" -o x"$__opu
  fi
  AST_EXT_LIB_CHECK([OPUSFILE], [opusfile], [op_open_callbacks], [opus/opusfile.h], [], [$__opus_include])
  
diff --git a/net/asterisk/patches/180-app_queue_time_t.patch b/net/asterisk/patches/180-app_queue_time_t.patch
new file mode 100644 (file)
index 0000000..d582a39
--- /dev/null
@@ -0,0 +1,17 @@
+--- a/apps/app_queue.c
++++ b/apps/app_queue.c
+@@ -4614,8 +4614,12 @@ static int is_longest_waiting_caller(str
+                                        * will be unused until the first caller is picked up.
+                                        */
+                                       if (ch->start < caller->start && !ch->pending) {
+-                                              ast_debug(1, "Queue %s has a call at position %i that's been waiting longer (%li vs %li)\n",
+-                                                                q->name, ch->pos, ch->start, caller->start);
++                                              char time1[AST_TIME_T_LEN];
++                                              char time2[AST_TIME_T_LEN];
++                                              ast_time_t_to_string(ch->start, time1, sizeof(time1));
++                                              ast_time_t_to_string(caller->start, time2, sizeof(time2));
++                                              ast_debug(1, "Queue %s has a call at position %i that's been waiting longer (%s vs %s)\n",
++                                                                q->name, ch->pos, time1, time2);
+                                               is_longest_waiting = 0;
+                                               break;
+                                       }
diff --git a/net/asterisk/patches/180-chan_iax2.c-Avoid-crash-with-IAX2-switch-support.patch b/net/asterisk/patches/180-chan_iax2.c-Avoid-crash-with-IAX2-switch-support.patch
deleted file mode 100644 (file)
index 52a4dd5..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From 39912b91384b4a6a4b4b34cdd338970c184fb096 Mon Sep 17 00:00:00 2001
-From: Sean Bright <sean@seanbright.com>
-Date: Fri, 7 Jul 2023 15:57:39 -0400
-Subject: [PATCH] chan_iax2.c: Avoid crash with IAX2 switch support.
-
-A change made in 82cebaa0 did not properly handle the case when a
-channel was not provided, triggering a crash. ast_check_hangup(...)
-does not protect against NULL pointers.
-
-Fixes #180
----
- channels/chan_iax2.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/channels/chan_iax2.c
-+++ b/channels/chan_iax2.c
-@@ -14312,7 +14312,7 @@ static struct iax2_dpcache *find_cache(s
-                       ast_log(LOG_WARNING, "Timeout waiting for %s exten %s\n", data, exten);
-               }
--              if (ast_check_hangup(chan)) {
-+              if (chan && ast_check_hangup(chan)) {
-                       doabort = 1;
-               }