Commit Graph

71 Commits

Author SHA1 Message Date
renovate[bot]
7cad104f43 Update module github.com/pion/ice/v2 to v2.3.24
Generated by renovateBot
2024-05-02 14:24:07 -04:00
Sean DuBois
de2e7b7e01 Put SCTP Zero Checksum behind SettingEngine
Old versions of Pion break against it
2024-03-18 09:37:11 -04:00
David Zhao
e593588b47 Revert "Update module transport, srtp, ice and turn"
This reverts commit ea23dec2b9.
2023-09-08 15:06:27 -07:00
renovate[bot]
ea23dec2b9 Update module transport, srtp, ice and turn
ReplayDetector introduced a breaking change
2023-09-03 23:59:43 -04:00
Nicolas Menard
448f4ba601 Add DTLS KeyLog configuration option in WebRTC API
Add an option in the setting engine to log TLS key material when a
DTLS connection is established with a peer.
The option exists in pion/dtls but is not easily accessible
2023-07-31 13:58:22 -04:00
David Zhao
678ddd46e4 Add SettingsEngine option to disable Active TCP
Use SettingsEngine.DisableActiveTCP(true)
2023-06-26 16:51:10 -07:00
Simon Cousineau
a0e9824bc9 DTLS: Add Client/RootCAs, ClientAuth, Secret Opts 2023-06-02 11:49:25 -04:00
Guillaume Denis
ab11eed492 Improve SetEphemeralUDPPortRange documentation
With values used by pion/ice
2023-05-19 11:01:51 +02:00
lisa yan
4d3c4b13b1 Add SetDTLSConnectContextMaker to SettingEngine
Allows a user to set the context used during the DTLS Handshake. This
can be used to extend or reduce the timeout on the DTLS Handshake.

Resolves #2477
2023-05-18 23:16:42 -04:00
Steffen Vogel
683fc837d0 Make repo REUSE compliant 2023-05-05 11:58:49 -04:00
Anton
9671875982 Add SettingEngine.SetDTLSEllipticCurves
Allow users to explicitly configured the support EllipticCurves via
public API.
2023-03-02 22:20:04 -05:00
Sean DuBois
e7f24367fb Improve SetDTLSInsecureSkipHelloVerify comment
Explain the implication of setting this
2023-03-02 22:10:54 -05:00
Alexey Khit
2a47c12f22 Add DTLS InsecureSkipHelloVerify option 2023-03-02 17:05:34 -05:00
WofWca
9dd2c42999 Fix formatting in SettingEngine docs
SetICETimeouts and SetNAT1To1IPs are both incorrectly formatted
2023-02-09 15:13:01 -05:00
Steffen Vogel
eafdc7742a Use new pion/transport Net interface
This change adapts pion/ice to use a new interface for most network
related operations. The interface was formerly a simple struct vnet.Net
which was originally intended to facilicate testing. By replacing it
with an interface we have greater flexibility and allow users to hook
into the networking stack by providing their own implementation of
the interface.
2023-02-09 09:39:33 +01:00
cnderrauber
c75da54795 Add EnableLoopbackCandidate flag
Add EnableLoopbackCandidate flag
2022-11-23 12:58:57 +08:00
Kevin Wang
2ebf9c6418 Fix docs typo
Fixes a minor typo, a -> an.
2022-11-18 04:24:40 -05:00
cnderrauber
0b3df2b25f Update settingengine.go
Co-authored-by: David Zhao <dz@livekit.io>
2022-09-29 14:22:30 +08:00
cnderrauber
371d27cb57 Add IPFilter to SettingEngine
When machine's network interface have more than one ip address and
user don't want expose one of these ips to remote peer, interface
filter can't work in this case, so add a ip filter for that
2022-09-29 14:22:30 +08:00
Yutaka Takeda
eb1f6ad2db Max recv buf size via SettingEngine
Relates to pion/sctp#218
2022-04-27 17:19:02 -07:00
Sean DuBois
a6981566c5 Update module github.com/pion/ice/v2 to v2.2.6
Generated by renovateBot
2022-04-22 15:25:21 -04:00
cnderrauber
8d816c3b08 Update ice for accept aggressive nomination
Update ice to 2.2.5 for accept aggressive nomination
2022-04-21 16:21:42 +08:00
boks1971
1846813609 DTLS retransmission interval setting
Add SetDTLSRetranmissionInterval setting to SettingEngine.

Add test for SetDTLSRetransmissionInterval
2022-02-07 22:57:31 +05:30
Sean DuBois
157220e800 Run gofmt to add new build constraints
Also remove some 1.13 specific WASM code
2022-01-17 22:36:01 -05:00
bkim
3a6aea1d2d Add MTU Configuration to SettingEngine
This gives an option to raise the receive MTU as SettingEngine option.
If SettingEngine has not been set the MTU, then default value is used
instead, 1460

Resolves #1925
2021-08-20 09:59:56 -04:00
Sean DuBois
9677e616b7 Move defaultSrtpProtectionProfiles to constants.go
If a user is curious about the default value when configuring
SetSRTPProtectionProfiles this makes it easier to find.
2021-05-04 13:01:34 -07:00
digitalix
80fd6d8d59 Expose SRTP protection profiles in setting engine
Allows to override default SRTP protection profiles in settingengine.go
2021-05-04 20:27:15 +01:00
David Zhao
d0a52518b0 Introduce UDPMux in SettingsEngine, single-port
When set, Pion will handle ICE connections over UDPMux
2021-04-15 10:49:14 -07:00
Sean DuBois
c8b7aa386a Disable MediaEngine Copy by Default
If an API is shared between PeerConnections they would use the same
MediaEngine. A MediaEngine contains negotiated PayloadTypes so if the
PeerConnections were answering you would end up in invalid states.

