asterisk: update to version 20.8.1
authorDaniel Golle <daniel@makrotopia.org>
Sat, 22 Jun 2024 14:40:52 +0000 (15:40 +0100)
committerDaniel Golle <daniel@makrotopia.org>
Tue, 25 Jun 2024 03:45:59 +0000 (04:45 +0100)
Update to most recent LTS release addressing multiple security and
stability issues.

Complete changelog:
https://github.com/asterisk/asterisk/compare/20.5.2...20.8.1

Note that res-stir-shaken switched to use libjwt instead of providing
a built-in JWT implementation.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit 11353e1a17761ee1b29488da008e05fe81d3e174)

net/asterisk/Makefile
net/asterisk/patches/100-build-reproducibly.patch
net/asterisk/patches/130-eventfd.patch
net/asterisk/patches/140-use-default-lua.patch
net/asterisk/patches/180-app_queue_time_t.patch

index e5075caaa84dd84908892a8c4c3e37051f73fb4b..f38c4ffd154512d457b54314a83583e3dce669e1 100644 (file)
@@ -8,13 +8,13 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=asterisk
-PKG_VERSION:=20.5.2
+PKG_VERSION:=20.8.1
 PKG_RELEASE:=1
 PKG_CPE_ID:=cpe:/a:digium:asterisk
 
 PKG_SOURCE:=asterisk-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://downloads.asterisk.org/pub/telephony/asterisk/releases
-PKG_HASH:=8f68e1789dfb8aa04b0eba87ea1d599a62e088ddd20926afc997f36b455e1859
+PKG_HASH:=fa498b6224e8c262de6840a67e00e3747e178fcefd9fb2595885d402ca3248f5
 
 PKG_BUILD_DEPENDS:=libxml2/host
 
@@ -583,6 +583,7 @@ CONFIGURE_ARGS+= \
        --with-ilbc=internal \
        --without-pjproject-bundled \
        --with-libedit="$(STAGING_DIR)/usr" \
+       $(if $(CONFIG_PACKAGE_$(PKG_NAME)-res-stir-shaken),--with-libjwt-bundled=yes,--with-libjwt-bundled=no) \
        --with-libxml2 \
        $(if $(CONFIG_ASTERISK_LIBXSLT_SUPPORT),--with-libxslt,--without-libxslt) \
        $(if $(CONFIG_PACKAGE_$(PKG_NAME)-res-snmp),--with-netsnmp="$(STAGING_DIR)/usr",--without-netsnmp) \
@@ -1057,7 +1058,7 @@ $(eval $(call BuildAsteriskModule,res-stasis-playback,Stasis application playbac
 $(eval $(call BuildAsteriskModule,res-stasis-recording,Stasis application recording,Stasis application recording support.,+$(PKG_NAME)-res-stasis,,res_stasis_recording,,))
 $(eval $(call BuildAsteriskModule,res-stasis-snoop,Stasis application snoop,Stasis application snoop support.,+$(PKG_NAME)-res-stasis-recording,,res_stasis_snoop,,))
 $(eval $(call BuildAsteriskModule,res-statsd,statsd client,Statsd client support.,,statsd.conf,res_statsd,,))
-$(eval $(call BuildAsteriskModule,res-stir-shaken,STIR/SHAKEN resource module,STIR/SHAKEN resource module.,+$(PKG_NAME)-curl,stir_shaken.conf,res_stir_shaken,,))
+$(eval $(call BuildAsteriskModule,res-stir-shaken,STIR/SHAKEN resource module,STIR/SHAKEN resource module.,+$(PKG_NAME)-curl +libjwt,stir_shaken.conf,res_stir_shaken,,))
 $(eval $(call BuildAsteriskModule,res-stun-monitor,STUN monitoring,STUN network monitor.,,res_stun_monitor.conf,res_stun_monitor,,))
 $(eval $(call BuildAsteriskModule,res-timing-dahdi,DAHDI Timing Interface,DAHDI timing interface.,+$(PKG_NAME)-chan-dahdi,,res_timing_dahdi,,))
 $(eval $(call BuildAsteriskModule,res-timing-pthread,pthread Timing Interface,pthread timing interface.,,,res_timing_pthread,,))
index f16421b4a3d4f07ed154178535d197361bd3a716..d667f3687329c745205a0aab5e47b11149d350a3 100644 (file)
   * build.h
 --- a/build_tools/make_xml_documentation
 +++ b/build_tools/make_xml_documentation
-@@ -187,7 +187,7 @@ printf "Building Documentation For: "
+@@ -193,7 +193,7 @@ printf "Building Documentation For: "
  for subdir in ${mod_subdirs} ; do
        printf "%s " "${subdir}"
-       subdir_path="${source_tree}/${subdir}"
+       subdir_path=$(make_absolute "$subdir")
 -      for i in $(${FIND} "${subdir_path}" -name '*.c' -or -name '*.cc'); do
 +      for i in $(${FIND} "${subdir_path}" -name '*.c' -or -name '*.cc' | LC_ALL=C sort); do
                if [ "${with_moduleinfo}" -eq "1" ] ; then
index 60e7d26b4402ecfec62b6debfb0e5b32db77a98f..81bd332300bf31300afbcfb32a220daefe27a1f9 100644 (file)
@@ -1,6 +1,6 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1257,7 +1257,7 @@ if test "${ac_cv_have_variable_fdset}x"
+@@ -1272,7 +1272,7 @@ if test "${ac_cv_have_variable_fdset}x"
  fi
  
  AC_MSG_CHECKING([if we have usable eventfd support])
index 006a07fffddd1e9a8f8b881ae5eaf2f1ca7b048c..3857d13c905a3133495f005b1ce26abc70c1a881 100644 (file)
@@ -1,6 +1,6 @@
 --- a/configure.ac
 +++ b/configure.ac
-@@ -2608,7 +2608,7 @@ if test -z "$__opus_include" -o x"$__opu
+@@ -2623,7 +2623,7 @@ if test -z "$__opus_include" -o x"$__opu
  fi
  AST_EXT_LIB_CHECK([OPUSFILE], [opusfile], [op_open_callbacks], [opus/opusfile.h], [], [$__opus_include])
  
index d582a39409bb090626312913c1aa64fd6fedf6c9..3e47c0f44ed0dd97faabc4b02e63af253ff6d426 100644 (file)
@@ -1,6 +1,6 @@
 --- a/apps/app_queue.c
 +++ b/apps/app_queue.c
-@@ -4614,8 +4614,12 @@ static int is_longest_waiting_caller(str
+@@ -4625,8 +4625,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) {