Asterisk segfault in pjsip_endpt_create_pool with PJSIP 2.5.5

BS
Bernhard Schmidt
Fri, Nov 4, 2016 9:12 AM

Hi,

I have recently uploaded a new version of pjsip into Debian testing (was
2.5.1, now 2.5.5).

We have received reports that Asterisk (13.11.2 and 13.12.1) crash when
making an outbound call through PJSIP as soon as the updated library is
installed. This is the backtrace

Thread 29 "asterisk" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffad680700 (LWP 24582)]
pjsip_endpt_create_pool (endpt=0x0,
pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)",
initial=initial@entry=256, increment=increment@entry=256)
at ../src/pjsip/sip_endpoint.c:662
662    ../src/pjsip/sip_endpoint.c: No such file or directory.
(gdb)
(gdb) bt full
#0  pjsip_endpt_create_pool (endpt=0x0,
pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)",
initial=initial@entry=256, increment=increment@entry=256)
at ../src/pjsip/sip_endpoint.c:662
pool = <optimized out>
#1  0x00007ffff0c74ea2 in pjsip_inv_create_uac (dlg=0x555555cf5eb8,
local_sdp=0x0, options=3, p_inv=0x7fffad67fc40) at
../src/pjsip-ua/sip_inv.c:851
status = <optimized out>
#2  0x00007fffb09c1b3b in ast_sip_session_create_outgoing () from
/usr/lib/asterisk/modules/res_pjsip_session.so
No symbol table info available.
#3  0x00007fff8aa90cad in ?? () from /usr/lib/asterisk/modules/chan_pjsip.so
No symbol table info available.
#4  0x00007fffb1402e10 in ?? () from /usr/lib/asterisk/modules/res_pjsip.so
No symbol table info available.

without -DNDEBUG an assertion is thrown

asterisk: ../src/pj/os_core_unix.c:1254: pj_mutex_lock: Assertion
`mutex' failed. (Asterisk 13.11.2 compiled against 2.5.1)

or

asterisk: ../src/pjsip/sip_auth_client.c:507: pjsip_auth_clt_deinit:
Assertion `sess && sess->endpt' failed.
Aborted (Asterisk 13.12.1 compiled against 2.5.5)

See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842878

Can anyone give some help here? We need to fix this pretty soon if we
want to get pjproject/Asterisk into the next Debian release.

Bernhard

Hi, I have recently uploaded a new version of pjsip into Debian testing (was 2.5.1, now 2.5.5). We have received reports that Asterisk (13.11.2 and 13.12.1) crash when making an outbound call through PJSIP as soon as the updated library is installed. This is the backtrace Thread 29 "asterisk" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fffad680700 (LWP 24582)] pjsip_endpt_create_pool (endpt=0x0, pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)", initial=initial@entry=256, increment=increment@entry=256) at ../src/pjsip/sip_endpoint.c:662 662 ../src/pjsip/sip_endpoint.c: No such file or directory. (gdb) (gdb) bt full #0 pjsip_endpt_create_pool (endpt=0x0, pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)", initial=initial@entry=256, increment=increment@entry=256) at ../src/pjsip/sip_endpoint.c:662 pool = <optimized out> #1 0x00007ffff0c74ea2 in pjsip_inv_create_uac (dlg=0x555555cf5eb8, local_sdp=0x0, options=3, p_inv=0x7fffad67fc40) at ../src/pjsip-ua/sip_inv.c:851 status = <optimized out> #2 0x00007fffb09c1b3b in ast_sip_session_create_outgoing () from /usr/lib/asterisk/modules/res_pjsip_session.so No symbol table info available. #3 0x00007fff8aa90cad in ?? () from /usr/lib/asterisk/modules/chan_pjsip.so No symbol table info available. #4 0x00007fffb1402e10 in ?? () from /usr/lib/asterisk/modules/res_pjsip.so No symbol table info available. without -DNDEBUG an assertion is thrown asterisk: ../src/pj/os_core_unix.c:1254: pj_mutex_lock: Assertion `mutex' failed. (Asterisk 13.11.2 compiled against 2.5.1) or asterisk: ../src/pjsip/sip_auth_client.c:507: pjsip_auth_clt_deinit: Assertion `sess && sess->endpt' failed. Aborted (Asterisk 13.12.1 compiled against 2.5.5) See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842878 Can anyone give some help here? We need to fix this pretty soon if we want to get pjproject/Asterisk into the next Debian release. Bernhard
IG
Ian Gilmour
Fri, Nov 4, 2016 10:30 AM

