[pjsip] os_core_unix.c:1201: pj_mutex_lock: Assertion `mutex' failed
cjs at cynic.net
Tue Feb 28 01:41:23 EST 2012
I'm using PJSIP 2.0-beta (2011/12/29). In one fairly simple application
I have an endpoint that sets up a TLS transport and then attempts to
make a call to an arbitrary SIP(S) URI.
When I make a call to a SIPS URI with a host part that resolves to an
IP address, albeit one with nobody listening for SIP connections on it,
the program fails in the appropriate manner. However, when I make a call
with a SIPS URI that does not resolve in DNS (i.e., there's no A or any
other type of record for it), the program instead dies due to an ABRT
(6) signal, which appears to be due to the following assertion failure:
../src/pj/os_core_unix.c:1201: pj_mutex_lock: Assertion `mutex' failed.
The logging I get to this point (at level five) is:
15:34:40.773 pjsua_call.c Making call with acc #0 to sips:mixer-1 at bank-a.atp.cynic.net
15:34:40.773 dlg0x9f4acf4 .UAC dialog created
15:34:40.773 dlg0x9f4acf4 ..Session count inc to 1 by mod-pjsua
15:34:40.773 pjsua_media.c .Call 0: initializing media..
15:34:40.773 pjsua_media.c ..RTP socket reachable at 192.168.5.34:40000
15:34:40.773 pjsua_media.c ..RTCP socket reachable at 192.168.5.34:40001
15:34:40.773 pjsua_media.c ..Media index 0 selected for audio call 0
15:34:40.773 dlg0x9f4acf4 ..Session count dec to 1 by mod-pjsua
15:34:40.773 dlg0x9f4acf4 .Module mod-invite added as dialog usage, data=0x9f4b50c
15:34:40.773 dlg0x9f4acf4 ..Session count inc to 3 by mod-invite
15:34:40.773 dlg0x9f4acf4 .Module mod-100rel added as dialog usage, data=0x9f505f4
15:34:40.773 dlg0x9f4acf4 .100rel module attached
15:34:40.773 inv0x9f4acf4 .UAC invite session created for dialog dlg0x9f4acf4
15:34:40.773 endpoint .Request msg INVITE/cseq=28626 (tdta0x9f506a0) created.
15:34:40.773 inv0x9f4acf4 ..Sending Request msg INVITE/cseq=28626 (tdta0x9f506a0)
15:34:40.773 dlg0x9f4acf4 ...Sending Request msg INVITE/cseq=28626 (tdta0x9f506a0)
15:34:40.773 tsx0x9f526b4 ....Transaction created for Request msg INV
15:34:40.773 tsx0x9f526b4 ...Sending Request msg INVITE/cseq=28625 (tdta0x9f506a0) in state Null
15:34:40.773 sip_resolve.c ....DNS resolver not available, target 'bank-a.atp.cynic.net:0' type=TLS will be resolved with getaddrinfo()
15:34:40.828 sip_resolve.c ....Failed to resolve 'bank-a.atp.cynic.net'. Err=70018 (gethostbyname() has returned error (PJ_ERESOLVE))
15:34:40.828 tsx0x9f526b4 ....Failed to send Request msg INVITE/cseq=28625 (tdta0x9f506a0)! err=70018 (gethostbyname() has returned error (PJ_ERESOLVE))
15:34:40.828 tsx0x9f526b4 ....State changed from Null to Terminated, event=TRANSPORT_ERROR
15:34:40.828 dlg0x9f4acf4 .....Transaction tsx0x9f526b4 state changed to Terminated
Call 0 State: DISCONNCTD
15:34:40.828 pjsua_media.c .......Call 0: deinitializing media..
15:34:40.828 pjsua_media.c .........Media session call00:0 is destroyed
15:34:40.828 dlg0x9f4acf4 .......Session count dec to 3 by mod-invite
15:34:40.828 pjsua_call.c .Unable to send initial INVITE request: gethostbyname() has returned error (PJ_ERESOLVE) [status=70018]
Call 0 State:
15:34:40.828 dlg0x9f4acf4 .Dialog destroyed
15:34:40.828 pjsua_media.c .Call 0: deinitializing media..
Looks like a bug in PJSIP, given that it's an assertion failure. Anybody
have a fix, or ideas on where this is going wrong, or even thoughts on
how I might debug this?
Curt Sampson <cjs at cynic.net> +81 90 7737 2974
I have always wished for my computer to be as easy to use as my telephone;
my wish has come true because I can no longer figure out how to use my
telephone. --Bjarne Stroustrup
More information about the pjsip