Hi, all, I am new to this mail list. I have built sofia-sip-1.12.11 under XP SP3 and tried the test programs.
I have noticed strange behaviors of the test program test_nua.exe when running in release version. I have tried to compiled with Visual studio 2003, visual studio 2005 and visual studio 2010 express. All the debug versions of test_nua.exe compiled with these three compilers run well; but the release versions hang in the middle of the running, I have attached the log information got when I ran these programs in verbose mode. Please take a look at it and give me some advices on the possible reasons why these release versions have issues and how to tune them up to make them work. Thanks! -Allen --------------------------------- ---------------- visual studio 2003, release version, run as: test_nua.exe -v ------------------ --------- the test_nua.exe halt at the last line "test_nua: ok: (!e->next)" during performing the test "TEST NUA-3.6: Basic call" --- ---------------------- TEST NUA-3.6: Basic call test_nua: testing a_call->nh = nua_handle(a->nua, a_call, siptag_to, (tag_value_t)(b->to), (tag_type_t)0, (tag_value_t)0) test_nua: ok: (a_call->nh = nua_handle(a->nua, a_call, siptag_to, (tag_value_t)(b->to), (tag_type_t)0, (tag_value_t)0)) test_nua: testing !nua_handle_has_active_call(a_call->nh) test_nua: ok: (!nua_handle_has_active_call(a_call->nh)) test_nua: testing !nua_handle_has_call_on_hold(a_call->nh) test_nua: ok: (!nua_handle_has_call_on_hold(a_call->nh)) nta: trying to cancel completed request nua(01884610): INVITE: ignoring duplicate SDP in 200 OK test_nua: testing nua_handle_has_active_call(a_call->nh) test_nua: ok: (nua_handle_has_active_call(a_call->nh)) test_nua: testing !nua_handle_has_call_on_hold(a_call->nh) test_nua: ok: (!nua_handle_has_call_on_hold(a_call->nh)) test_nua: testing nua_handle_has_active_call(b_call->nh) test_nua: ok: (nua_handle_has_active_call(b_call->nh)) test_nua: testing !nua_handle_has_call_on_hold(b_call->nh) test_nua: ok: (!nua_handle_has_call_on_hold(b_call->nh)) test_nua: testing e = a->events->head test_nua: ok: (e = a->events->head) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_calling test_nua: ok: callstate(e->data->e_tags) == nua_callstate_calling test_nua: testing is_offer_sent(e->data->e_tags) test_nua: ok: (is_offer_sent(e->data->e_tags)) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_r_invite) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_r_invite) test_nua: testing e->data->e_status == 180 test_nua: ok: e->data->e_status == 180 test_nua: testing sip = sip_object(e->data->e_msg) test_nua: ok: (sip = sip_object(e->data->e_msg)) test_nua: testing sip->sip_payload test_nua: ok: (sip->sip_payload) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_proceeding test_nua: ok: callstate(e->data->e_tags) == nua_callstate_proceeding test_nua: testing is_answer_recv(e->data->e_tags) test_nua: ok: (is_answer_recv(e->data->e_tags)) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_r_invite) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_r_invite) test_nua: testing e->data->e_status == 200 test_nua: ok: e->data->e_status == 200 test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_ready test_nua: ok: callstate(e->data->e_tags) == nua_callstate_ready test_nua: testing !e->next test_nua: ok: (!e->next) test_nua: testing e = b->events->head test_nua: ok: (e = b->events->head) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_invite) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_invite) test_nua: testing e->data->e_status == 100 test_nua: ok: e->data->e_status == 100 test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_received test_nua: ok: callstate(e->data->e_tags) == nua_callstate_received test_nua: testing is_offer_recv(e->data->e_tags) test_nua: ok: (is_offer_recv(e->data->e_tags)) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_early test_nua: ok: callstate(e->data->e_tags) == nua_callstate_early test_nua: testing is_answer_sent(e->data->e_tags) test_nua: ok: (is_answer_sent(e->data->e_tags)) test_nua: testing tl_find(e->data->e_tags, soatag_local_sdp) test_nua: ok: (tl_find(e->data->e_tags, soatag_local_sdp)) test_nua: testing b_sdp = sdp_session_dup(((su_home_t *)(a_call->nh)), (sdp_session_t *) tl_find(e->data->e_tags, soatag_local_sdp) ->t_value) test_nua: ok: (b_sdp = sdp_session_dup(((su_home_t *)(a_call->nh)), (sdp_session_t *) tl_find(e->data->e_tags, soatag_local_sdp) ->t_value)) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_completed test_nua: ok: callstate(e->data->e_tags) == nua_callstate_completed test_nua: testing is_answer_sent(e->data->e_tags) test_nua: ok: (is_answer_sent(e->data->e_tags)) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_ack) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_ack) test_nua: testing e = e->next test_nua: ok: (e = e->next) test_nua: testing nua_event_name(e->data->e_event) is nua_event_name(nua_i_state) test_nua: ok: nua_event_name(e->data->e_event) == nua_event_name(nua_i_state) test_nua: testing callstate(e->data->e_tags) == nua_callstate_ready test_nua: ok: callstate(e->data->e_tags) == nua_callstate_ready test_nua: testing !e->next test_nua: ok: (!e->next) ---------------------- ---------------- visual studio 2005, release version, run as: test_nua.exe -v ------------------ --------- the following each "trying to cancel ..." halt quite some time, and keep poping up like this --- TEST NUA-9.1.4: A invites C test_nua: testing a_c2->nh = nua_handle(a->nua, a_c2, siptag_to, (tag_value_t)(to), (tag_type_t)0, (tag_value_t)0) test_nua: ok: (a_c2->nh = nua_handle(a->nua, a_c2, siptag_to, (tag_value_t)(to), (tag_type_t)0, (tag_value_t)0)) nta: trying to cancel completed request nua(01F3A960): handle with session and nua(0203E2F8): handle with session and nta: trying to cancel completed request nta: trying to cancel completed request nta: trying to cancel completed request nta: trying to cancel completed request nta: trying to cancel completed request nua(018D7218): strange ACK from <sip:al...@example.com> nta: trying to cancel completed request ------------------------------------------------------------------------ ---------------- visual studio 2010 express, release version, run as: test_nua.exe -v ------------------ --------- the following each "trying to cancel ..." halt quite some time, and keep poping up like this --- TEST NUA-9.1.4: A invites C test_nua: testing a_c2->nh = nua_handle(a->nua, a_c2, siptag_to, (tag_value_t)(to), (tag_type_t)0, (tag_value_t)0) test_nua: ok: (a_c2->nh = nua_handle(a->nua, a_c2, siptag_to, (tag_value_t)(to), (tag_type_t)0, (tag_value_t)0)) nta: trying to cancel completed request nua(01F31F30): handle with session and nua(01F1A5D0): handle with session and nta: trying to cancel completed request nta: trying to cancel completed request nta: trying to cancel completed request nta: trying to cancel completed request nta: trying to cancel completed request ------------------------------------------------------------------------- ------------------------------------------------------------------------------ Enable your software for Intel(R) Active Management Technology to meet the growing manageability and security demands of your customers. Businesses are taking advantage of Intel(R) vPro (TM) technology - will your software be a part of the solution? Download the Intel(R) Manageability Checker today! http://p.sf.net/sfu/intel-dev2devmar _______________________________________________ Sofia-sip-devel mailing list Sofia-sip-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel