Commit Graph

765 Commits

Author SHA1 Message Date
Anthony Minessale 97f0c0301f fix zrtp build 2013-04-01 09:13:39 -05:00
Anthony Minessale fa8e199802 fix build 2013-03-31 21:27:27 -05:00
Anthony Minessale dd878da49d clean up proxy media mode 2013-03-31 21:27:27 -05:00
Anthony Minessale 45bd5952b1 fix some regressions and improve candidate selection 2013-03-31 21:27:26 -05:00
Anthony Minessale d33732ed00 MILESTONE: working firefox audio 2013-03-31 21:27:25 -05:00
Anthony Minessale c4b221c750 trying to get mozilla to work using sipml5, got stun/dtls/rtp flowing and its dead silent. c'mon guys... why do you have to do everything differently????? 2013-03-31 21:27:25 -05:00
Anthony Minessale 01e411c2d7 add ice based auto-adjust 2013-03-31 21:27:25 -05:00
Anthony Minessale bc3d2b20cd tweaks for calling local candidates 2013-03-31 21:27:24 -05:00
Anthony Minessale e1c3d51349 force the version header in the rtp packet to 2 when pulling data out of the jitter buffer because when you get a stun packet it will still be 0 from last time 2013-03-31 21:27:24 -05:00
Anthony Minessale 9b16fb319a make sure to sort rtp vs rtcp when using rtcp mux 2013-03-31 21:27:24 -05:00
Anthony Minessale 6b12d7b285 fix build against older openssl 2013-03-31 21:27:23 -05:00
Anthony Minessale 8d86577204 fix dtls ifdefs 2013-03-31 21:27:23 -05:00
Anthony Minessale ff532ec311 try to ifdef so we can still build against openssl older than 1.0.1 (but dtls would not work still in this case) 2013-03-31 21:27:23 -05:00
Anthony Minessale 4cac512b97 change ssl symbol visibility to specific places in core only 2013-03-31 21:27:23 -05:00
Anthony Minessale 16fa338b49 cleanup debug and memory and add stupid code for using sep dtls session when rtcp is not mux 2013-03-31 21:27:23 -05:00
Anthony Minessale a01ad9a1aa dtls both ways now 2013-03-31 21:27:22 -05:00
Anthony Minessale dd9271d6b9 MILESTONE: dtls-srtp inbound 2013-03-31 21:27:22 -05:00
Anthony Minessale dabb85c3f6 wip 2013-03-31 21:27:22 -05:00
Anthony Minessale 21408d4534 ice tweaks 2013-03-31 21:27:22 -05:00
Anthony Minessale b1c855e1aa remove debug 2013-03-31 21:27:20 -05:00
Anthony Minessale d77241c414 wip 2013-03-31 21:27:19 -05:00
Anthony Minessale f1e304cc29 wip 2013-03-31 21:27:19 -05:00
Anthony Minessale aa3368a1ac wip 2013-03-31 21:27:19 -05:00
Anthony Minessale daea865e7b fix rtcp 2013-03-31 21:27:19 -05:00
Anthony Minessale 72e2d183c1 update to cvs head srtp 2013-03-31 21:27:19 -05:00
Anthony Minessale aad4da5b71 typo 2013-03-31 21:27:18 -05:00
Anthony Minessale 12e70149ff rtcp-mux 2013-03-31 21:27:18 -05:00
Anthony Minessale 1c120dd2c8 not too shabby audio and vid work both directions but browswer hates our srtcp ... 2013-03-31 21:27:18 -05:00
Anthony Minessale 1db0e26e8e wip 2013-03-31 21:27:18 -05:00
Anthony Minessale 76502d9027 wip 2013-03-31 21:27:18 -05:00
Anthony Minessale aea974a91f MILESTONE: audio and video working inbound 2013-03-31 21:27:18 -05:00
Anthony Minessale 052ee0a1fa wip 2013-03-31 21:27:17 -05:00
Anthony Minessale 7510bccd6c MILESTONE: working inbound calls 2013-03-31 21:27:17 -05:00
Anthony Minessale cb076e6b28 fucked 2013-03-31 21:27:17 -05:00
Anthony Minessale f5e2a2e0ee fix cng 2013-03-31 21:27:17 -05:00
Anthony Minessale 330f68d946 convert rtp flags to arrays 2013-03-31 21:27:13 -05:00
Anthony Minessale 3226882682 FS-5203 --resolve 2013-03-27 11:09:07 -05:00
Anthony Minessale 3d2457eddd FS-5120 please update and test this version 2013-03-01 09:29:47 -06:00
Anthony Minessale b14fd4a5a4 FS-4923 try this 2013-02-14 14:07:25 -06:00
Travis Cross 388206d784 Whitespace 2013-01-31 19:25:07 +00:00
Travis Cross 69cda3d7cc Fix handling of the ZRTP cache path and file name
libzrtp strings are weird, and we were previously misusing the
function zrtp_zstrcpyc.  We can't use ZSTR_GV because it does insane
things and causes an array-bounds warning on gcc 4.7.  So we have to
take matters into our own hands and setup the string correctly and
copy data into it.

