Commit Graph

739 Commits

Author SHA1 Message Date
Hugo Arregui
0022840674 Handle AddIceCandidate if no remote desc is set
- Return proper error and prevent nil pointer dereference
2019-01-23 17:56:24 +01:00
Woodrow Douglass
ae07a4eef1 Update transport dependency
Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
a7e7bb5b13 Add a timeout to EventHandlers test
TestRTCDataChannel_EventHandlers

#relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
9458d58a04 Use a full API pointer instead of settingEngine
This replaces context pointers in many
RTC objects (to be more consistent)

Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
3aee69ea60 Add some tests for MediaEngine
Also, centralize the error object returned
from media engine codec searches

Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
6bbf915722 Add test coverage
for the log formatting functions

Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
ba9bc76bab Add a test for DataChannel.Send
Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
7743682c86 Use isolated API objects for more tests
This keeps tests from cross-contaminating each other

Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
40eb364f97 Add a test for the setting engine
Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
e906728df3 Factor out an API object
Relates to #333
2019-01-23 16:21:13 +01:00
Woodrow Douglass
bd7c6ffc25 Limit exposure to defaultSettingEngine global
Carry a settingengine pointer with objects that need access.

Relates to #333
2019-01-23 16:21:13 +01:00
backkem
5346aaee59 STUN: update dependency
Updating STUN dependency to new top level repo.
2019-01-21 12:14:59 -08:00
Sean DuBois
0d9cc6af61 Make RTCDataChannel mutex private
This needed to be public when the API wasn't thread safe, this was fixed
so making member private.

Resolves #311
2019-01-21 11:38:41 -08:00
Sean DuBois
a49250cdf8 Remove internal/network package
Some things still need to be moved/re-written for ORTC, but this makes
everything available in RTCPeerConnection

Resolves #313
2019-01-21 11:21:10 -08:00
Hugo Arregui
dfafda96cf Agent handles any inbound package
- STUN messages are still handled by handleInboundPackage
- Non STUN messsage will be marked as seen by a new agent method called
  NoSTUNSeen. This way we update lastReceived properly, not just for
  STUN messages
2019-01-21 17:17:57 +01:00
Michael MacDonald
665d68b6d2 Logging cleanup
Adjust more ICE logging messages to be at Trace level.

Refers to #361
2019-01-19 20:03:52 -08:00
Michael MacDonald
ac50aae718 Quiet spammy log messages
These messages should be at Trace level or removed altogether.

Relates to #222
2019-01-16 19:16:51 +01:00
Michael MacDonald
2883a4e959 Make logging.LogLevel a Stringer
Convenience function for printing the log level
as a string.

Relates to #222
2019-01-16 19:16:51 +01:00
Yutaka Takeda
d3c3079677 Fixed: unused agent
Resolves #335
2019-01-14 13:42:40 -08:00
Yutaka Takeda
09807a828e Use a private version of AddRemoteCandidate
Per suggestion from Sean.
Resolves #335
2019-01-14 13:42:40 -08:00
Yutaka Takeda
58d8685d37 Added candidate conversion tests
Resolves #335
2019-01-14 13:42:40 -08:00
Yutaka Takeda
b2e77f9f1b Added test for handleNewPeerReflexiveCandidate
Resolves #335
2019-01-14 13:42:40 -08:00
Yutaka Takeda
342642c2b4 Move prflx detection routine to a separate method
Resolves #335
2019-01-14 13:42:40 -08:00
Yutaka Takeda
2e81a07e3e Detect then add prflx candidate
Resolves #335
2019-01-14 13:42:40 -08:00
Sean DuBois
69d41e66dc Use new SRTP API, instead of just Read/Write
Relates to #272
2019-01-13 13:17:09 -08:00
Sean DuBois
f9a027dfa6 Rewrite SRTP streams to decrypt in place
Resolves #272
2019-01-13 13:17:09 -08:00
Sean DuBois
3040a26ec1 Update SRTCP to handle under/over sized buffers
Relates to #272
2019-01-13 13:17:09 -08:00
Sean DuBois
bb90754f46 Update SRTCP to allow in place operations
Relates to #272
2019-01-13 13:17:09 -08:00
Sean DuBois
bce2813b68 Update SRTP to allow in place operations
Relates to #272
2019-01-13 13:17:09 -08:00
Sean DuBois
696b7ff050 Remove build-examples from CI
This was useful when we had lots of things in the internal folder.
Now that we moved everything to their own repos this isn't an issue,
we also are sure that things build because of golang-ci.