Hi Bernhard,

There have been some recent additions to the set of pjproject patches
added to the current asterisk 13 branch (all post asterisk 13.12.1).

See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and
associated jira issues) for details.

They may be relevant to your problem. They do stop the crashes I was seeing.

None of these patches have reached a stable asterisk/pjproject release
as yet.

Regards,

Ian

On 04/11/2016 09:12, Bernhard Schmidt wrote:

Hi,

I have recently uploaded a new version of pjsip into Debian testing (was
2.5.1, now 2.5.5).

We have received reports that Asterisk (13.11.2 and 13.12.1) crash when
making an outbound call through PJSIP as soon as the updated library is
installed. This is the backtrace

Thread 29 "asterisk" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffad680700 (LWP 24582)]
pjsip_endpt_create_pool (endpt=0x0,
pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)",
initial=initial@entry=256, increment=increment@entry=256)
at ../src/pjsip/sip_endpoint.c:662
662    ../src/pjsip/sip_endpoint.c: No such file or directory.
(gdb)
(gdb) bt full
#0  pjsip_endpt_create_pool (endpt=0x0,
pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)",
initial=initial@entry=256, increment=increment@entry=256)
at ../src/pjsip/sip_endpoint.c:662
pool = <optimized out>
#1  0x00007ffff0c74ea2 in pjsip_inv_create_uac (dlg=0x555555cf5eb8,
local_sdp=0x0, options=3, p_inv=0x7fffad67fc40) at
../src/pjsip-ua/sip_inv.c:851
status = <optimized out>
#2  0x00007fffb09c1b3b in ast_sip_session_create_outgoing () from
/usr/lib/asterisk/modules/res_pjsip_session.so
No symbol table info available.
#3  0x00007fff8aa90cad in ?? () from /usr/lib/asterisk/modules/chan_pjsip.so
No symbol table info available.
#4  0x00007fffb1402e10 in ?? () from /usr/lib/asterisk/modules/res_pjsip.so
No symbol table info available.

without -DNDEBUG an assertion is thrown

asterisk: ../src/pj/os_core_unix.c:1254: pj_mutex_lock: Assertion
`mutex' failed. (Asterisk 13.11.2 compiled against 2.5.1)

or

asterisk: ../src/pjsip/sip_auth_client.c:507: pjsip_auth_clt_deinit:
Assertion `sess && sess->endpt' failed.
Aborted (Asterisk 13.12.1 compiled against 2.5.5)

See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842878

Can anyone give some help here? We need to fix this pretty soon if we
want to get pjproject/Asterisk into the next Debian release.

Bernhard


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Hi Bernhard, There have been some recent additions to the set of pjproject patches added to the current asterisk 13 branch (all post asterisk 13.12.1). See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and associated jira issues) for details. They may be relevant to your problem. They do stop the crashes I was seeing. None of these patches have reached a stable asterisk/pjproject release as yet. Regards, Ian On 04/11/2016 09:12, Bernhard Schmidt wrote: > Hi, > > I have recently uploaded a new version of pjsip into Debian testing (was > 2.5.1, now 2.5.5). > > We have received reports that Asterisk (13.11.2 and 13.12.1) crash when > making an outbound call through PJSIP as soon as the updated library is > installed. This is the backtrace > > Thread 29 "asterisk" received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0x7fffad680700 (LWP 24582)] > pjsip_endpt_create_pool (endpt=0x0, > pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)", > initial=initial@entry=256, increment=increment@entry=256) > at ../src/pjsip/sip_endpoint.c:662 > 662 ../src/pjsip/sip_endpoint.c: No such file or directory. > (gdb) > (gdb) bt full > #0 pjsip_endpt_create_pool (endpt=0x0, > pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)", > initial=initial@entry=256, increment=increment@entry=256) > at ../src/pjsip/sip_endpoint.c:662 > pool = <optimized out> > #1 0x00007ffff0c74ea2 in pjsip_inv_create_uac (dlg=0x555555cf5eb8, > local_sdp=0x0, options=3, p_inv=0x7fffad67fc40) at > ../src/pjsip-ua/sip_inv.c:851 > status = <optimized out> > #2 0x00007fffb09c1b3b in ast_sip_session_create_outgoing () from > /usr/lib/asterisk/modules/res_pjsip_session.so > No symbol table info available. > #3 0x00007fff8aa90cad in ?? () from /usr/lib/asterisk/modules/chan_pjsip.so > No symbol table info available. > #4 0x00007fffb1402e10 in ?? () from /usr/lib/asterisk/modules/res_pjsip.so > No symbol table info available. > > without -DNDEBUG an assertion is thrown > > asterisk: ../src/pj/os_core_unix.c:1254: pj_mutex_lock: Assertion > `mutex' failed. (Asterisk 13.11.2 compiled against 2.5.1) > > or > > asterisk: ../src/pjsip/sip_auth_client.c:507: pjsip_auth_clt_deinit: > Assertion `sess && sess->endpt' failed. > Aborted (Asterisk 13.12.1 compiled against 2.5.5) > > See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842878 > > Can anyone give some help here? We need to fix this pretty soon if we > want to get pjproject/Asterisk into the next Debian release. > > Bernhard > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
BS
Bernhard Schmidt
Fri, Nov 4, 2016 1:09 PM