Because we were doing it wrong, people would get weird pseudo-random
single-character names for the zrtp cache file, and the file would end
up in the wrong place.  Now that this is fixed, users will need to
locate and move their zrtp cache file to their db_dir and name it
"zrtp.dat" if they wish to keep their current ZRTP cache.

FS-4344 --resolve
2013-01-31 18:40:24 +00:00
Anthony Minessale a46c897208 use less expensive time func in rtp stack 2013-01-15 09:15:39 -06:00
Anthony Minessale d78f4ffb19 fix vid regression 2013-01-13 21:27:17 -06:00
Anthony Minessale ca6d7a7aa0 FS-4905 This looks like it was only the case adjacent to dtmf; Try this patch. 2013-01-08 11:43:16 -06:00
Anthony Minessale 6f376023a2 send cng less often 2013-01-08 11:47:15 -06:00
Brian West b1ba926640 fix logging in debug def 2012-12-26 10:57:43 -06:00
Anthony Minessale 40346ff6a8 minor tweaks for udptl mode 2012-12-14 16:52:27 -06:00
Jeff Lenk 17833733aa fix for last commit - windows compiler warning 2012-12-13 21:54:54 -06:00
Anthony Minessale d301451782 fix issue where rtp stack was not paying attn to header extensions 2012-12-13 19:49:02 -06:00
Anthony Minessale e89fe5a03b FS-4905 hmm, part of my patch did not get comitted... try this... 2012-12-12 09:33:48 -06:00
Anthony Minessale 8aecffef50 don't send cn packet until you have sent some actual audio 2012-12-07 15:11:49 -06:00
Anthony Minessale 924c524197 fix some delay regressions 2012-12-05 13:17:50 -06:00
Anthony Minessale 57a2d59ed6 revert this, probably not needed 2012-12-02 09:58:33 -06:00
Anthony Minessale 444f7924e5 not quite, one more tweak 2012-11-30 14:05:45 -06:00
Anthony Minessale 4e3bb1a1e6 rtp and signal parsing adjustments 2012-11-30 13:54:47 -06:00
Anthony Minessale 6e3c08f590 disable catchup code when jitterbuffer is there 2012-11-30 11:43:48 -06:00
Anthony Minessale 1073f70b6f spread out timer skips to smooth out socket catch-up 2012-11-29 13:43:01 -06:00
Anthony Minessale d4f8a79299 try to improve audio stream sync 2012-11-28 23:12:35 -06:00
Brian West 89f4cd75f0 Fix 2833 Debuging 2012-11-21 13:59:23 -06:00
Anthony Minessale 6c1e81a813 FS-4797 --resolve 2012-11-06 08:53:00 -06:00
Anthony Minessale f1bcc387a3 put back seq number when pulling from jb 2012-10-30 16:05:44 -05:00
Anthony Minessale 986fede6b0 make a way to get the jitter buffer down to the codecs 2012-10-18 15:29:00 -04:00
Anthony Minessale a20aec182a add rtp_manual_video_rtp_bugs 2012-10-16 18:43:00 -04:00
Anthony Minessale 4dd1591945 FS-4684 this should help the proxy situation 2012-10-05 11:49:29 -05:00
Anthony Minessale 80c2bd786a FS-4669 --resolve 2012-10-02 10:31:32 -05:00
Anthony Minessale 8d61404016 fix issue where dtmf was not being sent on an outbound leg when there was no inbound audio 2012-09-28 16:17:20 -05:00
Anthony Minessale 5259814aee number not true 2012-09-28 14:06:04 -05:00
Anthony Minessale 4bb5c93e4a use a lower level write func for cng packets 2012-09-26 12:10:37 -05:00
Anthony Minessale 679921d914 FS-4548 --resolve such a little patch for a big problem, good find 2012-08-20 12:11:17 -05:00
Stefan Knoblich 8bcf3b4fb8 FreeSWITCH: Add switch_strerror_r() to fix problems with XSI and GNU variants of strerror_r().
GNU variant of strerror_r() returns char *, while the XSI version returns int.

To make things worse, glibc ships both and added a unused result warning
in recent versions (2.16) causing the build to fail.