It might be useful to grep for `github.com/pions/webrtc/internal` but
for now lets just watch in the PRs
2019-01-13 12:40:36 -08:00
Sean DuBois
7e027c6518 Update golangci-lint
Update to v1.12.5 and disable new linters
2019-01-13 12:40:36 -08:00
Sean DuBois
871557787d Update tooling to support modules
* Disable Go Modules when building examples out of tree
* Run golangci-lint against examples also
2019-01-13 12:40:36 -08:00
backkem
7e7b5151e9 CI: Enable Go module support
Force enable Go module support in travis-ci
2019-01-13 12:40:36 -08:00
backkem
80f1d78d2a Quic: Fix dependency
Fix broken dependency that caused go get to fail finding qtls.
2019-01-13 12:40:36 -08:00
Sean DuBois
f85e8f8a33 Ignore case when parsing RTCIceProtocol
Before we would fail to parse RTCIceProtocol if it was upcased.

Relates to #289
2019-01-10 15:10:21 -08:00
Michael MacDonald
20619e8712 Fix deadlock with trickle-ICE candidates
Resolves #349

Drop the write lock in RTCIceTransport.Start() so that
candidates can be added to the agent. Once the connection
is established, reacquire the lock to safely set up the mux.

Also fixes a couple of other thread safety issues found in
local testing.
2019-01-09 18:00:18 -05:00
backkem
4c45b5863c Modules: Update dependencies
Relates to #347
2019-01-09 00:40:46 +01:00
Sean DuBois
c2d637c7a5 Update examples/sfu to use RawRTP input/output
The example used the SampleBuilder before, which is buggy
and doesn't add any value. Move over the RawRTP input/output.

Resolves #343
2019-01-08 14:26:26 -08:00
Sean DuBois
1b19e2ae00 Better defaults for lossy realtime VP8
Update GStreamer examples to use some better defaults for real time
video. This isn't perfect, but improves the default experience for users
a little bit.

Relates to #303
2019-01-08 14:26:11 -08:00
Sean DuBois
3cf06329da Start SCTP after SRTP/SRTCP infrastructure
SCTP startup is blocking, and if other side isn't a SCTP server
we would prevent SRTP from starting.
2019-01-08 14:00:10 -08:00
backkem
4bea5c702d Quic: Add QuicTransport and E2E test
Relates to #275
2019-01-08 13:43:49 -08:00
backkem
ba05cd5224 ORTC: Improve test coverage
Relates to #273
2019-01-08 13:43:49 -08:00
backkem
81e5a31767 ORTC: Add RTCQuicTransport
Resolves #275
2019-01-08 13:43:49 -08:00
backkem
356f070793 Back WebRTC by RTCSctpTransport
Relates to #313
2019-01-08 13:43:49 -08:00
backkem
f2dc5557eb Back WebRTC by RTCDtlsTransport
Relates to #313
2019-01-08 13:43:49 -08:00
backkem
10397a79c7 Back WebRTC by RTCIceGatherer and RTCIceTransport
Relates to #313
2019-01-08 13:43:49 -08:00
backkem
e203a0537c ORTC: Add basic data channel constructors
Resolves #273
2019-01-08 13:43:49 -08:00
Woodrow Douglass
69571ee135 Nullable timeout settings
Allow connection timeout and keepalive interval
to have a valid 0 value, in which case nil denotes the default.

Relates to #325
2019-01-07 13:11:27 -08:00
Woodrow Douglass
8baed5d197 Shorten the argument list for network.NewManager
Relates to #325
2019-01-07 13:11:27 -08:00
Woodrow Douglass
bd75c3381e Add some tests to improve coverage
Relates to #324
2019-01-07 13:11:27 -08:00