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
2022-11-17 13:09:36 -08:00
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>
2022-11-17 10:01:19 -08:00
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>
2022-11-17 02:58:46 -08:00
Marten Seemann
84ded7d47a
README: remove broken links from table of contents ( #1893 )
2022-11-16 18:55:10 -08:00
Marten Seemann
8a05c48665
quic: update quic-go to v0.31.0 ( #1882 )
2022-11-16 16:26:31 -08:00
Marten Seemann
da9005d783
Merge pull request #1887 from libp2p/muxer-integration-test
...
add an integration test for muxer selection
2022-11-16 18:23:40 -06:00
Marten Seemann
d813808745
upgrader: pass values through a channel instead of sharing state
2022-11-17 12:42:54 +13:00
Michele Mastrogiovanni
7357a00623
core/network: fix typo
2022-11-16 15:24:05 -08:00
Marten Seemann
4b74c6553f
add an integration test for muxer selection
2022-11-17 12:03:28 +13:00
Marten Seemann
9a5faceca1
upgrader: expose the negotiated stream muxer via the ConnState
2022-11-17 12:03:28 +13:00
Marten Seemann
133f002117
config: supply the host ID to fx
...
This is needed to construct the insecure transport.
2022-11-17 12:03:28 +13:00
Marten Seemann
090a084aea
Merge pull request #1888 from libp2p/early-muxer-negotiation-preferences
...
tls / noise: prefer the client's muxer preferences
2022-11-16 17:02:11 -06:00
Marten Seemann
0957a9d212
noise: prefer the client's muxer preference
2022-11-17 11:10:50 +13:00
Marten Seemann
c1e0c7b757
tls: prefer the client's muxer preference
2022-11-17 11:10:49 +13:00
Marten Seemann
04a43b13a9
upgrader: absorb the muxer_multistream.Transport into the upgrader ( #1885 )
2022-11-16 14:09:21 -08:00
Neel Virdy
d8d2efafdd
Apply service peer default ( #1878 )
2022-11-15 14:56:58 -08:00
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
2022-11-14 07:44:25 -08:00
Marten Seemann
c48e78f073
remove deprecated StaticRelays option ( #1868 )
2022-11-11 00:23:28 -08:00
Marten Seemann
bdb840fba2
autorelay: remove the default static relay option ( #1867 )
...
These relays were decomissioned recently.
2022-11-10 23:30:49 -08:00
Marten Seemann
8a43c6b1ae
core/protocol: remove deprecated Negotiator.NegotiateLazy ( #1869 )
2022-11-10 23:30:13 -08:00
Marten Seemann
e538b40615
Merge pull request #1858 from libp2p/fx
...
config: use fx dependency injection to construct transports
2022-11-10 18:50:19 +00:00
Marten Seemann
b90b74f3a5
check the options passed to transport constructor match
2022-11-10 12:42:10 +00:00
Marten Seemann
d0704fdc7e
config: forward fx output to the logger
2022-11-10 10:09:50 +00:00
Marten Seemann
7d0b6ba933
refactor the transport constructor code to remove TransportWithOptions
2022-11-10 10:09:48 +00:00
Marten Seemann
479dbb93c4
restrict the Muxer option to already constructed network.Multiplexers
2022-11-10 10:09:47 +00:00
Marten Seemann
cbe50095f3
config: use fx to construct security transports
2022-11-10 10:09:45 +00:00
Marten Seemann
f7c8c0247b
config: use fx to construct the transport upgrader
2022-11-10 10:09:38 +00:00
Marten Seemann
30e59560d3
upgrader: simplify the constructor
2022-11-10 10:07:17 +00:00
Marten Seemann
1367a62d52
use fx dependency injection to construct transports
2022-11-10 10:07:15 +00:00
Chinmay Kousik
c334288f8f
noise: add an option to allow unknown peer ID in SecureOutbound ( #1823 )
2022-11-09 04:10:32 -08:00
Marco Munizaga
0575c19f91
Add some guard rails and docs ( #1863 )
2022-11-08 17:12:28 -08:00
Marco Munizaga
da3adbc438
Fix concurrent map access in connmgr ( #1860 )
2022-11-08 17:06:38 -08:00
Dennis Trautwein
2d28a045fe
fix: return filtered addrs ( #1855 )
2022-11-08 14:52:43 -08:00
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
2022-11-06 04:48:40 -08:00
Marco Munizaga
14a37349c0
Close ping stream when we exit the loop ( #1853 )
2022-11-02 15:55:11 -07:00
Marten Seemann
277b96e421
tls: don't set the deprecated tls.Config.PreferServerCipherSuites field ( #1845 )
...
The field has been deprecated since Go 1.17.
2022-11-01 13:44:06 +00:00
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
2022-10-31 14:41:58 -07:00
Marten Seemann
4a556c8422
core/peerstore: removed unused provider addr ttl constant ( #1848 )
...
Co-authored-by: Dennis Trautwein <git@dtrautwein.eu>
2022-10-31 14:41:35 -07:00
Marten Seemann
cbb0761f1a
basichost: improve protocol negotiation debug message ( #1846 )
2022-10-31 20:31:43 +00:00
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>
2022-10-25 10:11:19 -07:00
Marten Seemann
c33f9104d4
Merge pull request #1832 from libp2p/webtransport-rcmgr
...
webtransport: use the rcmgr to control flow control window increases
2022-10-24 16:39:36 +01:00
Marten Seemann
b50b4609ab
webtransport: use the rcmgr to control flow control window increases
2022-10-24 13:24:06 +01:00
Marten Seemann
c0a0aa010e
rcmgr: make it possible to embed the NullResourceManager
2022-10-24 13:24:04 +01:00
Marten Seemann
012b8ddac4
chore: update quic-go to v0.30.0 ( #1838 )
2022-10-23 03:37:27 -07:00
Prithvi Shahi
ff2240b9a7
roadmap: reorder priority, reorganize sections ( #1831 )
2022-10-20 15:55:30 -07:00
Marco Munizaga
3e156d0813
websocket: set the HTTP host header in WSS( #1834 )
...
* Send host header
Co-authored-by: Thibault Meunier <thibault@cloudflare.com>
* Add comment and use splithostport
* Return error
* Defer the close
Co-authored-by: Thibault Meunier <thibault@cloudflare.com>
2022-10-20 02:51:05 -07:00
Marten Seemann
828486ea04
Merge pull request #1828 from libp2p/webtransport-qlogging
...
webtransport: make it possible to record qlogs (controlled by QLOGDIR env)
2022-10-14 20:49:25 +02:00
Jc0803kevin
a401276e68
ipfs /api/v0/id is post ( #1819 )
2022-10-13 09:08:58 -07:00
Marten Seemann
28ca6e5139
quicutils: make the package internal
2022-10-12 19:48:05 +02:00
Marten Seemann
ead3e4f981
webtransport: simplify listener constructor
2022-10-12 19:46:49 +02:00