Add our own custom wrapper that always returns a pointer to the message buffer
and additionally make XSI versions of strerror_r() GNU compatible by
returning "Unknown error xxx" if no error message is available.

Fixes:
    src/switch_rtp.c: In function 'rtp_common_read':
    src/switch_rtp.c:3313:15: error: ignoring return value of 'strerror_r',
    declared with attribute warn_unused_result [-Werror=unused-result]
    cc1: all warnings being treated as errors

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-08-14 14:11:44 +02:00
Stefan Knoblich 3b5b59e693 Revert "FreeSWITCH: Fix warn-unused-result error in rtp_common_read()."
*sigh* of course there are two versions of strerror_r():

	char *strerror_r() - GNU
	int strerror_r() - non-GNU

Revert and back the drawing board...

This reverts commit 3c82033e53.
2012-07-31 01:58:48 +02:00
Stefan Knoblich 3c82033e53 FreeSWITCH: Fix warn-unused-result error in rtp_common_read().
strerror_r() returns the error message string (and expects you to use it).

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-07-30 13:56:48 +02:00
Anthony Minessale 524468be7b FS-4373 --resolve this is probably the same issue nobody would file a bug about on the mailing list even after I begged them to from last weekend 2012-07-23 11:36:19 -05:00
Anthony Minessale db0cca3bf4 FS-4437 try this revision 2012-07-19 12:40:34 -05:00
Anthony Minessale f4e1fc4bc6 FS-4382 --resolve missing \! 2012-07-19 11:30:00 -05:00
Anthony Minessale f4715781dc FS-4382 reverse this so you have to enable instead of disable, this patch has been causing srtp issues because the change in ssrc 2012-07-18 22:01:41 -05:00
Anthony Minessale d63323977f turn on send_silence_when_idle whenever we engage srtp 2012-07-18 12:19:47 -05:00
Anthony Minessale b27aad913e typo 2012-07-17 10:32:31 -05:00
Anthony Minessale 8ad5d8a6b0 FS-4317 this might help, this fixes a regression cause by another recently altered code path and it sounds similar but I never got the new logs from you so this is a guess 2012-07-16 18:47:45 -05:00
Anthony Minessale 06046e3437 FS-4427 try this revision however i think its a problem with the remote client not properly preserving the headers of the srtp packets..... 2012-07-16 12:51:13 -05:00
Anthony Minessale b6e962de1d typo 2012-07-13 18:02:09 -05:00
Anthony Minessale 4a801c8626 only decode rtp packets in srtp mode 2012-07-13 14:58:20 -05:00
Jeff Lenk fc5490f1dc FS-4415 --resolve 2012-07-11 22:31:36 -05:00
Anthony Minessale 1e7d214ae6 compiler errs from last commit 2012-07-11 15:35:49 -05:00
Anthony Minessale 088437cab1 add some rtcp stuff for sangoma 2012-07-11 15:23:12 -05:00
Anthony Minessale 2aebe2456f first pass on some new stuff 2012-07-11 15:15:50 -05:00
Anthony Minessale 9ca929218f FS-4382 --resolve 2012-07-06 11:12:14 -05:00
Anthony Minessale 59bd4b0f14 fix regression with proxy_packet flag 2012-07-03 13:17:38 -05:00
Anthony Minessale 848f05fb41 FS-3659 this fixes sub issue, this should have been a new jira ticket 2012-06-28 14:02:02 -05:00
Travis Cross 7978bd8921 Don't truncate 5-digit port numbers
The adj_port buffer was only 5 bytes wide, so we were truncating any
port numbers >= 10000 that were written to this variable as snprintf
ensures the last byte is null.

FS-4354 --resolve
2012-06-27 20:17:08 +00:00
Jeff Lenk a97ec71902 fix warnings on windows code verification 2012-06-25 10:06:41 -05:00
Travis Cross 453b42e301 Remove extraneous parenthesis
This causes a warning that breaks the build with clang.
2012-06-24 07:36:14 +00:00
Travis Cross ad53499b42
Always set the ZRTP SAS verified flag on our side
When we're terminating ZRTP to an IVR or to a leg which is not
ZRTP-capable, there's no way for us to make an intelligent decision
about whether this flag should be set.  For a client to consider the
SAS as verified, however, both sides need to set this flag.  By always
setting this flag on our side, we leave the decision completely in the
hands of the client where we hope there is a careful human.

