Marten Seemann
83b4e3cf9c
expose the security protocol on the ConnectionState
2 years ago
Marten Seemann
e2a246d5b6
upgrader: absorb SSMuxer into the upgrader
2 years ago
Marten Seemann
9e136c2531
swarm: move the additional peer ID check to the swarm
Only a subset of the transports use the ugprader (which uses the
SSMuxer). It's better to perform this check for every transport.
2 years ago
Marten Seemann
8dea194261
core/network: rename ConnectionState.NextProto to StreamMultiplexer
2 years ago
Marco Munizaga
86d5a5643e
Update go-netroute so that we get the correct priority of routes ( #1902 )
2 years ago
Marco Munizaga
8e90ed8c2c
fix: autorelay: treat static relays as just another peer source ( #1875 )
* Treat static relays as just another peer source
* Actually call the options in WithStaticRelays
* Increase timeout for CI
2 years ago
Marco Munizaga
0b4867c117
feat: quic,webtransport: enable both quic-draft29 and quic-v1 addrs on quic. only quic-v1 on webtransport ( #1881 )
* transport.Listener returns a list of multiaddrs
* Support both QUIC versions in QUIC transport
* Support only QUIC v1 in webtransport
* Update dialMatcher
* Update tests
* Only use draft 29 when dialing if the server is a draft 29 server
* Removes QUIC draft 29 addrs if we have a QUIC v1 addr
* Lint fix
* Add changes to deterministic certhashes after rebase
* Update p2p/transport/quic/options.go
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
* Update p2p/transport/quic/listener.go
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
* Update p2p/transport/quic/quic_multiaddr.go
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
* Stylize QUIC correctly
* Update doc around ListenClose
* Preallocate a bit extra to avoid paying for an allocation later
* Keep a list of multiaddrs, then join
* PR nits
* Close transport or listener just once
* Update go-multiaddr
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2 years ago
Dennis Trautwein
f4ddf5933a
holepunch: add multiaddress filter ( #1839 )
* feat: add holepunch address filter option
* fix: exit early if all addresses were filtered out
* incorporate PR feedback
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
* remove: holepunch default filter
* fix: hole punch failing test
* holepunch: fix race condition in test when adding holepunch service
* improve holepunch filter interface comments
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2 years ago
Marten Seemann
84ded7d47a
README: remove broken links from table of contents ( #1893 )
2 years ago
Marten Seemann
8a05c48665
quic: update quic-go to v0.31.0 ( #1882 )
2 years ago
Marten Seemann
da9005d783
Merge pull request #1887 from libp2p/muxer-integration-test
add an integration test for muxer selection
2 years ago
Marten Seemann
d813808745
upgrader: pass values through a channel instead of sharing state
2 years ago
Michele Mastrogiovanni
7357a00623
core/network: fix typo
2 years ago
Marten Seemann
4b74c6553f
add an integration test for muxer selection
2 years ago
Marten Seemann
9a5faceca1
upgrader: expose the negotiated stream muxer via the ConnState
2 years ago
Marten Seemann
133f002117
config: supply the host ID to fx
This is needed to construct the insecure transport.
2 years ago
Marten Seemann
090a084aea
Merge pull request #1888 from libp2p/early-muxer-negotiation-preferences
tls / noise: prefer the client's muxer preferences
2 years ago
Marten Seemann
0957a9d212
noise: prefer the client's muxer preference
2 years ago
Marten Seemann
c1e0c7b757
tls: prefer the client's muxer preference
2 years ago
Marten Seemann
04a43b13a9
upgrader: absorb the muxer_multistream.Transport into the upgrader ( #1885 )
2 years ago
Neel Virdy
d8d2efafdd
Apply service peer default ( #1878 )
2 years ago
Marco Munizaga
a0432e70af
webtransport: use deterministic TLS certificates ( #1833 )
* Use deterministic TLS certificates for webtransport
* Update test to work with buckets
* Make sure to overlap and use a random offset
* Fixup mistaken change in other test
* Add QuickCheck tests for cert behavior
* Lint fix
* Add more tests
* Add webtransport integration test
* Use same key
* Actually offset by at least clockSkew
* Use seeded key for certs after reboot test
* PR comments
* Remove debug code
* Fix calculation for cert having been valid
Fixes the logic that a cert has been valid for a clockSkew by
subtracting the clockSkew from the start time rather than incorporating
it into the offset. The offset should be used to shift the buckets.
* Update comment
* Lint fix
* Update TestGetCurrentBucketStartTimeIsWithinBounds to include clockSkew calculation
* Rebase fixes
2 years ago
Marten Seemann
c48e78f073
remove deprecated StaticRelays option ( #1868 )
2 years ago
Marten Seemann
bdb840fba2
autorelay: remove the default static relay option ( #1867 )
These relays were decomissioned recently.
2 years ago
Marten Seemann
8a43c6b1ae
core/protocol: remove deprecated Negotiator.NegotiateLazy ( #1869 )
2 years ago
Marten Seemann
e538b40615
Merge pull request #1858 from libp2p/fx
config: use fx dependency injection to construct transports
2 years ago
Marten Seemann
b90b74f3a5
check the options passed to transport constructor match
2 years ago
Marten Seemann
d0704fdc7e
config: forward fx output to the logger
2 years ago
Marten Seemann
7d0b6ba933
refactor the transport constructor code to remove TransportWithOptions
2 years ago
Marten Seemann
479dbb93c4
restrict the Muxer option to already constructed network.Multiplexers
2 years ago
Marten Seemann
cbe50095f3
config: use fx to construct security transports
2 years ago
Marten Seemann
f7c8c0247b
config: use fx to construct the transport upgrader
2 years ago
Marten Seemann
30e59560d3
upgrader: simplify the constructor
2 years ago
Marten Seemann
1367a62d52
use fx dependency injection to construct transports
2 years ago
Chinmay Kousik
c334288f8f
noise: add an option to allow unknown peer ID in SecureOutbound ( #1823 )
2 years ago
Marco Munizaga
0575c19f91
Add some guard rails and docs ( #1863 )
2 years ago
Marco Munizaga
da3adbc438
Fix concurrent map access in connmgr ( #1860 )
2 years ago
Dennis Trautwein
2d28a045fe
fix: return filtered addrs ( #1855 )
2 years ago
Håvard Anda Estensen
21dc42bd72
chore: preallocate slices ( #1842 )
* Preallocate slices
* Move slice allocs to right before they're used
* Revert slice assignments to append
* Don't preallocate for tests or deprecated code
* Don't preallocate too much
2 years ago
Marco Munizaga
14a37349c0
Close ping stream when we exit the loop ( #1853 )
2 years ago
Marten Seemann
277b96e421
tls: don't set the deprecated tls.Config.PreferServerCipherSuites field ( #1845 )
The field has been deprecated since Go 1.17.
2 years ago
Dennis Trautwein
24e7508536
routed host: search for new multi addresses upon connect failure ( #1835 )
* feat: search for new multi addresses upon connect failure
* test: add routed host obsolete maddr test
* incorporate pr feedback
2 years ago
Marten Seemann
4a556c8422
core/peerstore: removed unused provider addr ttl constant ( #1848 )
Co-authored-by: Dennis Trautwein <git@dtrautwein.eu>
2 years ago
Marten Seemann
cbb0761f1a
basichost: improve protocol negotiation debug message ( #1846 )
2 years ago
julian88110
7465a509d0
noise: use Noise Extension to negotiate the muxer during the handshake ( #1813 )
* Muxer early selection over Noise protocol
* Address review points round 2
* Muxer selection according responder's preference
* Address some review points again.
* noise: regenerate the protobuf
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2 years ago
Marten Seemann
c33f9104d4
Merge pull request #1832 from libp2p/webtransport-rcmgr
webtransport: use the rcmgr to control flow control window increases
2 years ago
Marten Seemann
b50b4609ab
webtransport: use the rcmgr to control flow control window increases
2 years ago
Marten Seemann
c0a0aa010e
rcmgr: make it possible to embed the NullResourceManager
2 years ago
Marten Seemann
012b8ddac4
chore: update quic-go to v0.30.0 ( #1838 )
2 years ago
Prithvi Shahi
ff2240b9a7
roadmap: reorder priority, reorganize sections ( #1831 )
2 years ago