Commit Graph

689 Commits

Author SHA1 Message Date
Anthony Minessale 6b35e576fc [core] Transfer with rtp_pass_codecs_on_stream_change one way audio 2020-05-08 01:40:21 +04:00
Anthony Minessale eaca798979 [core] add orig session check 2020-05-08 01:28:10 +04:00
Andrey Volk 1956911e4b [Core] Fix locking and a memory leak in switch_core_session_write_video_frame() and switch_core_session_write_text_frame(). 2020-05-07 03:15:43 +04:00
Dragos Oancea 165ca28fa1 [core] scan-build: Value stored to 'status' is never read - switch_core_session_write_frame() 2020-03-06 19:36:04 +04:00
Dragos Oancea 60cf5a0a3c [core] scan-build: Value stored to 'ip' is never read - switch_core_media_recover_session() 2020-03-06 19:33:46 +04:00
Dragos Oancea 87ab38d281 [core] scan-build: Value stored to 'pass_fmtp' is never read - switch_core_media_gen_local_sdp() 2020-03-06 19:32:28 +04:00
Dragos Oancea e6c52efe64 [core] scan-build: Value stored to 'timer_name' is never read - switch_core_media_activate_rtp() 2020-03-06 19:29:52 +04:00
Dragos Oancea c7eee4ba76 [core] scan-build: Value stored to 'ptime' is never read 2020-03-06 19:28:09 +04:00
Seven Du 6decc21669 [core] fix sdp parsing on invalid sdp 2020-02-26 00:17:55 +04:00
Andrey Volk f9cafeb7a8 [Core] Fix crash when parsing some uncommon SDP attributes 2020-02-25 01:40:52 +04:00
Dragos Oancea b28eb5ea92 FS-11836: scan-build: Argument with 'nonnull' attribute passed null
FS-11836: scan-build: Dead assignments
2019-12-30 23:55:18 +04:00
Seven Du 254fda292a [core] fix shutdown crash when core running with MINIMAL flag 2019-11-21 22:05:43 +04:00
Liyang 5f1ee43cd0 FS-11971: [core] fix 488 when receive invite with SRTP/RTP 2019-08-01 02:15:56 +04:00
Dragos Oancea 309135640b FS-11964: add new chan var "rtp_video_nack_disable" 2019-07-25 21:57:37 +00:00
Mike Jerris d16575d288 FS-11962: [core] Fix memory leak in switch_core_session_write_video_frame 2019-07-25 14:41:39 -06:00
Dragos Oancea 863189fed6 FS-11958: [core] add switch_core_media functions that deal with bw and bitrate 2019-07-25 17:08:58 +00:00
Liyang 60c7235603 FS-11953: [core] set the correct cng pt after receive reinvite to avoid garbled audio 2019-07-24 22:38:08 +04:00
Mike Jerris b81cbcba3c FS-11929: [core] improve detection of when video is ready. 2019-07-18 00:55:56 +04:00
Brian West b23d887586 FS-11654: [core] add media_timeout, media_hold_timeout and video vs audio variants 2019-07-18 00:54:37 +04:00
Mike Jerris 7906a2054a FS-11919: [core] add api compatibility for switch_rtp_new 2019-07-17 16:43:34 -04:00
Brian West d355a57264 FS-10634 [mod_spandsp]: txfax failing with 488 Not Acceptable Here race 2019-07-18 00:32:53 +04:00
Shashi Kumar 7c79dd95a3 FS-11837: [Core] Add feature to allow execution of an app on audio change, execute_on_audio_change variable. 2019-07-17 23:34:16 +04:00
Seven Du 0bf7bb0635 FS-11721 don't automatically send unicode linefeed on MSRP 2019-07-17 23:25:51 +04:00
Anthony Minessale a0ac544fa1 FS-11713: [core] fix a calls b with video, b answers with audio and then turns on video (A will have to unpause video too) 2019-07-17 20:07:49 +04:00
Anthony Minessale b8a8765991 FS-11713: [core] fix video upgrade from b to a 2019-07-17 20:07:30 +04:00
Sergey Khripchenko c546154d67 FS-11436 more granularly calculate 'samples' and modify requested 'fsp' accordingly
+ review all places where it used and reflect that 'fps' is (float)
2019-07-16 20:26:32 +04:00
Sergey Khripchenko be7c5331f6 FS-11436 RTP timestamp field incorrectly calculated based on fps 2019-07-16 20:26:24 +04:00
Andrey Volk a7477ed0e2 FS-11911: Fix build on Debian Buster 2019-07-15 22:23:25 +04:00
Mike Jerris 10a52ebe48 Merge pull request #1711 in FS/freeswitch from ~SEBASTIAN/freeswitch:bugfix/FS-11783-address-gcc8-warnings to master
* commit '3ca75eb8efa4e50ebe083a269b75fcb1762daa91':
  FS-11783: [mod_say_ja] quiet overflow warning
  FS-11783: [core] quiet gcc truncation warning