Signed-off-by: Travis Cross <tc@traviscross.com>
2012-06-23 22:34:06 +00:00
Anthony Minessale a5021fa384 FS-4337 --resolve this actually uncovered a bug cos it was supposed to be rtcp_bytes not bytes 2012-06-23 14:03:06 -05:00
Anthony Minessale 8b4c9dc42c FS-3659 and some refactor for rtcp ice and video ice and rtcp 2012-06-22 18:15:06 -05:00
Anthony Minessale 8bb55ed4bf abstract out originate_signal_bond to a function to avoid confustion and regressions 2012-05-29 13:10:15 -05:00
Travis Cross f37b1f0c54 squelch another source of noise ZRTP protection drops 2012-05-24 03:59:09 +00:00
Travis Cross d470ae239c don't log ZRTP protection drops
At least until we can distinguish the meaningful ones from the noise.
2012-05-24 03:52:51 +00:00
Travis Cross 236b927780 lower log level on ZRTP protection drop
When a call is being setup, a couple seconds of audio may be sent
unencrypted.  This seems to trigger the log message here with every
such packet.
2012-05-24 03:50:42 +00:00
Travis Cross 0c1a95f745 fix gcc 4.7.0 warning related to enum type
This amends commit 7bd9efc7f5.

We changed away from using unsigned here because it caused a warning
on Windows.  Using the more specific type, however, is causing a
warning on gcc-4.7 (it notices that the switch statement contains
values not present in the specified enum type).  So we're switching
back to unsigned here while keeping the type casts and hoping that
keeps Windows happy.
2012-05-24 00:48:59 +00:00
Travis Cross 83e090c30d add some casts to make things work with both gcc and VS
This amends commit 7bd9efc7f5.

Using the more explicit typedef causes gcc to warn about the
incompatible types for the reasons noted in the earlier commit
message.  This is why we just used the unsigned type earlier so we
could avoid all this casting.

The things we do to make Windows happy...
2012-05-17 16:40:30 +00:00
Jeff Lenk b65c321193 FS-4228 --resolve add zrtp support to windows vs2010 build 2012-05-17 08:38:11 -05:00
Travis Cross d5484651ce squelch a Windows VS warning about null termination on the ZID
According Jeff Lenk, Windows Visual Studio doesn't understand that
people use the char type for non-null-terminated byte arrays, so it
throws a warning about this that causes the build to fail on Windows.

As the initial value for the ZID doesn't really matter here one iota,
just null-terminate it on Windows.
2012-05-17 06:13:32 +00:00
Travis Cross fdc9e7f8b6 work around libzrtp API mistake for VS
libzrtp's sas_is_verified field is a uint32_t, but zrtp_verified_set
expects a uint8_t.  This is a boolean field, so it doesn't matter one
way or the other.  gcc doesn't care, but Windows Visual Studio
apparently throws a warning about this.
2012-05-17 05:40:57 +00:00
Travis Cross 7bd9efc7f5 use the typedef for an enum rather than unsigned
The callback here receives both zrtp_protocol_event_t and
zrtp_security_event_t events.  The latter is numbered contiguously to
the former.  Still, it's a bit confusing to have to pick one as a
type, but apparently this fixes a warning on Visual Studio on Windows.

