Commit Graph

8 Commits

Author SHA1 Message Date
Sean DuBois
fb4760c37b Make TCPMux IPv4/IPv6 aware
TCPMux before would create one internal connection per ufrag. This could
cause remote IPv6 traffic to be dispatched to a local IPv4 handler (or
the inverse). The ice.Agent would then discard the traffic since a
candidate pair must be the same IP version.

This commit now creates two connections per ufrag. When requesting a
connection for a ufrag the user must specify if they want IPv4 or IPv6.

Relates to pion/webrtc#2125
Relates to pion/webrtc#1356
2022-02-21 08:55:50 -05:00
hn8
161b670ac4 Fix duplicate TCP candidates
Duplicate TCP candidates share the same candidateConn,
which would be closed if started before checking.
2021-07-23 10:53:16 -04:00
David Zhao
86d69d6ce5 Single port handling via UDPMux
Allows for ICE to handle connections on a single UDP port
2021-04-12 20:42:10 -07:00
Pion
d3e1775d73 Update CI configs to v0.4.7
Update lint scripts and CI configs.
2020-09-26 08:54:24 -07:00
Sam Lancia
30fd1787bc Fix logging nogo warnings
Fix two nogo warnings on incorrect log format and
error wrapping operator
2020-08-27 19:45:44 -07:00
Jerko Steiner
3b9a989177 Remove global state for ICE TCP
This addresses a few points issue of #245:

 - Take a net.Listener instead of having global state
 - Expose a net.TCPMux based API

Also, the unused closeChannel was removed from tcp_mux.go

Closes #253.
2020-08-01 09:28:28 +02:00
Jerko Steiner
1f596427e8 Remove check for ICEControlling for TCP ICE
Closes #249
2020-07-18 23:30:04 -07:00
Jerko Steiner
12f44e93f1 Add support for passive ICE TCP candidate
Closes #196
2020-07-15 07:51:55 +02:00