Hi Ian,

There have been some recent additions to the set of pjproject patches
added to the current asterisk 13 branch (all post asterisk 13.12.1).

See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and
associated jira issues) for details.

They may be relevant to your problem. They do stop the crashes I was
seeing.

None of these patches have reached a stable asterisk/pjproject release
as yet.

Thanks. Unfortunately switching to the bundled pjproject in Asterisk
would be pretty hard for Debian packaging, and since that one seems to
be on an older level anyway it will probably not have the same issue.

I have just tried the latest git/svn snapshot of pjproject
(https://github.com/pjsip/pjproject/) and I'm seeing the same crash as
before. This one should include the DNS and SSL crash fixes that were
mentioned in Asterisk JIRA.

Bernhard

Hi Ian, > There have been some recent additions to the set of pjproject patches > added to the current asterisk 13 branch (all post asterisk 13.12.1). > > See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and > associated jira issues) for details. > > They may be relevant to your problem. They do stop the crashes I was > seeing. > > None of these patches have reached a stable asterisk/pjproject release > as yet. Thanks. Unfortunately switching to the bundled pjproject in Asterisk would be pretty hard for Debian packaging, and since that one seems to be on an older level anyway it will probably not have the same issue. I have just tried the latest git/svn snapshot of pjproject (https://github.com/pjsip/pjproject/) and I'm seeing the same crash as before. This one should include the DNS and SSL crash fixes that were mentioned in Asterisk JIRA. Bernhard
AG
Alexei Gradinari
Fri, Nov 4, 2016 1:24 PM

Hello Bernhard,

  1. You should get the latest snapshot of pjproject from SVN repo
    http://svn.pjproject.net/repos/pjproject/trunk

  2. If you use the pjproject only for an asterisk you should use
    the bundled version or manually make the pjproject package
    with the necessary patches and build options.
    See asterisk/third-party/pjproject

Regards,
Alexei

Friday, November 4, 2016, 9:09:16 AM, you wrote:

Hi Ian,

There have been some recent additions to the set of pjproject patches
added to the current asterisk 13 branch (all post asterisk 13.12.1).

See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and
associated jira issues) for details.

They may be relevant to your problem. They do stop the crashes I was
seeing.

None of these patches have reached a stable asterisk/pjproject release
as yet.

Thanks. Unfortunately switching to the bundled pjproject in Asterisk
would be pretty hard for Debian packaging, and since that one seems to
be on an older level anyway it will probably not have the same issue.

