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 ITE/cseq=28625 (tdta0x9f506a0) 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? cjs -- Curt Sampson <cjs at cynic.net> +81 90 7737 2974 http://www.starling-software.com/ 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