Thanks to Jeff Lenk.
2012-05-16 21:26:50 +00:00
Travis Cross 31e0e17d6b make some ZRTP-related integer casts explicit
...to satisfy Windows Visual Studio.  Thanks to Jeff Lenk.
2012-05-16 21:05:41 +00:00
Anthony Minessale 76c0201e89 dtmf tweak 2012-05-08 12:52:52 -05:00
Anthony Minessale 845639025c FS-4122 2012-04-20 08:04:32 -05:00
Anthony Minessale 677b223579 FS-4122 --resolve this fixes the issue and eliminates the delay unless you configure it to have some 2012-04-18 09:56:06 -05:00
Ken Rice c5554eb939 Copyright date update. 2012-04-18 11:52:02 -05:00
Ken Rice 4307bee1e5 FS-4100 --resolve 2012-04-11 09:10:56 -05:00
Anthony Minessale 995ae2621c FS-3769 --resolve 2012-04-10 16:17:16 -05:00
Travis Cross 393b63b7bd integrate in-tree libzrtp into the build system
Thanks to Ken Rice for working with me late into the night to get this
done.
2012-04-05 04:10:55 +00:00
Anthony Minessale 07122bd17c FS-4032 --resolve please try to avoid the whitespace changes by using git diff -w 2012-03-27 15:53:09 -05:00
Anthony Minessale a239914926 addition to a6a3ff1dc5 2012-03-26 10:53:39 -05:00
Anthony Minessale a6a3ff1dc5 add another case to flush check 2012-02-28 09:51:57 -06:00
Anthony Minessale 62c6855f28 only flush on break when its a blocking situation part 1 2012-02-27 13:28:27 -06:00
Anthony Minessale 3a0767865d only flush on break when its a blocking situation 2012-02-27 13:26:50 -06:00
Anthony Minessale 812e5e9a26 FS-2216 2012-01-26 16:54:27 -06:00
Brian West d72a54ffe8 Improve the on off switch in ZRTP thanks jim 2012-01-24 23:39:52 -06:00
Mathieu Rene 3ffa7915c3 switch_rtp: fix audio glitches in jingle streams since ICE packets do not interrupt the RTP stream, we do not want to return a CNG frame when we get one 2012-01-23 11:01:24 -05:00
Anthony Minessale ecfc3bfe71 FS-3785 --resolve 2011-12-28 15:27:44 -06:00
Anthony Minessale a58742dc89 FS-2008 fix this patch to not consume memory getting variables 2011-12-16 09:16:37 -06:00
Marc Olivier Chouinard 442f4d2522 FS-3766 --resolve 2011-12-16 07:35:05 -05:00
Marc Olivier Chouinard 0a463b0c3c FS-949 --resolve 2011-12-15 19:13:09 -05:00
Marc Olivier Chouinard d1506e07cb FS-2008 --resolve 2011-12-15 14:44:25 -05:00
Anthony Minessale bc968ca8ad fix queued dtmf on channels with no timer issue 2011-11-14 12:37:45 -06:00
Anthony Minessale 9e09483589 add manual_rtp_bug gen_one_gen_all to prevent rtp passthru to break the *S* word.. 2011-10-07 10:40:30 -05:00
Anthony Minessale f4fa0c0efe OMFG really? I had this right then i comitted it wrong.... 2011-10-04 20:17:12 -05:00
Anthony Minessale 8e2793b45e another regression stemming from the series of commits to make stupid sonus happy 2011-10-04 18:02:34 -05:00
Jeff Lenk ef2f87deb2 fix trivial build error on windows 2011-09-09 16:08:47 -05:00
Anthony Minessale cb9abe0268 add new flag to frames to denote pass thru frames that are not audio 2011-09-09 13:56:04 -05:00
Anthony Minessale 0c066f063c DTMF stands for Devil Took My Fone 2011-09-09 12:02:15 -05:00
Anthony Minessale be4d36e3c6 OMFG one annoying bang 2011-09-09 11:34:41 -05:00
Anthony Minessale aea22cd4b7 add RTP_BUG_ACCEPT_ANY_PACKETS to disable dropping invalid packets for interop with Oracle CCA 2011-09-08 08:57:28 -05:00
Anthony Minessale c6c247d35c FS-3543 --resolve nevermind, found it 2011-09-06 11:30:28 -05:00
Anthony Minessale bff473bf32 antibiotics for our latest sonus infection 2011-08-31 19:30:58 -05:00
Anthony Minessale 8f67d2fbfb typo 2011-08-31 13:52:21 -05:00
Anthony Minessale bdad0e1713 tweak behaviour on rfc2833 a tad for the sake of interop with sonus who can't stand the idea of any gaps in timestamps 2011-08-31 12:04:02 -05:00
Anthony Minessale 6a5f6e5178 send mark bit when resuming audio after 2833 and resume sending from write side to avoid any double writes 2011-08-30 15:00:07 -05:00
Anthony Minessale 61ab84396b add new channel cap flag to indicate you can support queueable dtmf delay aka parsing w and W and implement it in the RTP stack and sofia endpoint 2011-08-29 11:04:38 -05:00
Anthony Minessale b426ec0bfa FS-2217 --resolve this looks ok and is probably useful 2011-08-25 09:27:39 -05:00
Anthony Minessale bf54c54823 adjustment to last commit 2011-08-24 15:52:40 -05:00
Anthony Minessale 0e5b694c44 add PAUSE_BETWEEN_DTMF rtp bug for sonus to delay sending 2833 digits so their buffering is not overwhealmed 2011-08-24 15:36:59 -05:00
Anthony Minessale 11d2cd1b49 print ip:port on rtp bind err 2011-08-01 23:55:58 -05:00
Anthony Minessale 123eaa524b fix rare t38 gateway issue 2011-05-12 10:32:39 -05:00
Anthony Minessale 1772fcb079 add largest_jb_size 2011-05-06 15:25:00 -05:00
Anthony Minessale a6b336e4cb add option to disable srtp with --disble-srtp 2011-05-02 11:33:57 -05:00
Anthony Minessale 73279f01bf FS-3166 --resolve 2011-04-22 16:43:29 -05:00
Brian West 2330b340a4 fix segfault in zrtp srtcp 2011-04-12 19:34:04 -05:00