I have just tried the latest git/svn snapshot of pjproject
(https://github.com/pjsip/pjproject/) and I'm seeing the same crash as
before. This one should include the DNS and SSL crash fixes that were
mentioned in Asterisk JIRA.

Bernhard


Visit our blog: http://blog.pjsip.org

Hello Bernhard, 1. You should get the latest snapshot of pjproject from SVN repo http://svn.pjproject.net/repos/pjproject/trunk 2. If you use the pjproject only for an asterisk you should use the bundled version or manually make the pjproject package with the necessary patches and build options. See asterisk/third-party/pjproject Regards, Alexei Friday, November 4, 2016, 9:09:16 AM, you wrote: > Hi Ian, >> There have been some recent additions to the set of pjproject patches >> added to the current asterisk 13 branch (all post asterisk 13.12.1). >> >> See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and >> associated jira issues) for details. >> >> They may be relevant to your problem. They do stop the crashes I was >> seeing. >> >> None of these patches have reached a stable asterisk/pjproject release >> as yet. > Thanks. Unfortunately switching to the bundled pjproject in Asterisk > would be pretty hard for Debian packaging, and since that one seems to > be on an older level anyway it will probably not have the same issue. > I have just tried the latest git/svn snapshot of pjproject > (https://github.com/pjsip/pjproject/) and I'm seeing the same crash as > before. This one should include the DNS and SSL crash fixes that were > mentioned in Asterisk JIRA. > Bernhard > _______________________________________________ > Visit our blog: http://blog.pjsip.org > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
IG
Ian Gilmour
Fri, Nov 4, 2016 1:48 PM

Hi Bernhard,

Asterisk 13 currently uses pjproject-2.5.5.

The Asterisk pjproject patches in third-party/pjproject/patches should
apply cleanly to that pjproject version (whether bundled or not).

Yes these patches are now in the current pjproject svn trunk but
pjproject trunk will also include a lot more (potentially not fully
tested) changes besides those.

I would try manually applying the Asterisk pjproject patches to the
pjproject 2.5.5 release, then build pjproject.

Then test this with Asterisk 13.12.1 or 13.11.2 and see if the problem
persists.

If it does then I'm out of ideas - but hopefully someone else may be
able to help.

Good luck.

Ian

On 04/11/2016 13:09, Bernhard Schmidt wrote:

Hi Ian,

There have been some recent additions to the set of pjproject patches
added to the current asterisk 13 branch (all post asterisk 13.12.1).

See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and
associated jira issues) for details.

They may be relevant to your problem. They do stop the crashes I was
seeing.

None of these patches have reached a stable asterisk/pjproject release
as yet.

Thanks. Unfortunately switching to the bundled pjproject in Asterisk
would be pretty hard for Debian packaging, and since that one seems to
be on an older level anyway it will probably not have the same issue.

I have just tried the latest git/svn snapshot of pjproject
(https://github.com/pjsip/pjproject/) and I'm seeing the same crash as
before. This one should include the DNS and SSL crash fixes that were
mentioned in Asterisk JIRA.

Bernhard


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Hi Bernhard, Asterisk 13 currently uses pjproject-2.5.5. The Asterisk pjproject patches in third-party/pjproject/patches should apply cleanly to that pjproject version (whether bundled or not). Yes these patches are now in the current pjproject svn trunk but pjproject trunk will also include a lot more (potentially not fully tested) changes besides those. I would try manually applying the Asterisk pjproject patches to the pjproject 2.5.5 release, then build pjproject. Then test this with Asterisk 13.12.1 or 13.11.2 and see if the problem persists. If it does then I'm out of ideas - but hopefully someone else may be able to help. Good luck. Ian On 04/11/2016 13:09, Bernhard Schmidt wrote: > Hi Ian, > >> There have been some recent additions to the set of pjproject patches >> added to the current asterisk 13 branch (all post asterisk 13.12.1). >> >> See https://issues.asterisk.org/jira/browse/ASTERISK-26344 (and >> associated jira issues) for details. >> >> They may be relevant to your problem. They do stop the crashes I was >> seeing. >> >> None of these patches have reached a stable asterisk/pjproject release >> as yet. > Thanks. Unfortunately switching to the bundled pjproject in Asterisk > would be pretty hard for Debian packaging, and since that one seems to > be on an older level anyway it will probably not have the same issue. > > I have just tried the latest git/svn snapshot of pjproject > (https://github.com/pjsip/pjproject/) and I'm seeing the same crash as > before. This one should include the DNS and SSL crash fixes that were > mentioned in Asterisk JIRA. > > Bernhard > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
GJ
George Joseph
Fri, Nov 4, 2016 1:54 PM

On Fri, Nov 4, 2016 at 3:12 AM, Bernhard Schmidt berni@birkenwald.de
wrote:

Hi,

I have recently uploaded a new version of pjsip into Debian testing (was
2.5.1, now 2.5.5).

We have received reports that Asterisk (13.11.2 and 13.12.1) crash when
making an outbound call through PJSIP as soon as the updated library is
installed. This is the backtrace

When exactly is it crashing?  Are you talking about a running asterisk
crashing when you install the new libraries?  If so, that can happen and
should be expected.

Thread 29 "asterisk" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffad680700 (LWP 24582)]
pjsip_endpt_create_pool (endpt=0x0,
pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)",
initial=initial@entry=256, increment=increment@entry=256)
at ../src/pjsip/sip_endpoint.c:662
662    ../src/pjsip/sip_endpoint.c: No such file or directory.
(gdb)
(gdb) bt full
#0  pjsip_endpt_create_pool (endpt=0x0,
pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)",
initial=initial@entry=256, increment=increment@entry=256)
at ../src/pjsip/sip_endpoint.c:662
pool = <optimized out>
#1  0x00007ffff0c74ea2 in pjsip_inv_create_uac (dlg=0x555555cf5eb8,
local_sdp=0x0, options=3, p_inv=0x7fffad67fc40) at
../src/pjsip-ua/sip_inv.c:851
status = <optimized out>
#2  0x00007fffb09c1b3b in ast_sip_session_create_outgoing () from
/usr/lib/asterisk/modules/res_pjsip_session.so
No symbol table info available.
#3  0x00007fff8aa90cad in ?? () from /usr/lib/asterisk/modules/
chan_pjsip.so
No symbol table info available.
#4  0x00007fffb1402e10 in ?? () from /usr/lib/asterisk/modules/res_
pjsip.so
No symbol table info available.