2019-06-24 09:29:12 -05:00
Piotr Gregor 9682d2c2c9 FS-11730 Add support for DTLSv1.2 and make default
Needed in Chrome version >= 74 as Chrome dropped support for v1.0:
https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/discuss-webrtc/yr6gbAgWsKo/9X5vQb8kGAAJ

Using old v1.0 DTLS if 1.2 is not available or legacy DTLS
wanted explicitly. To request old DTLS set variable

	<action application="set" data="legacyDTLS=1"/>

Note: requires openssl 1.0.2 or later for DTLS v1.2 support
2019-06-06 12:05:11 -04:00
Liyang a095c83ecc FS-11832 [core] clear the old pmap when codec negotiated 2019-06-06 11:59:16 -04:00
Dragos Oancea c82f093419 FS-11711: fix overflow on reading ICE candidates (found with ASAN) 2019-06-06 11:47:13 -04:00
Brian West 60be42008c FS-11660 [mod_sofia] Not parsing sdp after first video reject. 2019-06-06 11:36:26 -04:00
Liyang 0c73aa82da FS-11822 [core] reset the codec_string when stream changed 2019-06-06 11:21:19 -04:00
Piotr Gregor 118dd796f3 FS-11421: [core,mod_sofia] Fix rtp_pass_codecs_on_stream_change to process all sdp settings in the re-invite -- add new filter_codecs app and fix some races and negotiation bugs #resolve 2019-06-06 11:08:52 -04:00
Anthony Minessale c47752c940 FS-11438: [freeswitch-core] recvonly channels left that way on blind transfer in some cases #resolve 2019-06-06 11:05:20 -04:00
Sebastian Kemper e114c6382e FS-11783: [core] quiet gcc truncation warning
With -Wstringop-truncation gcc warns about calls to bounded string
manipulation function "strncpy" that may either truncate the copied
string or leave the destination unchanged. To avoid the warning when the
result is not expected to be NUL-terminated, it is suggested to call
"memcpy" instead.

src/switch_core_media.c: In function 'switch_core_media_patch_sdp':
src/switch_core_media.c:11854:4: error: 'strncpy' output truncated before terminating nul copying 2 bytes from a string of the same length [-Werror=stringop-truncation]
    strncpy(q, strchr(a_engine->adv_sdp_ip, ':') ? "6 " : "4 ", 2);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This commit follows gcc's recommendation.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2019-04-14 19:12:03 +02:00
Mike Jerris fc7b0d2e6e Merge pull request #1659 in FS/freeswitch from ~LAZEDO/freeswitch:feature/FS-11313 to master
* commit 'f238e7b6126a916fb0f05105e4f16d52d6ee3df0':
  FS-11313 [core] set rtpc-mux if found in the sdp
2019-02-12 15:21:52 +00:00
lazedo f238e7b612 FS-11313 [core] set rtpc-mux if found in the sdp 2019-02-12 15:19:58 +00:00
Chris Ayoup a1cb008087 FS-11646: Improved support for ICE-lite
Specifically:
* Send the a=ice-lite SDP attribute as a session-level attribute
* Suppress sending STUN connectivity checks when enabled
* Make sure FS is the controlled entity if it is declaring ICE-lite
2019-02-05 13:17:35 -05:00
Mike Jerris 968c76b29c Merge pull request #1597 in FS/freeswitch from ~DRAGOS_OANCEA_NX/freeswitch-dragos-nx:feat/FS-11409/ice-lite to master
* commit '3ed6d56dd3f05d6faf7d07cb2c08b4ee8c8c92a5':
  FS-11409: add "ice-lite" SDP attribute
2018-11-20 21:04:12 +00:00
Chris Rienzo c854466ed2 [core] Test commit- bump copyright date. 2018-11-06 12:03:07 -05:00
Mike Jerris 9927baa7d8 FS-11412: [core] Fix crash caused by missing or malformed ice candidates in sdp 2018-09-26 15:07:38 +00:00
Dragos Oancea 3ed6d56dd3 FS-11409: add "ice-lite" SDP attribute 2018-09-25 17:58:59 +01:00
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
Anthony Minessale cc5dd29028 FS-11154: [freeswitch-core] Improve audio sync during loss #resolve 2018-08-13 18:57:19 +00:00
Anthony Minessale d88df785f1 FS-11211: [Verto-Communicator] Add turnServer and verto server fallback options -- FS side to only do relay as a last resort #resolve 2018-07-24 07:21:56 +00:00
Mike Jerris 84c97ea3ab FS-11223: [core] fix Crash when firefox sends only rtcp and not rtp candidates on video media 2018-07-24 07:21:55 +00:00
Mike Jerris dc95ee3d66 Revert "FS-11052: Allow alias for crypto suites"
This reverts commit 7cc6d5f99d16d2d63cb2548dd7b8345d579b7e9f.
2018-07-24 07:21:52 +00:00
Anthony Minessale 74f8ec7772 FS-11127: [freeswitch-core] Improvements to Video JB and audio jb sync #resolve 2018-07-24 07:21:51 +00:00