• Piotr Gregor's avatar
    FS-11052: Allow alias for crypto suites · 6cd17fd5
    Piotr Gregor 提交于
    For outgoing calls send AES crypto in offer using corrected names
    for keys of length 192 and 256, i.e. names containing _192_CM_
    and _256_CM_ instead of _CM_192_ and CM_256_. For incoming calls
    accept both naming conventions, decaying to same entry in SUITES.
    
    + fix after SRTP failed for 256 keys:
    
    Tests showed loop removing '=' from keys in switch_core_media_build_crypto
    
     1190     if (!switch_channel_var_true(channel, "rtp_pad_srtp_keys")) {
     1191         p = strrchr((char *) b64_key, '=');
     1192
     1193         while (p && *p && *p == '=') {
     1194             *p-- = '\0';
     1195         }
     1196     }
    
    shouldn't be executed for AES_CM_256_HMAC_SHA1_32 and AES_CM_256_HMAC_SHA1_80
    keys and it is meaningless for AES_CM_128_HMAC_SHA1_32 AES_CM_128_HMAC_SHA1_80
    keys. Tested calling from Bria.
    
    Introduced switch_channel_var_false and changed this to:
    	if (switch_channel_var_false(channel, "rtp_pad_srtp_keys"))
    to enter the loop if var is set to false (and not if it is _not_ set).
    6cd17fd5
switch_rtp.c 289.4 KB