without -DNDEBUG an assertion is thrown

asterisk: ../src/pj/os_core_unix.c:1254: pj_mutex_lock: Assertion
`mutex' failed. (Asterisk 13.11.2 compiled against 2.5.1)

or

asterisk: ../src/pjsip/sip_auth_client.c:507: pjsip_auth_clt_deinit:
Assertion `sess && sess->endpt' failed.
Aborted (Asterisk 13.12.1 compiled against 2.5.5)

See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842878

Can anyone give some help here? We need to fix this pretty soon if we
want to get pjproject/Asterisk into the next Debian release.

Bernhard


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

--
George Joseph
Digium, Inc. | Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

On Fri, Nov 4, 2016 at 3:12 AM, Bernhard Schmidt <berni@birkenwald.de> wrote: > Hi, > > I have recently uploaded a new version of pjsip into Debian testing (was > 2.5.1, now 2.5.5). > > We have received reports that Asterisk (13.11.2 and 13.12.1) crash when > making an outbound call through PJSIP as soon as the updated library is > installed. This is the backtrace > When exactly is it crashing? Are you talking about a running asterisk crashing when you install the new libraries? If so, that can happen and should be expected. > > Thread 29 "asterisk" received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0x7fffad680700 (LWP 24582)] > pjsip_endpt_create_pool (endpt=0x0, > pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)", > initial=initial@entry=256, increment=increment@entry=256) > at ../src/pjsip/sip_endpoint.c:662 > 662 ../src/pjsip/sip_endpoint.c: No such file or directory. > (gdb) > (gdb) bt full > #0 pjsip_endpt_create_pool (endpt=0x0, > pool_name=pool_name@entry=0x555555cf5eb8 "inv(nil)", > initial=initial@entry=256, increment=increment@entry=256) > at ../src/pjsip/sip_endpoint.c:662 > pool = <optimized out> > #1 0x00007ffff0c74ea2 in pjsip_inv_create_uac (dlg=0x555555cf5eb8, > local_sdp=0x0, options=3, p_inv=0x7fffad67fc40) at > ../src/pjsip-ua/sip_inv.c:851 > status = <optimized out> > #2 0x00007fffb09c1b3b in ast_sip_session_create_outgoing () from > /usr/lib/asterisk/modules/res_pjsip_session.so > No symbol table info available. > #3 0x00007fff8aa90cad in ?? () from /usr/lib/asterisk/modules/ > chan_pjsip.so > No symbol table info available. > #4 0x00007fffb1402e10 in ?? () from /usr/lib/asterisk/modules/res_ > pjsip.so > No symbol table info available. > > without -DNDEBUG an assertion is thrown > > asterisk: ../src/pj/os_core_unix.c:1254: pj_mutex_lock: Assertion > `mutex' failed. (Asterisk 13.11.2 compiled against 2.5.1) > > or > > asterisk: ../src/pjsip/sip_auth_client.c:507: pjsip_auth_clt_deinit: > Assertion `sess && sess->endpt' failed. > Aborted (Asterisk 13.12.1 compiled against 2.5.5) > > See also https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842878 > > Can anyone give some help here? We need to fix this pretty soon if we > want to get pjproject/Asterisk into the next Debian release. > > Bernhard > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > -- George Joseph Digium, Inc. | Software Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: www.digium.com & www.asterisk.org
JC
Joshua Colp
Fri, Nov 4, 2016 2:24 PM

