Changeset 5597 for pjproject/trunk/pjmedia/include/pjmedia/transport_srtp.h
- Timestamp:
- Jun 3, 2017 9:22:34 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjmedia/include/pjmedia/transport_srtp.h
r5412 r5597 131 131 132 132 /** 133 * This enumeration specifies SRTP keying methods. 134 */ 135 typedef enum pjmedia_srtp_keying_method 136 { 137 /** 138 * Session Description (SDES). 139 */ 140 PJMEDIA_SRTP_KEYING_SDES, 141 142 /** 143 * DTLS-SRTP. 144 */ 145 PJMEDIA_SRTP_KEYING_DTLS_SRTP, 146 147 /** 148 * Number of keying method. 149 */ 150 PJMEDIA_SRTP_KEYINGS_COUNT 151 152 } pjmedia_srtp_keying_method; 153 154 155 /** 156 * Structure containing callbacks to receive SRTP notifications. 157 */ 158 typedef struct pjmedia_srtp_cb 159 { 160 /** 161 * This callback will be called when SRTP negotiation completes. This 162 * callback will be invoked when the negotiation is done outside of 163 * the SDP signalling, such as in DTLS-SRTP. 164 * 165 * @param tp PJMEDIA SRTP transport. 166 * @param status Operation status. 167 */ 168 void (*on_srtp_nego_complete)(pjmedia_transport *tp, 169 pj_status_t status); 170 171 } pjmedia_srtp_cb; 172 173 174 /** 133 175 * Settings to be given when creating SRTP transport. Application should call 134 176 * #pjmedia_srtp_setting_default() to initialize this structure with its … … 140 182 * Specify the usage policy. Default is PJMEDIA_SRTP_OPTIONAL. 141 183 */ 142 pjmedia_srtp_use use;184 pjmedia_srtp_use use; 143 185 144 186 /** … … 146 188 * when it is destroyed. Default: PJ_TRUE. 147 189 */ 148 pj_bool_t close_member_tp;190 pj_bool_t close_member_tp; 149 191 150 192 /** 151 193 * Specify the number of crypto suite settings. 152 194 */ 153 unsigned crypto_count;195 unsigned crypto_count; 154 196 155 197 /** 156 198 * Specify individual crypto suite setting. 157 */ 158 pjmedia_srtp_crypto crypto[PJMEDIA_SRTP_MAX_CRYPTOS]; 199 * Notes for DTLS-SRTP keying: 200 * - Currently only supports these cryptos: AES_CM_128_HMAC_SHA1_80, 201 * AES_CM_128_HMAC_SHA1_32, AEAD_AES_256_GCM, and AEAD_AES_128_GCM. 202 * - SRTP key is not configurable. 203 */ 204 pjmedia_srtp_crypto crypto[PJMEDIA_SRTP_MAX_CRYPTOS]; 205 206 /** 207 * Specify the number of enabled keying methods. 208 * Default is PJMEDIA_SRTP_MAX_KEYINGS (all enabled). 209 */ 210 unsigned keying_count; 211 212 /** 213 * Specify enabled keying methods and its priority order. Keying method 214 * with higher priority will be given earlier chance to process the SDP, 215 * for example as currently only one keying is supported in the SDP offer, 216 * keying with first priority will be likely used in the SDP offer. 217 * 218 * Default is that all supported keying methods (i.e: currently SDES and 219 * DTLS-SRTP) will be enabled and with priority order: SDES, DTLS-SRTP. 220 */ 221 pjmedia_srtp_keying_method keying[PJMEDIA_SRTP_KEYINGS_COUNT]; 222 223 /** 224 * Specify SRTP callback. 225 */ 226 pjmedia_srtp_cb cb; 227 228 /** 229 * Specify SRTP transport user data. 230 */ 231 void *user_data; 159 232 160 233 } pjmedia_srtp_setting;
Note: See TracChangeset
for help on using the changeset viewer.