summaryrefslogtreecommitdiff
path: root/pjsip/include
AgeCommit message (Collapse)Author
2010-06-24Fixed #1081: Implement ICE option tag (RFC 5678)Benny Prijono
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3222 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-22Fixed #1095 (New option to control the Route headers in REGISTER request). ↵Benny Prijono
Details: - added new account config setting: reg_use_proxy. This contains bitmask values to indicate whether outbound proxies and account proxies are to be added in the REGISTER request. Default value is to add both. - added new pjsua cmdline option to control this: --reg-use-proxy - miscellaneous minor fixes in other pjsua cmdline arguments git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3216 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-20Fixed #1086 (New option to update the Contact URI in a single REGISTER ↵Benny Prijono
request): added contact_rewrite_method account config to control this. Default is to use the new mechanism, i.e. the single REGISTER method. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3213 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-19Fixed #1077: In ICE stream transport (ice_strans.c), automaticaly retry ↵Benny Prijono
allocation once if TURN allocation fails. If this allocation retry also fails, notify the TURN user via on_ice_complete() callback. Details: - added new PJ_ICE_STRANS_OP_KEEP_ALIVE operation - also added new on_ice_transport_error() pjsua callback to allow application to react to the failure. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3212 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-15Fix #476:Nanang Izzuddin
- Added lock codec feature to make sure that only one codec is active, by updating media session using UPDATE (if remote supports it) or re-INVITE. - Added few SIPp test scenarios. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3206 74dad513-b988-da41-8d7b-12977e46ad98
2010-06-03Re #1089:Nanang Izzuddin
- Added a feature in dialog to store and retrieve remote capabilities dug from the remote messages. - Added few APIs in dialog to query and update remote capabilities, also added an API in pjsua_call to query whether a capability is supported by remote. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3196 74dad513-b988-da41-8d7b-12977e46ad98
2010-05-19Fix #1071: Increase default maximum SIP packet size to 4000Benny Prijono
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3182 74dad513-b988-da41-8d7b-12977e46ad98
2010-05-13Re #1069:Nanang Izzuddin
- Added new approach of SRTP optional mode in pjsua-lib by duplicating SDP media line for secured and unsecured version of media transport. - Integrated this feature into pjsua app, it is activated via --use-srtp=3 param. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3172 74dad513-b988-da41-8d7b-12977e46ad98
2010-04-20Ticket #1057: Implemented pjsua_modify_acc().Nanang Izzuddin
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3144 74dad513-b988-da41-8d7b-12977e46ad98
2010-04-14Ticket #1056:Nanang Izzuddin
- Added functions to set/unset transport state notification callback on specific transport. - Updated transaction to immediately terminate the transactions when their transport gets disconnected. - Minor update: renamed function pjsip_tpmgr_set/get_status_cb() to pjsip_tpmgr_set/get_state_cb(). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3138 74dad513-b988-da41-8d7b-12977e46ad98
2010-03-30Ticket #1044:Nanang Izzuddin
- Added initial version of automatic re-registration after registration failure and automatic call disconnection after re-registration attempt fails. - Published auto re-registration setting to pjsua app. - Updated pjsip_regc_send() to retrieve the transport earlier (was only in tsx_callback()). - Fixed TCP and TLS transport to prevent transport deletion in transport disconnection callback. - Fixed wrong keep-alive settings used by TLS transport (was using TCP keep-alive settings). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3128 74dad513-b988-da41-8d7b-12977e46ad98
2010-03-10More #1032 (new SIP TCP/TLS transport callback):Benny Prijono
- PJSUA-LIB transport callback, if installed, will call the previously registered callback, to allow multiple transport callbacks to be installed - there seem to be a bug with the use of "pjsip_tp_state_callback" everywhere (the "pjsip_tp_state_callback" type is pointer, but most variables of this type are declared to pointer too) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3119 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-25More ticket #1032:Nanang Izzuddin
- Updated transport state notification callback to return void. - Updated transport state enum to only contain connected and disconnected, no more bitmask value. - Added direction field to SIP transport. - Removed remote hostname hash from transport key. - Updated cert info dump to return -1 when buffer is insufficient. - Added new error code PJSIP_TLS_ECERTVERIF. - Updated get_cert_name() in ssl_sock_symbian.c to use heap buffer instead of stack. - Minors, e.g: added prefix PJ in cipher types, docs. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3110 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-25Misc (#1026): fixed wrong documentation of ↵Benny Prijono
pjsua_acc_config.allow_contact_rewrite git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3109 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-24Ticket #1032:Nanang Izzuddin
- Initial version of server domain name verification: - Updated SSL certificate info, especially identities info - Updated verification mechanism as in the specifications in ticket desc. - Added server domain name info in pjsip_tx_data. - Added alternative API for acquiring transport and creating transport of transport factory to include pjsip_tx_data param. - Server identity match criteria: - full host name match - wild card not accepted - if identity is URI, it must be SIP/SIPS URI - Initial version of transport state notifications: - Added new API to set transport state callback in PJSIP and PJSUA. - Defined states: connected/disconnected, accepted/rejected, verification errors. - Minors: - Updated SSL socket test: dump verification result, test of requiring client cert, and few minors. - Updated test cert to include subjectAltName extensions. - Added SSL certificate dump function. - Updated max number of socket async operations in Symbian sample apps (RSocketServ::Connect()) to 32 (was default 8). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3106 74dad513-b988-da41-8d7b-12977e46ad98
2010-02-10Ticket #995: Send un-PUBLISH when pjsua_acc_set_registration(FALSE) is ↵Benny Prijono
called (thanks Johan Lantz for the suggestion) - in this implementation, when pjsua_acc_set_registration(FALSE) is called, the un-REGISTER request will be sent immediately after un-PUBLISH, unlike the process during shutdown where the un-REGISTER request will be sent only after un-PUBLISH transaction is complete git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3096 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-27Ticket #1028: Recommit r3074 with updated codec.h.Nanang Izzuddin
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3078 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-27Fixed ticket #1036: Stray timer may be registered by SIP TCP and TLS ↵Benny Prijono
transport in destroy routine, which could crash the program on Symbian (thanks Tamàs Solymosi for the report) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3077 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-26Undo r3074 for ticket #1028 as it is missing updated codec.h hence causing ↵Benny Prijono
build errors (thanks Michael Bradley Jr for the report) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3075 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-26Ticket #1028:Nanang Izzuddin
- Added new API pjmedia_codec_mgr_set_default_param() to set/update default codec parameter and implemented pjsua_codec_set_param() based on it. - Added mutex in codec manager to protect states manipulations. - Modified API pjmedia_codec_mgr_init() to add pool factory param. - Added new API pjmedia_codec_mgr_destroy(). - Updated passthrough codec AMR to regard peer's mode-set setting. - Fixed VAS audio device to apply AMR encoding bitrate setting. - Fixed IPP codec codec_open() to update AMR bitrate info (for stream) when AMR encoding bitrate is not using the default, e.g: requested by peer via format param 'mode-set' in SDP. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3074 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-25Initial commit for #1033: Assertion error when shutting down PJSIP while ↵Benny Prijono
TCP/TLS connect is in progress and a transaction is waiting git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3071 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-21Ticket #1029: Fix support for multiple (event) subscriptions in a single ↵Benny Prijono
dialog (thanks Wang Eric for the report) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3068 74dad513-b988-da41-8d7b-12977e46ad98
2010-01-15Ticket #694: work on 'make install':Benny Prijono
- adhere to --prefix - header and lib files installation - pkgconfig creation - also added version.mak to fill in with the correct version git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3063 74dad513-b988-da41-8d7b-12977e46ad98
2009-11-20More ticket #982 (MWI): support for Asterisk unsolicited MWI requests:Benny Prijono
- undo r3019 which put unsolicited MWI support in pjsua app only - put the unsolicited MWI support in PJSUA-LIB instead - unsolicited MWI is by default enabled - on_mwi_info() callback will be called just as the solicited MWI version git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3021 74dad513-b988-da41-8d7b-12977e46ad98
2009-11-20More #982 (MWI): support for Asterisk unsolicited MWI in pjsua applicationBenny Prijono
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3019 74dad513-b988-da41-8d7b-12977e46ad98
2009-11-09Ticket #950 and #957: Benny Prijono
- added QoS options on PJLIB/PJLIB SSL/TLS socket/transport - added demo in Symbian ua.cpp git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2998 74dad513-b988-da41-8d7b-12977e46ad98
2009-11-04Fixed ticket #940: Multiple header rows with the same name may not be ↵Benny Prijono
completely processed by PJSIP modules - the parser now collect and aggregate all Supported/Require header fields into single header git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2985 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-28Ticket #957: Updated PJSIP_HAS_TLS_TRANSPORT default value to refer to ↵Nanang Izzuddin
PJ_HAS_SSL_SOCK. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2973 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-26Implement ticket #982: Support for SIP Message Summary/Message Waiting ↵Benny Prijono
Indication (MWI, RFC 3842) - PJSIP-SIMPLE: - implement MWI - PJSUA-LIB: - added "mwi_enabled" flag in account config - added "on_mwi_info" callback - pjsua app: - added "--mwi" option to enable MWI on account - added simple callback to log the NOTIFY message - other: - added SIPp scenario files to simulate UAS side - build: - added MWI support on VS6, VS2005, MMP, and Makefile git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2968 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-25Initial commit for ticket #950: QoS support:Benny Prijono
- implementation: - PJLIB (sock_qos*.*) - added QoS support in: - SIP UDP transport, - SIP TCP transport, - media UDP transport (done in pjsua-lib), - pjnath ICE stream transport, - pjnath STUN socket, - pjnath TURN client - added QoS options in pjsua-lib: - QoS fields in pjsua_transport_config - added "--set-qos" parameter in pjsua Notes: - QoS in TLS transport is not yet implemented, waiting for #957 - build ok on VS6, VS2005 (multiple targets), Carbide, and Mingw - no run-time testing yet git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2966 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-21More #937 (presence):Benny Prijono
- added protection to not resubscribe immediately if initial SUBSCRIBE is responded with 481 for some reason git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2960 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-20Initial commit for ticket #937: Revamping of presence management to make it ↵Benny Prijono
more efficient Presence enhancements: - finer grained buddy lock object, instead of using global PJSUA-LIB's mutex - individual resubscription timer for buddies and also add random delay interval so that resubscriptions don't happen simultaneously (may hog processing and bandwidth). - in general reduced the use of global PJSUA-LIB's mutex for more efficiency - added last termination code in buddy info - use the RPID note's text for buddy's offline status rather than the default "offline" status, if available - resubscribe automatically on several termination causes as explained in the ticket (still untested) General enhancements: - added pjsua_schedule_timer() and pjsua_cancel_timer() APIs git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2956 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-14Ticket #881: send UPDATE or re-INVITE after ICE negotiation, if the default ↵Benny Prijono
candidate has changed - done - added pj_ice_strans_state (to be used for informational purposes for now) - added pjmedia ICE transport specific info, and display it in call dump output - misc fixes (changed pjmedia_transport_info.spec_info_cnt from int to unsigned) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2945 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-14Ticket #970: More gracefull PJSUA-LIB shutdown sequence. Enhancements:Benny Prijono
- wait for unregistration to complete (or a preconfigured delay expires) - new account config field to set the maximum delay to wait for unregistration - rejects incoming requests (INVITE, SUBSCRIBE, and OPTIONS) when shutdown is in progress git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2943 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-13Ticket #364: Upon unregistration, (un)REGISTER should be sent only after ↵Benny Prijono
(un)PUBLISH has completed successfully - wait for unpublication to complete or some delay expires, before sending unregistration - added unpublish_max_wait_time_msec field in account config to control how long to wait git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2942 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-12Ticket #411: Cannot update account presence's status while previous PUBLISH ↵Benny Prijono
is in progress (thanks Olivier Beytrison for the report) - enable request queueing. If PUBLISH is to be sent while another one is still in progress, queue the request and send it later when the ongoing request completes - this behavior is controlled by new pjsip_publishc_opt structure to control session's options - default behavior is to queue the request git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2940 74dad513-b988-da41-8d7b-12977e46ad98
2009-10-09Fixed ticket #917, #936, and #967:Benny Prijono
- #917: CANCEL may be sent to different servers than the INVITE when DNS SRV is used (thanks Alexei Kuznetsov for the report) - #936: CANCEL must be sent with TCP if the INVITE was sent with TCP because of 1300 bytes message size/MTU limit (thanks Johan Lantz for the report) - #967: Wrong Route header generation in CANCEL request with strict route Save the server address(es) found by resolution process to tx_data, which is copied to CANCEL request. CANCEL request then uses this address rather than starting a fresh server resolution. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2932 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-13Misc (#915): removed unused fields (refresh_tm and hangup_tm) from pjsua_callBenny Prijono
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2874 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12Ticket #877: Memory consumption of the invite session grows indefinitely if ↵Benny Prijono
call is running for long period of time and with many re-INVITES - introducing flip-flop pools in the pjsip_inv_session. There are two additional pools created, and one of them will be reset everytime SDP negotiation is done to release memory back to the OS git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2869 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-12Ticket #866: Allow application to specify more than one STUN servers for ↵Benny Prijono
more robustness, and continue application startup if STUN resolution fails PJSUA-LIB: - New fields in pjsua_config to specify more than one STUN servers (the stun_srv_cnt and stun_srv array) - The existing stun_host and stun_domain fields are deprecated, but backward compatibility is maintained. If stun_srv_cnt is zero, the library will import the entries from stun_host and stun_domain - The library will now resolve the STUN server entries one by one and test it before using it - New auxiliary API pjsua_resolve_stun_servers() to perform resolution and test against array of STUN servers pjsua application: - The "stun-srv" command line options can now be specified more than once git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2864 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11Ticket #833:Nanang Izzuddin
- Renamed pjsip_timer_default_setting() to pjsip_timer_setting_default(). - Updated session timer settings in pjsua-lib as whole session timer setting struct (pyhton version remains using se & min_se). - Added output param SIP status code in pjsip_timer_process_resp() and pjsip_timer_process_req() to specify the corresponding SIP status code when function returning non-PJ_SUCCESS. - Fixed print header functions in sip_timer.c to have buffer check. - Added PJSIP_SESS_TIMER_DEF_SE setting to specify the default value of session timer interval. - Fixed role reference of the refresher, it is transaction role, not dialog role. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2859 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-11Ticket #833:Nanang Izzuddin
- Initial version of Session Timers (RFC 4028). - Added new options in pjsua app to configure Session Timers settings. - Added python tests for Session Timers. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2858 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-05Ticket #930:Nanang Izzuddin
- Updated semantic of contact param in functions pjsip_dlg_create_uac(), pjsip_dlg_create_uas(), pjsip_endpt_create_request() and also variable pjsua_acc.contact to be Contact header value (was Contact URI). - Updated docs related to above modifications. - Fixed pjsua_im_send() in generating contact header, it should use pjsua_acc.contact instead, if it is set. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2855 74dad513-b988-da41-8d7b-12977e46ad98
2009-08-04Ticket #930:Nanang Izzuddin
- Changed semantic of pjsua_acc_config.contact_params, it is now used for specifying Contact header parameters (it was used for specifying Contact URI parameters). - Added a new field pjsua_acc_config.contact_uri_params, for specifying Contact URI parameters. - Added fields pjsua_acc_config.contact_params and pjsua_acc_config.contact_uri_params into python pjsua. - Updated/added option in pjsua app to specify Contact header parameters and Contact URI parameters. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2852 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-30Related to #911:Benny Prijono
- added subscription state name string in pjsua_buddy_info and display this in pjsua git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2824 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-15Ticket #873: Include the parsed XML tuple in the pjsip_pres_status, and ↵Benny Prijono
include it in the pjsua_buddy_info in PJSUA-LIB, in case the PIDF document contains other info that is needed by application (thanks Johan Lantz for the suggestion) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2762 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-08Ticket #831: Added compile-time option to disable/prevent transport ↵Nanang Izzuddin
switching to TCP. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2756 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-05More ticket #869: Added PJSIP_PUBLISHC_DELAY_BEFORE_REFRESH configurationBenny Prijono
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2754 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-03Misc (ticket #838): removed all Python doxygen comments/documentations from ↵Benny Prijono
pjsua.h as these has been deprecated by new Python abstraction long time ago git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2738 74dad513-b988-da41-8d7b-12977e46ad98
2009-06-01Ticket #869: Make various event/presence subscription time settings ↵Benny Prijono
configurable (thanks Johan Lantz for the suggestion) git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2730 74dad513-b988-da41-8d7b-12977e46ad98