Issue: ICE and "pj_sockaddr_has_addr()"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

there is probably a cosmetic issue in pjsip-2.2.1 and pjsip-2.3 releases
regarding the above mentioned function call, especially in "ice-mode",
which can be demonstrated by running two copies of pjsip-apps/bin/pjsua
against each other:

having started

    pjsip-apps/bin/pjsua

on 192.168.2.100 and then

    pjsip-apps/bin/pjsua  --use-ice

on 192.168.2.200 and then calling 192.168.2.100, finally after a while
typing

    dq

on 192.168.2.100 shows

  [CONFIRMED] To: <sip:192.168.2.200>;tag=Broa5SEfTXc53Ma3ydLAsF35w.DzJTa1
    Call time: 00h:00m:22s, 1st res in 2110 ms, conn in 2622ms
    #0 audio speex @16kHz, sendrecv, peer=192.168.2.200:4011
       SRTP status: Not active Crypto-suite:

    [... etc ...]


(which is OK as this endpoint has no ice activated);  but 'dq' on
192.168.2.200 shows

  [CONFIRMED] To: sip:192.168.2.100;tag=r21N27dVpRqJtrciRy7hSgwowSkU7DA7
    Call time: 00h:00m:33s, 1st res in 2363 ms, conn in 2629ms
    #0 audio speex @16kHz, sendrecv, peer=-
       SRTP status: Not active Crypto-suite:
       ICE role: Unknown, state: Candidate Gathering, comp_cnt: 2

    [... etc ...]



It looks like here above the "peer=-" means that

    if (pj_sockaddr_has_addr(&tp_info.src_rtp_name)) ...

fails in ./pjsip/src/pjsua-lib/pjsua_dump.c on 192.168.2.200, and so does

    if (pj_sockaddr_has_addr(&ii->comp[jj].rcand_addr)) ...


(having forcefully entered the 'for (jj=0;
ii->sess_state==PJ_ICE_STRANS_STATE_RUNNING && jj<2; ++jj)' loop).

 *****

Media connection by itself is up and fine but how to determine the
remote endpoint IP-address programmatically by pjsip APIs in such a case
if ICE negotiation failed?

    Eeri Kask



[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux