<feed xmlns='http://www.w3.org/2005/Atom'>
<title>telephony/net/asterisk-16.x/patches/100-build-reproducibly.patch, branch openwrt-19.07</title>
<subtitle>The telephony packages feed</subtitle>
<id>http://x-nagi.com/cgit/telephony/atom?h=openwrt-19.07</id>
<link rel='self' href='http://x-nagi.com/cgit/telephony/atom?h=openwrt-19.07'/>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/telephony/'/>
<updated>2022-04-20T21:32:27Z</updated>
<entry>
<title>asterisk-16.x: bump to version 16.25.2</title>
<updated>2022-04-20T21:32:27Z</updated>
<author>
<name>Sebastian Kemper</name>
<email>sebastian_ml@gmx.net</email>
</author>
<published>2022-04-20T21:18:16Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/telephony/commit/?id=445b5e5ff1f5a0d4ec1ed7a5c51271beae1684d4'/>
<id>urn:sha1:445b5e5ff1f5a0d4ec1ed7a5c51271beae1684d4</id>
<content type='text'>
This bumps asterisk to version 16.25.2 to address the following security
concerns:

https://downloads.asterisk.org/pub/security/AST-2022-001.html
https://downloads.asterisk.org/pub/security/AST-2022-002.html
https://downloads.asterisk.org/pub/security/AST-2022-003.html

Other changes:

- add two new modules (app_sf and func_json)
- update 100-build-reproducibly.patch as upstream refactored some of the
  code
- refresh patches
- "--disable-xmldoc" does no longer prevent the linking to libxslt, if
  available. If that's the case one is greeted with the following error:

    Package asterisk is missing dependencies for the following libraries:
    libxslt.so.1

  This commit explicitly disables the use of libxslt, to avoid the
  dependency.
- backport 160-AST_EXT_TOOL_CHECK.patch from master for issue #672
- backport 180_build-fix-bininstall-launchd-issue-on-cross-platfrom.patch
  from master to fix a build issue on MacOS (patch from Sergey V.
  Lobanov &lt;sergey@lobanov.in&gt;)

Signed-off-by: Sebastian Kemper &lt;sebastian_ml@gmx.net&gt;
</content>
</entry>
<entry>
<title>asterisk-16.x: bump to 16.22.0</title>
<updated>2021-11-07T09:57:36Z</updated>
<author>
<name>Sebastian Kemper</name>
<email>sebastian_ml@gmx.net</email>
</author>
<published>2021-11-03T20:43:57Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/telephony/commit/?id=abc7a1714211cdea4ad2afd158746a5b14a8c5a0'/>
<id>urn:sha1:abc7a1714211cdea4ad2afd158746a5b14a8c5a0</id>
<content type='text'>
- add new modules
- add res_timing_timerfd to base package (see commit e538fc3)
- update some module dependencies
- refresh patches
- remove upstreamed patches

Signed-off-by: Sebastian Kemper &lt;sebastian_ml@gmx.net&gt;
</content>
</entry>
<entry>
<title>asterisk-16.x: add Asterisk 16</title>
<updated>2019-05-01T09:29:49Z</updated>
<author>
<name>Sebastian Kemper</name>
<email>sebastian_ml@gmx.net</email>
</author>
<published>2019-04-27T14:04:34Z</published>
<link rel='alternate' type='text/html' href='http://x-nagi.com/cgit/telephony/commit/?id=6cdf80bd46e1d79f5bbb33aa00954f7688953769'/>
<id>urn:sha1:6cdf80bd46e1d79f5bbb33aa00954f7688953769</id>
<content type='text'>
Initial commit of Asterisk 16. Cleans up Makefile; the version number
now only occurs once in it.

Upstream removed the following modules:

  - format_jpeg
  - res_pjsip_registrar_expire (functionality was moved into
    res_pjsip_registrar.)

pjsip has a new dependency, res-http-websocket.

