Commit Graph

90 Commits

Author SHA1 Message Date
Nils Ohlmeier
3d4c996abf Adressing linter errors 2025-04-15 11:54:34 -06:00
Nils Ohlmeier
f153325514 Replaced enable with isDisabled 2025-04-15 11:54:34 -06:00
Nils Ohlmeier
a9ff362d89 Fixed lint error 2025-04-15 11:54:34 -06:00
Nils Ohlmeier
a561371028 Made multi codec the default 2025-04-15 11:54:34 -06:00
Nils Ohlmeier
be8800d522 Implemented alternative proposal via SettingEngine 2025-04-15 11:54:34 -06:00
Sean DuBois
e4ff415b2b Support DataChannel messages larger then MaxUint16
SCTP now internally can handle larger messages

Resolves #2712
2025-03-04 18:22:14 -08:00
Joe Turki
feeeebf251 Upgrade golangci-lint, more linters
Introduces new linters, upgrade golangci-lint to version (v1.63.4)
2025-01-18 07:16:06 -06:00
cnderrauber
9cfda8be16 Add EnableDataChannelBlockWrite to SettingEngine
The settingengine can enabled block write if
datachannel is detached, makes it working like
a normal net.Conn.
2024-12-16 12:18:56 +08:00
cnderrauber
8e2c8682de Add option to disable close by dtls
Close peerconnection on DTLS.CloseNotify
could break ice restart with dtls restart,
when the dtls finger-print changed, the
browser could teardown the old dtlstransport
and establish new one then pion could close
the peerconnection and restart failed. So
browser don't do this and spec also don't
say peerconnection should close when dtls
is closed.
2024-11-29 08:09:21 -05:00
WofWca
345d574c36 Update SettingEngine to use named return values
The behavior of SetInterfaceFilter and SetIPFilter isn't obvious. Name
the bool so the user understands the behavior from the function
definition.
2024-11-25 23:25:52 -05:00
Eric Daniels
76634b143a Add SetFireOnTrackBeforeFirstRTP 2024-10-15 12:10:07 -04:00
theodorsm
64a837f688 Add DTLS Handshake hooks to SettingEngine 2024-08-19 15:44:09 -04:00
Sean DuBois
3aab0355e0 Upgrade dtls, ice, stun and turn
New major version of all packages caused by DTLS upgrade
2024-08-12 13:45:35 -04:00
Sean DuBois
f388de6581 Update module github.com/pion/dtls/v2 to v3
Generated by renovateBot
2024-07-25 11:16:12 -05:00
renovate[bot]
480be18a34 Update module github.com/pion/ice/v3 to v3.0.7
Generated by renovateBot
2024-05-02 13:56:06 -04:00
Stephan Rotolante
b8fcf99aa0 Expose STUNGatherTimeout via SettingEngine
Resolves pion/webrtc#2668
2024-04-03 09:57:18 -04:00
Sean DuBois
5d7c2bf74f Remove unused member in SCTPTransport
RTOMax wasn't actually being stored, is being pulled directly from
SettingEngine
2024-03-18 13:14:44 -04:00
Benny Daon
fb82fff2bc Add SetSCTPRTOMax to SettingEngine
Allows the user to cap the retranmission timeout, this change adds
RTOMax to SettingEngine and pass it on when creating the SCTP Assocation
2024-03-18 09:40:55 -04:00
Sean DuBois
1dbcf67844 Put SCTP Zero Checksum behind SettingEngine
Old versions of Pion break against it
2024-03-18 09:33:27 -04:00
Dawei Feng
906f20c41d Add MaxBindingRequests to SettingEngine 2024-02-02 21:14:02 -05:00
Sean DuBois
34fe40e38b Remove deprecated APIs
Delete everything that was marked as deprecated
2023-09-14 14:15:40 -04:00
Sean DuBois
58c9a54275 Add SetDTLSCustomCipherSuite to SettingEngine
Resolves #2512
2023-09-11 18:38:30 -04: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