Custom Query (2195 matches)
Results (1901 - 2000 of 2195)
Ticket | Summary | Owner | Type | Priority | Milestone | Component |
---|---|---|---|---|---|---|
#1746 | Assertion in sip_transaction.c when ACK and retransmit timer events occur simultaneously | bennylp | defect | normal | release-2.2.1 | pjsip |
Description |
Assertion:
The scenario is as follows:
|
|||||
#1404 | Assertion in receiving SDP video offer containing static payload type | nanang | defect | normal | release-2.0-beta | pjmedia |
Description |
Example: m=video 55894 RTP/AVP 31 123 a=rtpmap:123 H264/90000 a=fmtp:123 profile-level-id=42801f;packetization-mode=0;level-asymmetry-allowed=1 |
|||||
#1433 | Assertion in re-enable video when ICE is enabled | bennylp | defect | normal | release-2.0-beta | pjsua-lib |
Description |
When ICE transport initialization is to be done in synchronized mode, currently PJSUA always releases PJSUA lock first to let other thread use the lock while waiting for the transport initialization, however if the lock is actually not being held by this thread, it will trigger assertion. |
|||||
#1987 | Assertion in re-INVITE with PJSUA_CALL_REINIT_MEDIA | bennylp | defect | normal | release-2.6 | pjsua-lib |
Description |
Scenario:
After investigation, we found that pjsua_media_channel_init() with PJSUA_CALL_REINIT_MEDIA causes call->med_prov_cnt==1 due to PJSUA_CALL_INCLUDE_DISABLED_MEDIA flag is not set, but pjmedia_sdp_neg_modify_local_offer2() adds a new m= line (i.e: disabled video from current active local SDP) to the SDP to maintain the media count (as mandated by standard). Eventually as call->med_prov_cnt is less than the number of m= line, assertion is raised. Thanks Nadia Lapkovskaya for the report. |
|||||
#2027 | Assertion in pj_gethostip() when system hostname is empty | bennylp | defect | normal | release-2.7 | pjlib |
Description |
Reported that when calling pj_gethostip() on a system whose empty hostname, pj_getaddrinfo() will raise assert at this line: PJ_ASSERT_RETURN(nodename->ptr && nodename->slen, PJ_EINVAL); Thanks Denis Poltorak for the report. |
|||||
#844 | Assertion in on_rx_rtp(transport_udp.c) possibly due to race condition (thanks Peter Cai and Michael Broughton for the report) | nanang | defect | normal | release-1.3 | pjmedia |
Description |
See this post on PJSIP mailing list. It is suspected that this may be caused by a race condition. |
|||||
#1580 | Assertion in local SDP validation when using SRTP mandatory and receiving offer with SRTP optional duplicated media | bennylp | defect | normal | release-2.1 | pjsua-lib |
Description |
Reproducing steps:
Thanks Peter Koletzki for the report. |
|||||
#1427 | Assertion in initiating video in an audio only call | bennylp | defect | normal | release-2.0-beta | pjsua-lib |
Description |
Steps to reproduce:
Assertion raised in pjsua_media_channel_update() in pjsua_media.c:2689: PJ_ASSERT_RETURN(neg && !pjmedia_sdp_neg_was_answer_remote(neg), PJMEDIA_SDPNEG_EINSTATE); |
|||||
#1403 | Assertion in generating SDP re-offer containing unknown media types | bennylp | defect | normal | release-2.0-beta | pjsua-lib |
Description |
Unknown media types may be introduced by previous remote offer and those unknown media types are not handled correctly in generating re-offer. |
|||||
#943 | Assertion in destroying stream port with SRTP in MIPS test | nanang | defect | normal | release-1.4 | pjmedia |
Description |
Transport loop don't like to be detached twice. Firstly at stream destroy(), secondly at transport destroy() (transport SRTP destroy() calls detach() of member transport). |
|||||
#1946 | Assertion in deinitializing client auth session when dialog creation fails | bennylp | defect | normal | release-2.6 | pjsip |
Description |
Reported that a segmentation fault occurs after upgrading to PJSIP 2.5.5 and the investigation leads to deinitialization of uninitialized client auth session when dialog creation fails. Note that pjsip_auth_clt_deinit() has this validity check: PJ_ASSERT_RETURN(sess && sess->endpt, PJ_EINVAL); and in dialog creation, sess->endpt should be NULL when client auth session is uninitialized. So the deinitialization of uninitialized session will raise assertion on debug mode, or return error on NDEBUG mode, or crash when accessing NULL pointer when PJ_ENABLE_EXTRA_CHECK is turned off. Thanks to Pirmin Walthert for the report and the analysis. Original report can be found here. |
|||||
#1345 | Assertion in codec operations caused by too small supplied buffer size. | nanang | defect | normal | release-2.0-alpha | pjmedia |
Description |
This is caused by a bug in samples-per-frame calculation PJMEDIA_SPF(). So applications that use PJMEDIA_SPF() for allocating buffer will get "too small buffer size" error or assertion from codec. |
|||||
#1923 | Assertion in answering call from onIncomingCall() callback | bennylp | defect | normal | release-2.5.1 | pjsua2 |
Description |
onIncomingCall() callback may be simulated by onCreateMediaTransport() (see #1916). And if app happens to answer the call from the callback, assertion is raised: Assertion failed: inv->last_answer, file pjsip/src/pjsip-ua/sip_inv.c, line 2321 Call stack: abort() Line 59 + 0x7 bytes C _wassert(const wchar_t * expr=0x00820b4c, const wchar_t * filename=0x0081fc60, unsigned int lineno=2321) Line 212 C pjsip_inv_answer(pjsip_inv_session * inv=0x02ac9244, int st_code=200, const pj_str_t * st_text=0x00000000, const pjmedia_sdp_session * local_sdp=0x00000000, pjsip_tx_data * * p_tdata=0x034ae44c) Line 2321 + 0x2b bytes C pjsua_call_answer2(int call_id=0, const pjsua_call_setting * opt=0x00000000, unsigned int code=200, const pj_str_t * reason=0x00000000, const pjsua_msg_data * msg_data=0x00000000) Line 2261 + 0x1a bytes C pj::Call::answer(const pj::CallOpParam & prm={...}) Line 498 + 0x1f bytes C++ MyAccount::onIncomingCall(pj::OnIncomingCallParam & iprm={...}) Line 91 C++ pj::Endpoint::on_incoming_call(int acc_id=0, int call_id=0, pjsip_rx_data * rdata=0x02ac5b84) Line 622 C++ pj::Endpoint::on_create_media_transport(int call_id=0, unsigned int media_idx=0, pjmedia_transport * base_tp=0x02acdbc4, unsigned int flags=1) Line 1247 + 0x1a bytes C++ media_channel_init_cb(int call_id=0, const pjsua_med_tp_state_info * info=0x00000000) Line 1646 + 0x19 bytes C pjsua_media_channel_init(int call_id=0, pjsip_role_e role=PJSIP_ROLE_UAS, int security_level=0, pj_pool_t * tmp_pool=0x02ac0f90, const pjmedia_sdp_session * rem_sdp=0x02ac39a0, int * sip_err_code=0x034af564, int async=1, int (int, const pjsua_med_tp_state_info *)* cb=0x005e0a70) Line 2029 + 0xb bytes C pjsua_call_on_incoming(pjsip_rx_data * rdata=0x02ac1fe4) Line 1492 + 0x29 bytes C An idea is to delay the call-answer until initial answer is sent and some other call initializations are done. |
|||||
#1717 | Assertion in accessing conference from on_call_state() callback while pjsua destroy is on progress (thanks Johan Lantz for the report) | bennylp | defect | normal | release-2.2 | pjsua-lib |
Description |
Reported that while destroying pjsua, on_call_state() callback is called (for call disconnection), and from the callback app tries to disconnect conference bridge ports, but unfortunately media subsystem, including the conference bridge, has been destroyed at that point, so assertion is raised. |
|||||
#1551 | Assertion in TURN code when shutdown or destroy is called more than once (thanks Guilherme Balena Versiani for the report) | bennylp | defect | normal | release-2.1 | pjnath |
Description |
Assertion will be raised for the titled scenario, with the following stack trace: 8 __assert_fail() 7 send_refresh() pjnath/src/pjnath/turn_session.c:886 6 sess_shutdown() pjnath/src/pjnath/turn_session.c:424 5 pj_turn_session_shutdown() pjnath/src/pjnath/turn_session.c:457 4 pj_turn_sock_destroy() pjnath/src/pjnath/turn_sock.c:238 |
|||||
#1470 | Assertion in SIP transaction module init when restarting pjsua (thanks Roni Salfati for the report) | bennylp | defect | normal | release-1.14 | common |
Description |
The assertion line: Assertion failed: mod_tsx_layer.endpt==((void *)0), file pjsip\src\pjsip\sip_transaction.c, line 436 This assertion doesn't always happen, however it is reproducible with a special test app containing a loop of: pjsua create+init+start, register, making call, call hold/unhold, call hangup, pjsua destroy. Supplying non-zero flag to the pjsua_destroy2() will lead to the assertion faster. |
|||||
#971 | Assertion in ICE with regular nomination strategy when registering timer | bennylp | defect | normal | release-1.5 | pjnath |
Description |
Assertion in function start_nominated_check() in ice_session.c when regular nomination is being used. |
|||||
#1554 | Assertion in ICE when STUN resolution yields a same address as one of the host candidate and there is only one host candidate exists (thanks Claudio De Angelis for the report) | bennylp | defect | normal | release-2.1 | pjnath |
Description |
This can be reproduced by limiting host candidate to one with "media_cfg.ice_max_host_cands = 1", and setting the STUN server in the same LAN. This bug was introduced by changeset r4133 for ticket #1512 for milestone:release-2.0. Also fix another assertion caused by ICE strans that is allowed to run without any candidates. This happens in two situations:
|
|||||
#321 | Assertion in ICE stream transport when STUN is not used (thanks Frank Nießen) | bennylp | defect | normal | release-0.8.0 | pjnath |
Description |
This happens when STUN is not used, and remote sends Binding Request when the ICE session has not been created. |
|||||
#1168 | Assertion in ICE stream if TURN initialization fails (e.g. due to unresolvable server) | bennylp | defect | normal | release-1.8.10 | pjnath |
Description |
Assertion is raised for the sample scenario in the title. |
|||||
#1726 | Assertion in ICE connectivity check (thanks Amit Chowdhary for the report) | bennylp | defect | normal | release-2.2 | pjnath |
Description |
This seems to be related to changeset r4652, timer was always cancelled, but now it is not when mod_count==TRUE. Reproducing step:
Assertion line: Assertion failed: (tsx->retransmit_timer.id == 0 || !tsx->require_retransmit), function tsx_transmit_msg, file ../src/pjnath/stun_transaction.c, line 204. |
|||||
#639 | Assertion in <ctype.h> functions with Visual Studio 2005 when handling non-ASCII characters (e.g. UTF-8) | bennylp | defect | normal | release-1.0-rc3 | pjlib |
Description |
With Visual Studion 2005 and possibly later, the ctype.h functions such as isdigit() will raise assertion error if given input with ASCII > 127 character. This is because the functions takes int argument, and ASCII character > 127 will be represented as negative value. |
|||||
#713 | Assertion in "../src/pjsip/sip_util.c:729: pjsip_process_route_set()" (thanks Ramesh D for the report) | bennylp | defect | normal | release-1.1 | pjsip |
Description |
Assertion is triggered when 200/OK is received with strict Record-Route, while the original INVITE request doesn't contain the corresponding Route request. Please see attachment for the log. |
|||||
#714 | Assertion in "../src/pjsip/sip_util.c:729: pjsip_process_route_set()" (thanks Ramesh D for the report) | bennylp | defect | normal | release-1.0.2 | pjsip |
Description |
This is duplicate of ticket #713 for the 1.0 branch. Please see ticket #713 for more info. |
|||||
#1980 | Assertion if remote removes some media lines in previous SDP negotiations | bennylp | defect | normal | release-2.6 | pjsua-lib |
Description |
After remote removes some media lines in previous SDP negotiations, when trying to create an offer, PJSIP will trigger an assertion: Assertion failed: mi < s_->media_count, file pjsip\trunk\pjsip\src\pjsua-lib\pjsua_media.c Scenario:
Thanks to Eize Slange for the report. |
|||||
#1241 | Assertion if remote removes media line | bennylp | defect | normal | release-2.0-dev | pjsua-lib |
Description |
To reproduce:
Ref: voxeo |
|||||
#1238 | Assertion if new media is added during call | bennylp | defect | normal | release-2.0-dev | pjsua-lib |
Description |
Assertion will be raised if remote offers new media during call. |
|||||
#1795 | Assertion if ending 100rel session when invite on early state | bennylp | defect | normal | release-2.4 | pjsip |
Description |
As reported by Brian Walker. Stack trace: pjsip_100rel_end_session (in MobileClient) + 91 inv_set_state (in MobileClient) + 211 inv_on_state_early (in MobileClient) + 685 mod_inv_on_tsx_state (in MobileClient) + 69 pjsip_dlg_on_tsx_state (in MobileClient) + 109 tsx_timer_callback (in MobileClient) + 227 pj_timer_heap_poll (in MobileClient) + 159 pjsip_endpt_handle_events2 (in MobileClient) + 47 worker_thread (in MobileClient) + 65 thread_main (in MobileClient) + 67 Similar report can be found in the mailing list (March 2014): http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2014-March/017290.html |
|||||
#1222 | Assertion if BYE is received while callee is still in early state | bennylp | defect | normal | release-1.10 | pjsip |
Description |
Assertion will be raised when calling pjsip_tsx_set_timeout() in sip_inv.c:3698, if BYE is received while callee is still in early state. This bug may also cause the UAS INVITE transaction to be alive forever. |
|||||
#1062 | Assertion if 200/OK INVITE response is received during PJSUA-LIB destroy sequence | bennylp | defect | minor | release-1.6 | pjsua-lib |
Description |
The pjsua_destroy() function performs event polling during the shutdown sequence. If a 200/OK INVITE response is received during this process, an assertion will be raised:
The assertion happens when negotiating the SDP and calling media update, which causes pjmedia_session_info_from_sdp() to be called. Unfortunately at this point the media endpoint has been destroyed and set to NULL, causing the assertion. |
|||||
#100 | Assertion failure when terminating subscription with PJSUA-API | bennylp | defect | normal | release-0.7.0-rc2 | pjsua-lib |
Description |
Break point: PJ_DEF(pj_status_t) pjsip_evsub_terminate( pjsip_evsub *sub, pj_bool_t notify ) { PJ_ASSERT_RETURN(sub, PJ_EINVAL); Call stack: htmlview.exe!_wassert(const wchar_t * expr=0x006f93c4, const wchar_t * filename=0x0071b380, unsigned int lineno=878) Line 384 htmlview.exe!pjsip_evsub_terminate(pjsip_evsub * sub=0x00000000, int notify=0) Line 878 + 0x1e bytes C htmlview.exe!pjsip_pres_terminate(pjsip_evsub * sub=0x00000000, int notify=0) Line 332 + 0xd bytes C htmlview.exe!unsubscribe_buddy_presence(unsigned int index=0) Line 1050 + 0xe bytes htmlview.exe!refresh_client_subscriptions() Line 1072 + 0x9 bytes C htmlview.exe!pjsua_pres_refresh() Line 1120 C htmlview.exe!pjsua_pres_shutdown() Line 1145 C htmlview.exe!pjsua_destroy() Line 666 C Thanks Edward Tian for reporting this. |
|||||
#347 | Assertion failure when handling incoming presence subscription with Expires=0 | bennylp | defect | normal | release-0.8.0 | pjsip |
#319 | Assertion failure in pjsua when adding buddy with invalid host (thanks Paul Levin) | bennylp | defect | normal | release-0.8.0 | pjsua-lib |
Description |
When a buddy is added with the URL containing invalid or unreachable host, pjsip will raise assert upon trying to destroy the subscription with pjsip_pres_terminate, since the subscription has already been destroyed thus NULL is given. |
|||||
#591 | Assertion failure in ICE session (thanks Pedro Gonçalves for the report) | bennylp | defect | normal | release-1.0-rc1 | pjnath |
Description |
Symptom:
|
|||||
#1399 | Assertion failure if unable to resolve TURN server | bennylp | defect | normal | release-2.0-beta | pjnath |
Description |
Assertion will occur if bad TURN server name is given and nameserver is configured. This is because the DNS error is not propagated to the ICE error. Stack trace: 30 __assert_fail() 0x00007ffff5aeb941 29 pj_sockaddr_get_len() /home/bennylp/Desktop/project/pjsip/2.x/pjlib/src/pj/sock_common.c:386 0x0000000000571248 28 pj_sockaddr_cp() /home/bennylp/Desktop/project/pjsip/2.x/pjlib/src/pj/sock_common.c:409 0x00000000005712f2 27 transport_get_info() /home/bennylp/Desktop/project/pjsip/2.x/pjmedia/src/pjmedia/transport_ice.c:1504 0x00000000004cc5b8 26 pjmedia_transport_get_info() /home/bennylp/Desktop/project/pjsip/2.x/pjmedia/include/pjmedia/transport.h:577 0x00000000004cd3b5 25 transport_get_info() /home/bennylp/Desktop/project/pjsip/2.x/pjmedia/src/pjmedia/transport_srtp.c:698 0x00000000004cea7d 24 pjmedia_transport_get_info() /home/bennylp/Desktop/project/pjsip/2.x/pjmedia/include/pjmedia/transport.h:577 0x0000000000432a3f 23 pjsua_media_channel_create_sdp() /home/bennylp/Desktop/project/pjsip/2.x/pjsip/src/pjsua-lib/pjsua_media.c:1889 0x0000000000435de9 22 on_make_call_med_tp_complete() /home/bennylp/Desktop/project/pjsip/2.x/pjsip/src/pjsua-lib/pjsua_call.c:365 0x0000000000424324 |
|||||
#1409 | Assertion failure if unable to resolve TURN server | bennylp | defect | normal | release-1.12 | pjnath |
Description |
This ticket is for backporting of ticket #1399 which belongs to release-2.0-beta. |
|||||
#1033 | Assertion error when shutting down PJSIP while TCP/TLS connect is in progress and a transaction is waiting (thanks Tamàs Solymosi for the report) | bennylp | defect | normal | release-1.6 | pjsip |
Description |
Assertion in sip_transaction.c when the transaction layer is being unloaded and a transaction is still pending/waiting for transport operation to complete, for example when TCP/TLS transport is connecting to the destination. Typical stack trace: 17 pj_thread_local_get() ..\pjlib\src\pj\os_core_symbian.cpp:699 0x789f0dd4 16 lock_tsx() ..\pjsip\src\pjsip\sip_transaction.c:902 0x78973914 15 send_msg_callback() ..\pjsip\src\pjsip\sip_transaction.c:1642 0x7897543c 14 stateless_send_transport_cb() ..\pjsip\src\pjsip\sip_util.c:1074 0x78987c40 13 transport_send_callback() ..\pjsip\src\pjsip\sip_transport.c:610 0x78978e60 12 on_data_sent() ..\pjsip\src\pjsip\sip_transport_tls.c:1009 0x78981204 11 tls_destroy() ..\pjsip\src\pjsip\sip_transport_tls.c:662 0x7898067c 10 tls_destroy_transport() ..\pjsip\src\pjsip\sip_transport_tls.c:621 0x78980578 9 destroy_transport() ..\pjsip\src\pjsip\sip_transport.c:941 0x78979878 8 pjsip_tpmgr_destroy() ..\pjsip\src\pjsip\sip_transport.c:1258 0x7897a250 7 pjsip_endpt_destroy() ..\pjsip\src\pjsip\sip_endpoint.c:595 0x789643bc 6 pjsua_destroy() ..\pjsip\src\pjsua-lib\pjsua_core.c:1596 0x7892c4f8 |
|||||
#624 | Assertion error when pjsua_acc_del() is followed immediately by pjsua_acc_add() (thanks Dan Åberg and Salahuddin Ahmed for the report) | bennylp | defect | normal | release-1.0-rc3 | pjsua-lib |
Description |
When application is doing reregistration with pjsua_acc_del() followed by pjsua_acc_add(), it may trigger the following assertion: pjsua-i686-pc-linux-gnu: ../src/pjsua-lib/pjsua_acc.c:591: acc_check_nat_addr: Assertion `uri != ((void *)0)' failed. Aborted (core dumped) Thanks Dan Åberg and Salahuddin Ahmed for the report. |
|||||
#641 | Assertion error when late 200/OK is received after call has been disconnected (thanks Dan Åberg for the report) | bennylp | defect | normal | release-1.0-rc3 | pjsip |
Description |
pjsua UAS ----------------------------- INVITE --> 200/OK (INVITE) <-- BYE --> ACK --> 200/OK (BYE) <-- 200/OK (INVITE) <-- ACK -->
To reproduce the error
|
|||||
#300 | Assertion error or handle leak when creating thread with PJ_THREAD_SUSPENDED flag | bennylp | defect | normal | release-0.7.0 | pjlib |
#301 | Assertion error or handle leak when creating thread with PJ_THREAD_SUSPENDED flag | bennylp | defect | normal | release-0.6.0 | pjlib |
Description |
See ticket #300 |
|||||
#320 | Assertion error in pjsua when unregistering/removing account while network is disconnected (thanks Bo Huang) | bennylp | defect | normal | release-0.8.0 | pjsua-lib |
Description |
When pjsua account is removed while the network is disconnected, assertion will be triggered when calling pjsip_regc_destroy() since the regc variable has been set to NULL. |
|||||
#2196 | Assertion due to unset sip error code when media initialization fails during incoming call | ming | defect | normal | release-2.9 | pjsip |
Description |
Stack trace: pjsua_call_on_incoming() pjsip_dlg_respond(dlg, rdata, sip_err_code, NULL, NULL, NULL); pjsip_dlg_create_response() pjsip_endpt_create_response() There is a possibility, when media initialization fails, that sip_err_code is never set (the value is still zero), hence resulting in the assertion in pjsip_endpt_create_response(): PJ_ASSERT_RETURN(st_code >= 100 && st_code <= 699, PJ_EINVAL); |
|||||
#1766 | Assertion due to stray retransmit timer in UAC transaction completed state | bennylp | defect | normal | release-2.3 | pjsip |
Description |
A stray timer may be emitted in UAC transaction completed state (tsx_on_state_completed_uac()) due to concurrency. This happens when state transmission occurs simultaneously when the timer is being fired. We could safely ignore this. The assertion info is as follows: (gdb) frame 4 #4 0x00007fffb7368eba in tsx_on_state_completed_uac at ../src/pjsip/sip_transaction.c:3177 3177 pj_assert(event->body.timer.entry == &tsx->timeout_timer); Thank you Joshua Colp for the report. |
|||||
#1852 | Assertion due to premature destroy of dialog when media channel init fails during incoming call | bennylp | defect | normal | release-2.4.5 | pjsua-lib |
Description |
Scenario (thanks to Fredrik Hansson for the report):
|
|||||
#607 | Assertion and possibly crash in ICE stream transport when client is not behind NAT (thanks Nicolas Fauvel for the report) | bennylp | defect | normal | release-1.0-rc2 | pjnath |
Description |
Symptom:
How to reproduce:
Description:
|
|||||
#1410 | Assertion and noise when using AMR-WB with multiple frames per packet (thanks Olle Frimanson for the report) | nanang | defect | normal | release-1.12 | pjmedia |
Description |
Assertion line: amr_helper.h:922: pjmedia_codec_amr_pack: Assertion `FT <= SID_FT || FT == 14 || FT == 15' failed. After investigation, a fatal bug is found in ipp_codecs.c pack_amr() in setting up AMR-WB frame size, i.e: using AMR-NB frame size table instead of AMR-WB's. This will cause wrong AMR-WB data pointers returned by the encoder (only the first frame gets the correct pointer) and the RTP payload generated (by AMR packetizer) will contain corrupted bitstream. So even if assertion is not raised, e.g: release mode or accidentally packetizer always read valid frame types in the wrong data pointer, this will definitely cause noise. Note that in single frame per packet this issue is never raised as the first frame pointer always points to correct AMR bistream and the AMR packetizer doesn't really read the frame size info supplied by encoder (it uses AMR frame size lookup table instead). |
|||||
#1511 | Assertion after peer removes a media line in an SDP reoffer and adds it back in the next SDP reoffer (thanks Ilya Kalinin for the report) | bennylp | defect | normal | release-2.0 | pjsua-lib |
Description |
The assertion line: Assertion failed: (!"Currently no media transport reuse"), function pjsua_call_media_init, file ../src/pjsua-lib/pjsua_media.c, line 1260. Scenario:
|
|||||
#617 | Assertion "Not enough buffer for SDES packet" when using a very low bandwidth codec (thanks William Wong). | nanang | defect | normal | release-1.0-rc2 | pjmedia |
Description |
Output buffer size of stream is calculated based on codec bandwidth, so when a very low bandwidth codec is used, e.g: MELP 2.4kbps, the calculation result will be too small to hold RTCP SR packet containing SDES. |
|||||
#1864 | Assert and crash when remote remove and add back media lines in SDP | bennylp | defect | normal | release-2.4.5 | pjsua-lib |
Description |
Reported scenarios: Scenario 1 - assertion of "Currently no media transport reuse"
It is caused by improper stopping and clean up of the removed media.
Scenario 2 - crash after accessing invalid call_med->tp pointer
This seems to be a bug in r5124 (initial fix of scenario 1), it stops the removed media stream and cleans up its media transport right after receiving reoffer with less media lines (no 3), so when the SDP nego fails (the re-offer is rejected), call media states become inconsistent. Note that in SDP reoffer/answer, we shouldn't modify the media streams before SDP nego is done, as if SDP nego fails, the media streams should be maintained as if there is no SDP reoffer. Also revisiting a related ticket #1626, where it modifies the media streams before SDP nego: the assertion happens because it gets into unknown media type block handler, while it should never do. So we need to update the fix, e.g: only set the media type when it is undefined. Thanks to Brian Walker for the reports. |
|||||
#988 | Aray bounds checking in SDP functions (thanks Mark Webster for the report) | nanang | defect | normal | release-1.5 | pjmedia |
Description |
(Lack of) array bounds checking in various SDP parse functions may cause memory corruption. |
|||||
#1338 | Apply the new fields in account configs to pjsua_modify_acc() | bennylp | enhancement | normal | release-2.0-alpha | pjsua-lib |
#2171 | Apply returned frame quality filter in OpenH264 decoder | nanang | enhancement | normal | release-2.9 | pjmedia |
Description |
The OpenH264 decoder may return non-dsErrorFree and still produce a frame usually with some noise. This ticket will filter the frame quality by inspecting the return code of the decoder, i.e: drop the frame if some specific error codes are returned (dsRefLost dsNoParamSets, dsDepLayerLost). |
|||||
#1479 | Apply RTCP enhancements for video stream | nanang | enhancement | normal | release-2.0-rc | pjmedia |
Description |
Here are the RTCP related enhancements to be applied into video stream: |
|||||
#1622 | Apply H264 SDP fmtp parameters: max-fs, max-mbps, max-br | nanang | defect | normal | release-2.1 | pjmedia |
Description |
Related issue:
|
|||||
#828 | Applications, built using VS 2005 targeted for WM 2003, fail to run (on emulator) | bennylp | defect | normal | release-1.2-QA | applications |
#58 | Another 64bit problem with pool.h | bennylp | defect | normal | release-0.5.10 | pjlib |
Description |
In <pj/pool.h>: /** * Internal pool. */ char pool_buf[256]; This caused problem on 64bit machines. |
|||||
#1822 | Android video capturer | ming | enhancement | normal | release-2.4 | pjmedia-videodev |
Description |
This feature will be auto detected and enabled by configure script. The implementation is using android.hardware.Camera class. |
|||||
#1790 | Android renderer using OpenGL ES 2 | ming | enhancement | normal | release-2.4 | pjmedia-videodev |
#1122 | Android port | bennylp | enhancement | normal | release-2.x | common |
Description |
Port PJSIP to Android platform. Note that this task excludes the creation of JNI API for PJSUA-LIB, which will be noted on separate ticket (see #1123). |
|||||
#1749 | Android build for Intel | bennylp | defect | normal | release-2.3 | common |
Description |
Android build for Intel breaks with these error: /android-ndk//sources/cxx-stl/gnu-libstdc++/4.8/include/ext/atomicity.h: In function '_Atomic_word __gnu_cxx::__exchange_and_add(volatile _Atomic_word*, int)': /android-ndk//sources/cxx-stl/gnu-libstdc++/4.8/include/ext/atomicity.h:50:45: error: '__ATOMIC_ACQ_REL' was not declared in this scope /android-ndk//sources/cxx-stl/gnu-libstdc++/4.8/include/ext/atomicity.h:50:61: error: '__atomic_fetch_add' was not declared in this scope /android-ndk//sources/cxx-stl/gnu-libstdc++/4.8/include/ext/atomicity.h: In function 'void __gnu_cxx::__atomic_add(volatile _Atomic_word*, int)': /android-ndk//sources/cxx-stl/gnu-libstdc++/4.8/include/ext/atomicity.h:54:38: error: '__ATOMIC_ACQ_REL' was not declared in this scope /android-ndk//sources/cxx-stl/gnu-libstdc++/4.8/include/ext/atomicity.h:54:54: error: '__atomic_fetch_add' was not declared in this scope The suspect is the wrong libs used (armeabi) specified in the configure-android script. |
|||||
#2006 | Android build fail when using NDK r14 caused by the removal of android_alarm.h | bennylp | enhancement | normal | release-2.7 | pjlib |
Description |
Since #1961 pjsip use ANDROID_ALARM_GET_TIME for timestamp. However NDK r14 no longer support this by removing android_alarm.h. This patch will detect the android_alarm.h, and if it wasn't found ,timestamp will use CLOCK_BOOTTIME instead. |
|||||
#1639 | Android branch integration | bennylp | enhancement | normal | release-2.2 | common |
Description |
Integrate android works on SVN android branch into SVN trunk. |
|||||
#1518 | Android audio device | nanang | enhancement | normal | release-2.2 | pjmedia-audiodev |
#919 | An iLBC session must use same mode in both directions. | nanang | defect | normal | release-1.4 | pjmedia |
Description |
Currently, pjsua will do asymmetric iLBC mode when SDP offer answer specify different iLBC mode. RFC 3952 Section 5: It is important to emphasize the bi-directional character of the "mode" parameter - both sides of a bi-directional session MUST use the same "mode" value. The offer contains the preferred mode of the offerer. The answerer may agree to that mode by including the same mode in the answer, or may include a different mode. The resulting mode used by both parties SHALL be the lower of the bandwidth modes in the offer and answer. That is, an offer of "mode=20" receiving an answer of "mode=30" will result in "mode=30" being used by both participants. Similarly, an offer of "mode=30" and an answer of "mode=20" will result in "mode=30" being used by both participants. |
|||||
#64 | Allow whitespaces at the end of SDP lines | bennylp | enhancement | normal | release-0.5.10 | pjmedia |
Description |
Some UAs (non-compliant UAs, I might say) have a bad habit of adding whitespaces at the end of SDP lines. This is non-conformant, of course, but in the spirit of "be lenient on what you receive", the SDP parser should probably forgive this. Thanks Briac Hardouin for pointing this out. |
|||||
#479 | Allow transport framework to return transport specific info | nanang | enhancement | minor | release-0.9.0 | pjmedia |
Description |
Currently, media transport info only return socket info, this is considered to be insufficient since specific transport info could not be fetched. This enhancement will also answer a feature request about SRTP status retrieval. http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2008-February/001700.html (thanks Klaus Darilion) |
|||||
#484 | Allow to use binary certificate in TLS transport | bennylp | enhancement | normal | release-2.8 | pjsip |
Description |
It would be nice if PJSIP allows not only to load certificate from a file, but also from a memory, for example if the certificate is embedded in the application or if it's retrieved from Windows certificate store. Also it may improve performance, especially for server app, because currently the same certificate may be read again and again from disk. Thanks Klaus Darilion and Peter Koletzki for the suggestion. |
|||||
#1466 | Allow to use PJLIB API without PJSUA-LIB API | bennylp | enhancement | normal | release-1.14 | common |
Description |
Some application wants to be able to use PJLIB before pjsua_create() and after pjsua_destroy() is called, or to continue using PJLIB objects while PJSUA-LIB is being restarted. This was not possible because when application is utilizing PJSUA-LIB, the PJLIB library is initialized in pjsua_create() and shutdown in pjsua_destroy(). The solution that this ticket implements is to allow pj_init() and pj_shutdown() to be called multiple times, and PJLIB should use internal reference counting to determine when it needs to actually be initialized or shutdown. Hence if application wants to use PJLIB before pjsua_create(), it should call pj_init() manually beforehand, and call pj_shutdown() when it's finished with using PJLIB. Note that there MUST be equal number of calls to pj_shutdown() for every call to pj_init(), or otherwise PJLIB won't get shutdown! Also note that this solution calls for moving some pj_atexit() use in higher library layers into a new equivalent functionality. This task will be implemented by this ticket too. |
|||||
#158 | Allow sound device selection in pjsua application (thanks Michael Smith) | bennylp | enhancement | normal | release-0.5.10.2 | applications |
Description |
Add --playback-dev and --capture-dev options in pjsua to select sound devices to use. Thanks Michael Smith (msmith at cbnco.com) for the patch! |
|||||
#159 | Allow sound device selection in pjsua application (thanks Michael Smith) | bennylp | enhancement | normal | release-0.7.0-rc1 | applications |
Description |
Add --playback-dev and --capture-dev options in pjsua to select sound devices to use. Thanks Michael Smith (msmith at cbnco.com) for the patch! |
|||||
#206 | Allow single quotes for attributes in XML (thanks Tory Patnoe) | bennylp | enhancement | normal | release-0.5.10.3 | pjlib-util |
Description |
Patch:
Thanks much Tory Patnoe <tpatnoe at jabber com> for the patch! |
|||||
#208 | Allow single quotes for attributes in XML (thanks Tory Patnoe) | bennylp | defect | normal | release-0.7.0-rc1 | pjlib-util |
Description |
See ticket #206. |
|||||
#77 | Allow playback of multiple files in pjsua | bennylp | enhancement | normal | release-0.5.10 | applications |
#1381 | Allow omitting SDP format parameter in video codec | nanang | enhancement | normal | release-2.0-alpha2 | pjmedia |
Description |
Video codec framework employs SDP fmtp attribute for specifying codec specific parameters, e.g: MPI in H263, profile-level in H264. When SDP fmtp is not supplied, the codec will apply default values and this may override the 'standard' video parameters, such as size and frame rate, specified in pjmedia_format. While application may want to specify the 'standard' video parameters only (no SDP fmtp) and don't want them overridden by default values because of empty/unsupplied SDP fmtp. |
|||||
#1944 | Allow native window to be set for video output window on SDL | ming | enhancement | normal | release-2.5.5 | pjmedia-videodev |
Description |
To allow app to set the output window, the video device wrapper needs to support PJMEDIA_VID_DEV_CAP_OUTPUT_WINDOW capability and can be set using pjsua_vid_win_set_win() or VideoWindow::setWindow(). This ticket will add the support for SDL. |
|||||
#1692 | Allow multiple codecs in SDP answer (thanks to Joshua Colp for the patch) | nanang | enhancement | normal | release-2.2 | pjmedia |
Description |
This ticket adds support for SDP negotiator which allows to respond an offer with multiple codecs. |
|||||
#1687 | Allow media type change during SDP negotiation | nanang | enhancement | normal | release-2.2 | pjsip |
Description |
Currently, wenerating new offer, in case that media lines do not match the active SDP, the negotiator will fix the new offer by reordering and adding the missing media lines. This ticket will allow new media line to replace the existing media at the same position. |
|||||
#693 | Allow incoming MESSAGE request without message body | bennylp | enhancement | normal | release-1.2 | pjsua-lib |
Description |
Currently PJSUA-LIB rejects incoming MESSAGE request with 488/Not Acceptable Here if the MESSAGE request doesn't contain message body. In some OMA specification, under Push-to-Talk/PoC, there is a feature called IPA (Instant Personal Alert), where peer requests for ringback using MESSAGE request with empty body. So we probably don't need to check for the message body. |
|||||
#1595 | Allow call hangup immediately after outgoing call | bennylp | enhancement | normal | release-2.1 | pjsua-lib |
Description |
Currently for outgoing call, app has to wait until media transport creation is completed before it can hang up the call. This ticket allows call hangup request at any time, when media transport creation hasn't finished, PJSIP will queue the request and process it once media tp completes. |
|||||
#866 | Allow application to specify more than one STUN servers for more robustness, and continue application startup if STUN resolution fails | bennylp | enhancement | critical | release-1.4 | pjsua-lib |
Description |
Currently if STUN server is down, PJSUA-LIB initialization will fail. Having more than one STUN servers will increase the robustness of the application in this case. Also it may be desirable to allow application startup to continue when STUN servers fail to be contacted. Some firewall with SIP ALG (notably Microsoft Forefront Threat Management Gateway) may decidedly block STUN traffic, since it can manipulate private address in SIP packet into public address. |
|||||
#1416 | Allow application to send data after ICE negotiation fails | bennylp | enhancement | normal | release-1.14 | pjnath |
Description |
Currently the pjnath ICE session and transport do not allow data transmission to pass once negotiation has failed. Some applications may want to proceed with sending data anyway, hence the ICE session and transport need to change their behavior to allow this. The data will be sent using the default candidate to the desired destination address. Applications who do not wish to use this feature can just disconnect the call after ICE negotiation fails as usual. |
|||||
#416 | Allow application to handle sending ACK manually | bennylp | enhancement | normal | release-0.9.0 | pjsip |
Description |
Please see "3PCC call transfer implementation" thread on PJSIP mailing list archive for discussion (http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2007-November/000713.html) |
|||||
#2266 | Allow Via header with IPv6 containing [] | ming | enhancement | normal | release-2.10 | pjsip |
Description |
When using PJSIP and a SIP packet containing Via "received" with an IPv6 address delimited by [ and ] is received, PJSIP drops such a packet complaining about the [ and ]. No calls can be established. Via: SIP/2.0/UDP [2001:db8::9:1];received=[2001:db8::9:255];branch=z9hG4bKas3-111" From RFC 5118 section 4.5:
References: https://issues.asterisk.org/jira/browse/ASTERISK-26955 https://gerrit.asterisk.org/c/asterisk/+/13599/1/third-party/pjproject/patches/0040-brackets-in-via-received-params.patch Thanks to Sean Bright for the patch. |
|||||
#1625 | Allow SDP media without connection line when the port is zero | nanang | enhancement | normal | release-2.1 | pjmedia |
Description |
Some UAs don't put SDP c= line (in media/session level) when rejecting the media with port zero. |
|||||
#324 | Allow '#' character in the user part of URI of incoming message (thanks Esbjörn Dominique) | bennylp | enhancement | normal | release-0.8.0 | pjsip |
#455 | Allocate call id in round robin fashion | bennylp | enhancement | normal | release-0.9.0 | pjsua-lib |
Description |
Currently call id allocation is done by searching for empty slot from zero, so it will most likely to reuse call id of previous calls. This may cause problem when application defer call disconnection processing to an application worker thread, since when the application worker thread is handling the event, it's possible that another call arrives and uses the same call ID as the previously disconnected call. Although approach of using worker thread like this is probably not a good idea, PJSUA-LIB can help avoiding this problem a bit (not completely!) by allocating the call id in round robin fashion. Note that even with the round robin call id allocation, application will still encounter the same problem when there is only one call id slot left in PJSUA-LIB. So the only way to get rid of this problem completely is by solving this problem in application code. |
|||||
#854 | Adding SOFTWARE attribute in all outgoing requests may cause compatibility problem with older STUN server (thanks Alexei Kuznetsov for the report) | bennylp | defect | normal | release-1.3 | pjnath |
Description |
In 1.2 we added STUN SOFTWARE attribute in all outgoing STUN requests, as required by RFC 5389. This may cause compatibility problem with older STUN servers (compliant to RFC 3489) as this attribute is not part of the older RFC, and the padding rule for string attribute is different in both RFC's. |
|||||
#1810 | Adding CA path support into SSL socket | bennylp | enhancement | normal | release-2.4 | pjlib |
Description |
Offering the ability for application to provide a directory where CA certificate files could be found. Thanks James Cloos and Mark Michelson for the patch. |
|||||
#329 | Added utility function to parse DNS A response | bennylp | enhancement | normal | release-0.8.0 | pjlib-util |
Description |
Parsing DNS A response is a bit tricky, especially when CNAME record is present. Since this functionality is needed by both PJLIB-UTIL's DNS SRV and PJSIP's DNS resolution, move this functionality into a utility function pj_dns_parse_a_response() in pjlib-util/resolver.h. |
|||||
#576 | Added user data in pjsua account and buddy | bennylp | enhancement | normal | release-1.0-rc1 | pjsua-lib |
Description |
Added the capability to attach user data to account and buddy objects. |
|||||
#399 | Added tool to perform NAT type detection/classification | bennylp | enhancement | normal | release-0.8.0 | pjnath |
Description |
With current implementation, it is rather hard to troubleshoot ICE negotiation failure. Having information about NAT type will help debugging such failure. |
|||||
#210 | Added simple stateless and stateful proxy in samples collection | bennylp | enhancement | normal | release-0.5.10.3 | applications |
#610 | Added sample to create a media transport adapter, similar to how SRTP media transport works | nanang | enhancement | normal | release-1.0-rc2 | pjmedia |
Description |
Add a sample media transport in PJMEDIA on how to create a simple transport adapter. A transport adapter is an object to be placed between the stream and the actual transport, and this is how the SRTP media transport is implemented. |
|||||
#446 | Added sample application to mix WAV files using conference bridge | bennylp | enhancement | normal | release-0.9.0 | pjmedia |
Description |
A new sample file, mix.c (under pjsip-apps/src/samples directory, can be used to mix several input WAV files into an output WAV file. |
|||||
#46 | Added recording capability in streamutil | bennylp | enhancement | minor | release-0.5.10 | applications |
Description |
Added recording of incoming RTP stream into WAV file in streamutil. |
|||||
#222 | Added pj_strtoul2 | bennylp | enhancement | normal | release-0.5.10.4 | pjlib |
Description |
.. to convert string to integer with 10 or 16 base and when the string may not contain all numeric characters. |
|||||
#223 | Added pj_strtoul2 | bennylp | enhancement | normal | release-0.7.0-rc1 | pjlib |
Description |
See ticket #222 |
|||||
#184 | Added pj_file_flush() to file I/O API to flush file buffers | bennylp | enhancement | minor | release-0.5.10.3 | pjlib |
Description |
.. and changed pjsua-lib to flush the file whenever it writes the log. |
|||||
#185 | Added pj_file_flush() to file I/O API to flush file buffers | bennylp | enhancement | minor | release-0.7.0-rc1 | pjlib |
Description |
See ticket #184 for details. |