Notes:

  - replaced res_ninit patch

    Replaced patch with the one from Alpine. It's a bit more flexible and
    allows usage of res_ninit where available (when building against
    glibc).

  - fixed musl compiles

    astmm.h now always gets included by asterisk.h, redefining allocators.
    This causes breakage on musl:

    ccache_cc -o chan_pjsip.o -c chan_pjsip.c -MD -MT chan_pjsip.o -MF .chan_pjsip.o.d -MP -pthread -I/home/sk/tmp/openwrt/build_dir/target-mips_24kc_musl/asterisk-16.2.1/include -Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -msoft-float -mips16 -minterlink-mips16 -iremap/home/sk/tmp/openwrt/build_dir/target-mips_24kc_musl/asterisk-16.2.1:asterisk-16.2.1 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/lib/libiconv-stub/include -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/lib/libintl-stub/include -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/include -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/include -I/home/sk/tmp/openwrt/staging_dir/toolchain-mips_24kc_gcc-7.4.0_musl/usr/include -I/home/sk/tmp/openwrt/staging_dir/toolchain-mips_24kc_gcc-7.4.0_musl/include/fortify -I/home/sk/tmp/openwrt/staging_dir/toolchain-mips_24kc_gcc-7.4.0_musl/include -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/lib/libiconv-stub/include -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/lib/libintl-stub/include    -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/include/libxml2  -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations       -fPIC -DAST_MODULE=\"chan_pjsip\" -DAST_MODULE_SELF_SYM=__internal_chan_pjsip_self  -DPJ_AUTOCONF=1 -DPJ_IS_BIG_ENDIAN=1 -DPJ_IS_LITTLE_ENDIAN=0 -fPIC -I/home/sk/tmp/openwrt/staging_dir/target-mips_24kc_musl/usr/include
    In file included from /home/sk/tmp/openwrt/build_dir/target-mips_24kc_musl/asterisk-16.2.1/include/asterisk.h:23:0,
                     from chan_pjsip.c:35:
    /home/sk/tmp/openwrt/build_dir/target-mips_24kc_musl/asterisk-16.2.1/include/asterisk/astmm.h:158:35: error: expected '=', ',', ';', 'asm' or '__attribute__' before '-&gt;' token
      Do_not_use_calloc__use_ast_calloc-&gt;fail(a, b)
                                       ^
    /home/sk/tmp/openwrt/build_dir/target-mips_24kc_musl/asterisk-16.2.1/include/asterisk/astmm.h:162:77: error: expected '=', ',', ';', 'asm' or '__attribute__' before '-&gt;' token
      Do_not_use_free__use_ast_free_or_ast_std_free_for_remotely_allocated_memory-&gt;fail(a)
                                                                                 ^
    make[4]: *** [/home/sk/tmp/openwrt/build_dir/target-mips_24kc_musl/asterisk-16.2.1/Makefile.rules:153: chan_pjsip.o] Error 1

    The problem is that with _GNU_SOURCE defined musl also declares calloc in
    &lt;sched.h&gt; - and when asterisk's source includes &lt;sched.h&gt; _after_
    "asterisk/astmm.h" the definition clashes with the macro. Timo Teräs from
    Alpine Linux fixed this by including &lt;pthread.h&gt; in "asterisk/compat.h". He
    chose to include &lt;pthread.h&gt; instead of &lt;sched.h&gt; because the original
    header inclusion chain seems to be "asterisk/astobj2.h" -&gt;
    "asterisk/lock.h" -&gt; &lt;pthread.h&gt; -&gt; &lt;sched.h&gt;. It seems Asterisk
    practically never includes &lt;sched.h&gt; directly.

  - added loader workaround for musl

    When the modules are loaded, asterisk segfaults on musl.

       Asterisk Dynamic Loader Starting:
      [Mar  2 22:30:05] NOTICE[20712]: loader.c:2230 load_modules: 91 modules will be loaded.
      Segmentation fault

      [48817.544248] do_page_fault(): sending SIGSEGV to asterisk for invalid read access from 00000000
      [48817.544258] epc = 77f6b764 in libc.so[77ef8000+94000]
      [48817.544285] ra  = 0048d579 in asterisk[400000+160000]

    The real problem is that the loader expects dlopen to always run the
    constructor, which doesn't happen with musl, because its dlopen is
    permanent.

    This commit adds a new configure switch '--enable-permanent-dlopen'.
    When enabled, the loader will manually call 'ast_module_register(...)'
    and 'ast_module_unregister(...)' when needed.

  - allow eventfd detection

    Asterisk 16 wants to use eventfd, but it doesn't allow the detection
    during cross-compiling. This results in runtime warnings, for instance
    when shutting down:

      [Mar  2 22:37:41] WARNING[21593]: alertpipe.c:112 ast_alertpipe_read: read() failed: Bad file descriptor
      [Mar  2 22:37:41] WARNING[21593]: alertpipe.c:112 ast_alertpipe_read: read() failed: Bad file descriptor
      [Mar  2 22:37:41] WARNING[21593]: alertpipe.c:112 ast_alertpipe_read: read() failed: Bad file descriptor

    Relax the configure script so that eventfd can also be detected when
    cross-compiling.

Signed-off-by: Sebastian Kemper &lt;sebastian_ml@gmx.net&gt;
</content>
</entry>
</feed>
