Piotr Gregor 6cd17fd556 FS-11052: Allow alias for crypto suites
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).
2018-08-13 20:57:50 +00:00
2014-03-24 12:39:59 +00:00
2018-07-24 07:21:55 +00:00
2017-06-05 15:11:52 -05:00
2015-05-28 12:47:19 -05:00
2018-07-24 07:21:50 +00:00
2015-10-09 11:10:32 -07:00
2010-04-01 21:00:45 -04:00
2015-12-15 17:02:49 +00:00
2014-12-26 17:22:20 +00:00
2014-08-01 14:47:38 -05:00
2013-04-04 20:52:47 -05:00
2018-07-24 07:21:49 +00:00
2013-12-23 22:43:06 +05:00
Description
FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unl
Multiple Licenses 206 MiB
Languages
C 65.2%
C++ 20.8%
JavaScript 4.8%
Assembly 2%
Makefile 1%
Other 5.4%