On Fri, Nov 4, 2016, at 10:54 AM, George Joseph wrote:

On Fri, Nov 4, 2016 at 3:12 AM, Bernhard Schmidt berni@birkenwald.de
wrote:

Hi,

I have recently uploaded a new version of pjsip into Debian testing (was
2.5.1, now 2.5.5).

We have received reports that Asterisk (13.11.2 and 13.12.1) crash when
making an outbound call through PJSIP as soon as the updated library is
installed. This is the backtrace

When exactly is it crashing?  Are you talking about a running asterisk
crashing when you install the new libraries?  If so, that can happen and
should be expected.

As well the structures in PJSIP are not guaranteed to be compatible
between versions, the layout can change. This can result in a backtrace
like you've seen. Asterisk needs to be recompiled against the latest
version.

--
Joshua Colp
Digium, Inc. | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: www.digium.com & www.asterisk.org

On Fri, Nov 4, 2016, at 10:54 AM, George Joseph wrote: > On Fri, Nov 4, 2016 at 3:12 AM, Bernhard Schmidt <berni@birkenwald.de> > wrote: > > > Hi, > > > > I have recently uploaded a new version of pjsip into Debian testing (was > > 2.5.1, now 2.5.5). > > > > We have received reports that Asterisk (13.11.2 and 13.12.1) crash when > > making an outbound call through PJSIP as soon as the updated library is > > installed. This is the backtrace > > > > When exactly is it crashing? Are you talking about a running asterisk > crashing when you install the new libraries? If so, that can happen and > should be expected. As well the structures in PJSIP are not guaranteed to be compatible between versions, the layout can change. This can result in a backtrace like you've seen. Asterisk needs to be recompiled against the latest version. -- Joshua Colp Digium, Inc. | Senior Software Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: www.digium.com & www.asterisk.org
BS
Bernhard Schmidt
Fri, Nov 4, 2016 10:01 PM

On 04.11.2016 14:54, George Joseph wrote:

 I have recently uploaded a new version of pjsip into Debian testing (was
 2.5.1, now 2.5.5).

 We have received reports that Asterisk (13.11.2 and 13.12.1) crash when
 making an outbound call through PJSIP as soon as the updated library is
 installed. This is the backtrace

When exactly is it crashing?  Are you talking about a running asterisk
crashing when you install the new libraries?  If so, that can happen and
should be expected.

No, a newly started Asterisk of course. First outbound call with PJSIP
causes this segfault, reproducible.

Normally a daemon copes fine when a library is replaced, but even if an
Asterisk on the old library would segfault when the library is replaced
would be a minor bug (if any).

I will have a look at Ian's suggestion (pjproject 2.5.5 plus the patches
in
https://github.com/asterisk/asterisk/tree/master/third-party/pjproject/patches)
next.

@Alexei:

  1. You should get the latest snapshot of pjproject from SVN repo
    http://svn.pjproject.net/repos/pjproject/trunk

I was (almost, I was using the github repo which lags a few commits
behind the SVN repo).

  1. If you use the pjproject only for an asterisk you should use
    the bundled version or manually make the pjproject package
    with the necessary patches and build options.
    See asterisk/third-party/pjproject

This is unfortunately not really an option. This is a library packaged
for Debian, even though it is at this time solely used by Asterisk I
cannot just package a "fork" under the same name.

