Changes between Initial Version and Version 2 of Ticket #2100
- Timestamp:
- Mar 26, 2018 11:04:20 AM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #2100
- Property Status changed from new to closed
- Property Resolution changed from to fixed
-
Ticket #2100 – Description
initial v2 1 1 Currently SRTP crypto and keying method is configurable via callback, i.e: {{{on_create_media_transport_srtp()}}} in PJSUA or {{{onCreateMediaTransportSrtp()}}} in PJSUA2 (only crypto). And after some review and internal discussions, we decided to deprecate the callback and move the settings to account config, here are some reasons: 2 2 - SRTP setting type used in callback param is {{{pjmedia_srtp_setting}}}, which has some fields that are PJMEDIA specifics, e.g: {{{close_member_tp, cb, user_data}}}. So this ticket will also create a new SRTP settings specifically for PJSUA and PJSUA2. 3 - other media transports are configurable via account setting (instead of PJSUA/PJSUA2 callback). 3 - media transport settings are usually configurable via account setting (instead of PJSUA/PJSUA2 callback), so it'd better to use the same pattern for SRTP. 4 5 Here are sample codes to enable DTLS-SRTP in outgoing SDP offer: 6 - using PJSUA: 7 {{{ 8 acc_cfg.srtp_opt.keying_count = 2; 9 acc_cfg.srtp_opt.keying[0] = PJMEDIA_SRTP_KEYING_DTLS_SRTP; 10 acc_cfg.srtp_opt.keying[1] = PJMEDIA_SRTP_KEYING_SDES; // optional, as a fallback for handling incoming call using SRTP with SDES 11 }}} 12 - using PJSUA2: 13 {{{ 14 acc_cfg.mediaConfig.srtpOpt.keyings.push_back(PJMEDIA_SRTP_KEYING_DTLS_SRTP); 15 acc_cfg.mediaConfig.srtpOpt.keyings.push_back(PJMEDIA_SRTP_KEYING_SDES); // optional, as a fallback for handling incoming call using SRTP with SDES 16 }}}