Add DisableMediaEngineCopy to SettingEngine in case user needs old
behavior.

Resolves #1662
2021-02-09 21:31:57 -08:00
OrlandoCo
6ef4c1bba8 Add buffer factory
Allow to configure a buffer factory on SettingEngine to provide
a custom buffer for RTP/RTCP
2021-01-03 23:00:57 -05:00
Sean DuBois
7edfb701e0 New Track API
The Pion WebRTC API has been dramatically redesigned. The design docs
are located here [0]

You can also read the release notes [1] on how to migrate your
application.

[0] https://github.com/pion/webrtc-v3-design
[1] https://github.com/pion/webrtc/wiki/Release-WebRTC@v3.0.0
2020-11-15 09:20:47 -08:00
Pion
ae5c0046da Update CI configs to v0.4.12
Update lint scripts and CI configs.
2020-11-06 20:33:59 -08:00
Assad Obaid
6e72493517 Set the proxy dialer
Sets the proxy dialer in the ice package.

Relates to pion/ice#284
2020-10-09 13:01:38 -07:00
Sean DuBois
89c51a156c Rename SettingEngine mDNS Config option
GenerateMulticastDNSCandidates -> SetICEMulticastDNSMode.
Before a user wasn't able to disable mDNS. By changing it we can
do more with this API.
2020-10-05 16:52:21 -07:00
Sean DuBois
804a12fed3 Update CI configs to v0.4.7
Update lint scripts and CI configs.
2020-09-30 09:06:34 -07:00
Sean DuBois
2155a7d703 Move candidate parsing to pion/ice
Instead of having logic in pion/webrtc and pion/sdp move all logic to
pion/ice. Users of pion/ice don't want to import these packages to use
basic pion/ice functionality.
2020-09-13 00:05:09 -07:00
Jerko Steiner
cd3beeab24 Upgrade pion/ice to v2.0.0-rc.9
Add support for more stable ICE TCP API.
2020-08-01 11:11:51 +02:00
Jerko Steiner
2236ddeafd Add experimental support for ICE TCP
See pion/ice issue and PR:

- https://github.com/pion/ice/tree/issue-196
- https://github.com/pion/ice/pull/226
2020-07-15 15:08:37 +02:00
Sean DuBois
9ed5fd393c Remove CandidateSelectionTimeout
pion/ice now will use any valid candidate pair to exchange data.
Before we needed this we would wait to be selected before sending data,
now we just use anything that is connected.
2020-07-06 01:04:22 -07:00
Sean DuBois
ef1d5a4a8b Add extmap support
Extmaps are configured via the SettingEngine. This allows a user
to set arbitrary values, and when answering ids and entries are
properly excluded.

Co-authored-by: Gabor Pongracz <gabor.pongracz@proemergotech.com>
2020-07-03 01:01:56 -07:00
Woodrow Douglass
baf14a9af4 Media Level Fingerprints Configuration Option
This commit adds an option to put DTLS Fingerprint specification
at the media description level rather then the session description
level. This enhances compatibility with some 3rd party webrtc
implementations (notably Kurento).
2020-06-30 01:37:15 -07:00
Sean DuBois
bb3aa9717f Move to pion/ice@v2
Removed support for trickle ice

Resolves #1274
2020-06-28 00:01:47 -07:00
Simon Eisenmann
b95ee52c41 Add helpers to disable replay protection
Sometimes the replay protection of SRTP and SRTCP needs to be disabled.
This change adds disableSRTPReplayProtection and
DisableSRTCPReplayProtection helpers to SettingEngine.
2020-04-06 08:37:16 +02:00
Atsushi Watanabe
438ac1eb2f Add replay protection setting to SettingEngine
Set windows size of each protocol by:
- SetDTLSReplayProtectionWindow
- SetSRTPReplayProtectionWindow
- SetSRTCPReplayProtectionWindow
2020-03-29 12:22:55 -07:00
Sean DuBois
d10941f2a4 Add SettingEngine entries needed for offline sync
Allow users to set statice ICECredentials and to disable
DTLS Certificate Verification
2019-12-09 16:43:44 -08:00
Sean DuBois
70157302b6 Bump pion/ice
SettingEngine now allows setting static MulticastDNS HostName
2019-12-08 22:17:30 -08:00
Sean DuBois
99c0f8d32c GenerateMulticastDNSCandidates in SettingEngine
Users can now generate MulticastDNS candidates by enabling this option
in the SettingEngine.
2019-12-08 14:15:27 -08:00
Sean DuBois
1d42a11bde Add vnet to SettingEngine
Also add simple example to show usage

Resolves #778
2019-12-08 01:03:17 -08:00
Sean DuBois
7584762124 Expose Answering DTLSRole via SettingEngine
User can now control what DTLSRole the local client
takes when answering via the SettingEngine.

Relates to #880
2019-10-22 01:11:21 -07:00
Yutaka Takeda
d4053a8b71 Updates per code reviews
Use ICECandidateType instead of string
Combine two methods to one SetNAT1To1IPs
Resolves #835
2019-09-26 02:15:34 -07:00