Bernhard

On 04.11.2016 14:54, George Joseph wrote: > > I have recently uploaded a new version of pjsip into Debian testing (was > 2.5.1, now 2.5.5). > > We have received reports that Asterisk (13.11.2 and 13.12.1) crash when > making an outbound call through PJSIP as soon as the updated library is > installed. This is the backtrace > > > When exactly is it crashing? Are you talking about a running asterisk > crashing when you install the new libraries? If so, that can happen and > should be expected. No, a newly started Asterisk of course. First outbound call with PJSIP causes this segfault, reproducible. Normally a daemon copes fine when a library is replaced, but even if an Asterisk on the old library would segfault when the library is replaced would be a minor bug (if any). I will have a look at Ian's suggestion (pjproject 2.5.5 plus the patches in https://github.com/asterisk/asterisk/tree/master/third-party/pjproject/patches) next. @Alexei: > 1. You should get the latest snapshot of pjproject from SVN repo > http://svn.pjproject.net/repos/pjproject/trunk I was (almost, I was using the github repo which lags a few commits behind the SVN repo). > 2. If you use the pjproject only for an asterisk you should use > the bundled version or manually make the pjproject package > with the necessary patches and build options. > See asterisk/third-party/pjproject This is unfortunately not really an option. This is a library packaged for Debian, even though it is at this time solely used by Asterisk I cannot just package a "fork" under the same name. Bernhard
AG
Alexei Gradinari
Fri, Nov 4, 2016 10:47 PM

Hello Bernhard,

Friday, November 4, 2016, 6:01:54 PM, you wrote:

  1. If you use the pjproject only for an asterisk you should use
    the bundled version or manually make the pjproject package
    with the necessary patches and build options.
    See asterisk/third-party/pjproject

This is unfortunately not really an option. This is a library packaged
for Debian, even though it is at this time solely used by Asterisk I
cannot just package a "fork" under the same name.

The asterisk package should be compiled with the bundled pjproject.
In this case the asterisk package will not use the system
library of pjproject.

Regards,
Alexei

Hello Bernhard, Friday, November 4, 2016, 6:01:54 PM, you wrote: >> 2. If you use the pjproject only for an asterisk you should use >> the bundled version or manually make the pjproject package >> with the necessary patches and build options. >> See asterisk/third-party/pjproject > This is unfortunately not really an option. This is a library packaged > for Debian, even though it is at this time solely used by Asterisk I > cannot just package a "fork" under the same name. The asterisk package should be compiled with the bundled pjproject. In this case the asterisk package will not use the system library of pjproject. Regards, Alexei
BS
Bernhard Schmidt
Sun, Nov 6, 2016 4:46 PM

On 04.11.2016 23:47, Alexei Gradinari wrote:

Hi Alexei,

Friday, November 4, 2016, 6:01:54 PM, you wrote:

  1. If you use the pjproject only for an asterisk you should use
    the bundled version or manually make the pjproject package
    with the necessary patches and build options.
    See asterisk/third-party/pjproject

This is unfortunately not really an option. This is a library packaged
for Debian, even though it is at this time solely used by Asterisk I
cannot just package a "fork" under the same name.

The asterisk package should be compiled with the bundled pjproject.
In this case the asterisk package will not use the system
library of pjproject.

This is not allowed or severely disencouraged in most distributions, for
very good reasons.

https://fedoraproject.org/wiki/Bundled_Libraries
https://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles

Bernhard

On 04.11.2016 23:47, Alexei Gradinari wrote: Hi Alexei, > Friday, November 4, 2016, 6:01:54 PM, you wrote: >>> 2. If you use the pjproject only for an asterisk you should use >>> the bundled version or manually make the pjproject package >>> with the necessary patches and build options. >>> See asterisk/third-party/pjproject > >> This is unfortunately not really an option. This is a library packaged >> for Debian, even though it is at this time solely used by Asterisk I >> cannot just package a "fork" under the same name. > > The asterisk package should be compiled with the bundled pjproject. > In this case the asterisk package will not use the system > library of pjproject. This is not allowed or severely disencouraged in most distributions, for very good reasons. https://fedoraproject.org/wiki/Bundled_Libraries https://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles Bernhard