go-clock migration

This commit is contained in:
guillaumemichel
2025-05-21 10:07:42 +02:00
parent 455a983b0e
commit dd80260b70
22 changed files with 49 additions and 44 deletions

View File

@@ -11,7 +11,7 @@ import (
"github.com/libp2p/go-flow-metrics" "github.com/libp2p/go-flow-metrics"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

4
go.mod
View File

@@ -7,9 +7,9 @@ retract v0.26.1 // Tag was applied incorrectly due to a bug in the release workf
retract v0.36.0 // Accidentally modified the tag. retract v0.36.0 // Accidentally modified the tag.
require ( require (
github.com/benbjohnson/clock v1.3.5
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0
github.com/filecoin-project/go-clock v0.1.0
github.com/flynn/noise v1.1.0 github.com/flynn/noise v1.1.0
github.com/google/gopacket v1.1.19 github.com/google/gopacket v1.1.19
github.com/gorilla/websocket v1.5.3 github.com/gorilla/websocket v1.5.3
@@ -24,7 +24,7 @@ require (
github.com/klauspost/compress v1.18.0 github.com/klauspost/compress v1.18.0
github.com/koron/go-ssdp v0.0.5 github.com/koron/go-ssdp v0.0.5
github.com/libp2p/go-buffer-pool v0.1.0 github.com/libp2p/go-buffer-pool v0.1.0
github.com/libp2p/go-flow-metrics v0.2.0 github.com/libp2p/go-flow-metrics v0.2.1-0.20250521075428-a62d82b8d5ef
github.com/libp2p/go-libp2p-asn-util v0.4.1 github.com/libp2p/go-libp2p-asn-util v0.4.1
github.com/libp2p/go-libp2p-testing v0.12.0 github.com/libp2p/go-libp2p-testing v0.12.0
github.com/libp2p/go-msgio v0.3.0 github.com/libp2p/go-msgio v0.3.0

8
go.sum
View File

@@ -10,8 +10,6 @@ git.apache.org/thrift.git v0.0.0-20180902110319-2566ecd5d999/go.mod h1:fPE2ZNJGy
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/benbjohnson/clock v1.3.5 h1:VvXlSJBzZpA/zum6Sj74hxwYI2DIxRWuNIoXAzHZz5o=
github.com/benbjohnson/clock v1.3.5/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
@@ -31,6 +29,8 @@ github.com/decred/dcrd/crypto/blake256 v1.1.0/go.mod h1:2OfgNZ5wDpcsFmHmCK5gZTPc
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 h1:NMZiJj8QnKe1LgsbDayM4UoHwbvwDRwnI3hwNaAHRnc= github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 h1:NMZiJj8QnKe1LgsbDayM4UoHwbvwDRwnI3hwNaAHRnc=
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0/go.mod h1:ZXNYxsqcloTdSy/rNShjYzMhyjf0LaoftYK0p+A3h40= github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0/go.mod h1:ZXNYxsqcloTdSy/rNShjYzMhyjf0LaoftYK0p+A3h40=
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/filecoin-project/go-clock v0.1.0 h1:SFbYIM75M8NnFm1yMHhN9Ahy3W5bEZV9gd6MPfXbKVU=
github.com/filecoin-project/go-clock v0.1.0/go.mod h1:4uB/O4PvOjlx1VCMdZ9MyDZXRm//gkj1ELEbxfI1AZs=
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc=
github.com/flynn/noise v1.1.0 h1:KjPQoQCEFdZDiP03phOvGi11+SVVhBG2wOWAorLsstg= github.com/flynn/noise v1.1.0 h1:KjPQoQCEFdZDiP03phOvGi11+SVVhBG2wOWAorLsstg=
github.com/flynn/noise v1.1.0/go.mod h1:xbMo+0i6+IGbYdJhF31t2eR1BIU0CYc12+BNAKwUTag= github.com/flynn/noise v1.1.0/go.mod h1:xbMo+0i6+IGbYdJhF31t2eR1BIU0CYc12+BNAKwUTag=
@@ -111,8 +111,8 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/libp2p/go-buffer-pool v0.1.0 h1:oK4mSFcQz7cTQIfqbe4MIj9gLW+mnanjyFtc6cdF0Y8= github.com/libp2p/go-buffer-pool v0.1.0 h1:oK4mSFcQz7cTQIfqbe4MIj9gLW+mnanjyFtc6cdF0Y8=
github.com/libp2p/go-buffer-pool v0.1.0/go.mod h1:N+vh8gMqimBzdKkSMVuydVDq+UV5QTWy5HSiZacSbPg= github.com/libp2p/go-buffer-pool v0.1.0/go.mod h1:N+vh8gMqimBzdKkSMVuydVDq+UV5QTWy5HSiZacSbPg=
github.com/libp2p/go-flow-metrics v0.2.0 h1:EIZzjmeOE6c8Dav0sNv35vhZxATIXWZg6j/C08XmmDw= github.com/libp2p/go-flow-metrics v0.2.1-0.20250521075428-a62d82b8d5ef h1:kI3xHemFnO3WByx2ldHZ5xj4iIemu1uSERDcsUDxG0o=
github.com/libp2p/go-flow-metrics v0.2.0/go.mod h1:st3qqfu8+pMfh+9Mzqb2GTiwrAGjIPszEjZmtksN8Jc= github.com/libp2p/go-flow-metrics v0.2.1-0.20250521075428-a62d82b8d5ef/go.mod h1:nuhlreIwEguM1IvHAew3ij7A8BMlyHQJ279ao24eZZo=
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94= github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8= github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
github.com/libp2p/go-libp2p-testing v0.12.0 h1:EPvBb4kKMWO29qP4mZGyhVzUyR25dvfUIK5WDu6iPUA= github.com/libp2p/go-libp2p-testing v0.12.0 h1:EPvBb4kKMWO29qP4mZGyhVzUyR25dvfUIK5WDu6iPUA=

View File

@@ -13,7 +13,7 @@ import (
"github.com/libp2p/go-libp2p/core/discovery" "github.com/libp2p/go-libp2p/core/discovery"
"github.com/libp2p/go-libp2p/core/peer" "github.com/libp2p/go-libp2p/core/peer"
mockClock "github.com/benbjohnson/clock" mockClock "github.com/filecoin-project/go-clock"
) )
type delayedDiscovery struct { type delayedDiscovery struct {

View File

@@ -6,7 +6,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
"github.com/libp2p/go-libp2p/p2p/discovery/mocks" "github.com/libp2p/go-libp2p/p2p/discovery/mocks"
"github.com/libp2p/go-libp2p/p2p/discovery/util" "github.com/libp2p/go-libp2p/p2p/discovery/util"
bhost "github.com/libp2p/go-libp2p/p2p/host/blank" bhost "github.com/libp2p/go-libp2p/p2p/host/blank"

View File

@@ -8,7 +8,7 @@ import (
pstore "github.com/libp2p/go-libp2p/core/peerstore" pstore "github.com/libp2p/go-libp2p/core/peerstore"
"github.com/libp2p/go-libp2p/p2p/host/peerstore/test" "github.com/libp2p/go-libp2p/p2p/host/peerstore/test"
mockClock "github.com/benbjohnson/clock" mockClock "github.com/filecoin-project/go-clock"
"github.com/ipfs/go-datastore/query" "github.com/ipfs/go-datastore/query"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"

View File

@@ -8,7 +8,7 @@ import (
pstore "github.com/libp2p/go-libp2p/core/peerstore" pstore "github.com/libp2p/go-libp2p/core/peerstore"
pt "github.com/libp2p/go-libp2p/p2p/host/peerstore/test" pt "github.com/libp2p/go-libp2p/p2p/host/peerstore/test"
mockclock "github.com/benbjohnson/clock" mockclock "github.com/filecoin-project/go-clock"
ds "github.com/ipfs/go-datastore" ds "github.com/ipfs/go-datastore"
"github.com/ipfs/go-datastore/sync" "github.com/ipfs/go-datastore/sync"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"

View File

@@ -10,7 +10,7 @@ import (
pt "github.com/libp2p/go-libp2p/p2p/host/peerstore/test" pt "github.com/libp2p/go-libp2p/p2p/host/peerstore/test"
"github.com/multiformats/go-multiaddr" "github.com/multiformats/go-multiaddr"
mockClock "github.com/benbjohnson/clock" mockClock "github.com/filecoin-project/go-clock"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"go.uber.org/goleak" "go.uber.org/goleak"
) )

View File

@@ -10,7 +10,7 @@ import (
"github.com/libp2p/go-libp2p/core/record" "github.com/libp2p/go-libp2p/core/record"
"github.com/libp2p/go-libp2p/core/test" "github.com/libp2p/go-libp2p/core/test"
mockClock "github.com/benbjohnson/clock" mockClock "github.com/filecoin-project/go-clock"
"github.com/multiformats/go-multiaddr" "github.com/multiformats/go-multiaddr"
) )
@@ -289,7 +289,6 @@ func testUpdateTTLs(m pstore.AddrBook, clk *mockClock.Mock) func(t *testing.T) {
AssertAddressesEqual(t, addrs1[1:], m.Addrs(ids[0])) AssertAddressesEqual(t, addrs1[1:], m.Addrs(ids[0]))
AssertAddressesEqual(t, addrs2[1:], m.Addrs(ids[1])) AssertAddressesEqual(t, addrs2[1:], m.Addrs(ids[1]))
}) })
} }
} }

View File

@@ -8,7 +8,7 @@ import (
"sync/atomic" "sync/atomic"
"time" "time"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
"github.com/libp2p/go-libp2p/core/connmgr" "github.com/libp2p/go-libp2p/core/connmgr"
"github.com/libp2p/go-libp2p/core/network" "github.com/libp2p/go-libp2p/core/network"
"github.com/libp2p/go-libp2p/core/peer" "github.com/libp2p/go-libp2p/core/peer"

View File

@@ -7,7 +7,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
"github.com/libp2p/go-libp2p/core/crypto" "github.com/libp2p/go-libp2p/core/crypto"
"github.com/libp2p/go-libp2p/core/network" "github.com/libp2p/go-libp2p/core/network"
"github.com/libp2p/go-libp2p/core/peer" "github.com/libp2p/go-libp2p/core/peer"
@@ -820,7 +820,7 @@ func (m mockConn) Scope() network.ConnScope { panic
func (m mockConn) ConnState() network.ConnectionState { return network.ConnectionState{} } func (m mockConn) ConnState() network.ConnectionState { return network.ConnectionState{} }
func makeSegmentsWithPeerInfos(peerInfos peerInfos) *segments { func makeSegmentsWithPeerInfos(peerInfos peerInfos) *segments {
var s = func() *segments { s := func() *segments {
ret := segments{} ret := segments{}
for i := range ret.buckets { for i := range ret.buckets {
ret.buckets[i] = &segment{ ret.buckets[i] = &segment{
@@ -858,12 +858,14 @@ func TestPeerInfoSorting(t *testing.T) {
}) })
t.Run("prefer peers with no streams", func(t *testing.T) { t.Run("prefer peers with no streams", func(t *testing.T) {
p1 := &peerInfo{id: peer.ID("peer1"), p1 := &peerInfo{
id: peer.ID("peer1"),
conns: map[network.Conn]time.Time{ conns: map[network.Conn]time.Time{
&mockConn{stats: network.ConnStats{NumStreams: 0}}: time.Now(), &mockConn{stats: network.ConnStats{NumStreams: 0}}: time.Now(),
}, },
} }
p2 := &peerInfo{id: peer.ID("peer2"), p2 := &peerInfo{
id: peer.ID("peer2"),
conns: map[network.Conn]time.Time{ conns: map[network.Conn]time.Time{
&mockConn{stats: network.ConnStats{NumStreams: 1}}: time.Now(), &mockConn{stats: network.ConnStats{NumStreams: 1}}: time.Now(),
}, },

View File

@@ -9,7 +9,7 @@ import (
"github.com/libp2p/go-libp2p/core/connmgr" "github.com/libp2p/go-libp2p/core/connmgr"
"github.com/libp2p/go-libp2p/core/peer" "github.com/libp2p/go-libp2p/core/peer"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
) )
// DefaultResolution is the default resolution of the decay tracker. // DefaultResolution is the default resolution of the decay tracker.

View File

@@ -9,7 +9,7 @@ import (
"github.com/libp2p/go-libp2p/core/peer" "github.com/libp2p/go-libp2p/core/peer"
tu "github.com/libp2p/go-libp2p/core/test" tu "github.com/libp2p/go-libp2p/core/test"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
) )

View File

@@ -4,7 +4,7 @@ import (
"errors" "errors"
"time" "time"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
) )
// config is the configuration struct for the basic connection manager. // config is the configuration struct for the basic connection manager.

View File

@@ -30,7 +30,7 @@ import (
useragent "github.com/libp2p/go-libp2p/p2p/protocol/identify/internal/user-agent" useragent "github.com/libp2p/go-libp2p/p2p/protocol/identify/internal/user-agent"
"github.com/libp2p/go-libp2p/p2p/protocol/identify/pb" "github.com/libp2p/go-libp2p/p2p/protocol/identify/pb"
mockClock "github.com/benbjohnson/clock" mockClock "github.com/filecoin-project/go-clock"
"github.com/libp2p/go-libp2p-testing/race" "github.com/libp2p/go-libp2p-testing/race"
"github.com/libp2p/go-msgio/pbio" "github.com/libp2p/go-msgio/pbio"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"

View File

@@ -4,7 +4,7 @@ import (
"testing" "testing"
"time" "time"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
"github.com/libp2p/go-libp2p" "github.com/libp2p/go-libp2p"
ic "github.com/libp2p/go-libp2p/core/crypto" ic "github.com/libp2p/go-libp2p/core/crypto"
"github.com/libp2p/go-libp2p/core/test" "github.com/libp2p/go-libp2p/core/test"

View File

@@ -9,7 +9,7 @@ import (
"sync" "sync"
"time" "time"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
ic "github.com/libp2p/go-libp2p/core/crypto" ic "github.com/libp2p/go-libp2p/core/crypto"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"
"github.com/multiformats/go-multihash" "github.com/multiformats/go-multihash"
@@ -18,8 +18,10 @@ import (
// Allow for a bit of clock skew. // Allow for a bit of clock skew.
// When we generate a certificate, the NotBefore time is set to clockSkewAllowance before the current time. // When we generate a certificate, the NotBefore time is set to clockSkewAllowance before the current time.
// Similarly, we stop using a certificate one clockSkewAllowance before its expiry time. // Similarly, we stop using a certificate one clockSkewAllowance before its expiry time.
const clockSkewAllowance = time.Hour const (
const validityMinusTwoSkew = certValidity - (2 * clockSkewAllowance) clockSkewAllowance = time.Hour
validityMinusTwoSkew = certValidity - (2 * clockSkewAllowance)
)
type certConfig struct { type certConfig struct {
tlsConf *tls.Config tlsConf *tls.Config

View File

@@ -11,7 +11,7 @@ import (
"github.com/libp2p/go-libp2p/core/crypto" "github.com/libp2p/go-libp2p/core/crypto"
"github.com/libp2p/go-libp2p/core/test" "github.com/libp2p/go-libp2p/core/test"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"
"github.com/multiformats/go-multibase" "github.com/multiformats/go-multibase"
"github.com/multiformats/go-multihash" "github.com/multiformats/go-multihash"

View File

@@ -22,7 +22,7 @@ import (
"github.com/libp2p/go-libp2p/p2p/security/noise/pb" "github.com/libp2p/go-libp2p/p2p/security/noise/pb"
"github.com/libp2p/go-libp2p/p2p/transport/quicreuse" "github.com/libp2p/go-libp2p/p2p/transport/quicreuse"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
logging "github.com/ipfs/go-log/v2" logging "github.com/ipfs/go-log/v2"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"
manet "github.com/multiformats/go-multiaddr/net" manet "github.com/multiformats/go-multiaddr/net"
@@ -90,9 +90,11 @@ type transport struct {
handshakeTimeout time.Duration handshakeTimeout time.Duration
} }
var _ tpt.Transport = &transport{} var (
var _ tpt.Resolver = &transport{} _ tpt.Transport = &transport{}
var _ io.Closer = &transport{} _ tpt.Resolver = &transport{}
_ io.Closer = &transport{}
)
func New(key ic.PrivKey, psk pnet.PSK, connManager *quicreuse.ConnManager, gater connmgr.ConnectionGater, rcmgr network.ResourceManager, opts ...Option) (tpt.Transport, error) { func New(key ic.PrivKey, psk pnet.PSK, connManager *quicreuse.ConnManager, gater connmgr.ConnectionGater, rcmgr network.ResourceManager, opts ...Option) (tpt.Transport, error) {
if len(psk) > 0 { if len(psk) > 0 {

View File

@@ -28,7 +28,7 @@ import (
"github.com/libp2p/go-libp2p/p2p/transport/quicreuse" "github.com/libp2p/go-libp2p/p2p/transport/quicreuse"
libp2pwebtransport "github.com/libp2p/go-libp2p/p2p/transport/webtransport" libp2pwebtransport "github.com/libp2p/go-libp2p/p2p/transport/webtransport"
"github.com/benbjohnson/clock" "github.com/filecoin-project/go-clock"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"
manet "github.com/multiformats/go-multiaddr/net" manet "github.com/multiformats/go-multiaddr/net"
"github.com/multiformats/go-multibase" "github.com/multiformats/go-multibase"
@@ -40,8 +40,10 @@ import (
"go.uber.org/mock/gomock" "go.uber.org/mock/gomock"
) )
const clockSkewAllowance = time.Hour const (
const certValidity = 14 * 24 * time.Hour clockSkewAllowance = time.Hour
certValidity = 14 * 24 * time.Hour
)
func newIdentity(t *testing.T) (peer.ID, ic.PrivKey) { func newIdentity(t *testing.T) (peer.ID, ic.PrivKey) {
key, _, err := ic.GenerateEd25519Key(rand.Reader) key, _, err := ic.GenerateEd25519Key(rand.Reader)
@@ -699,7 +701,6 @@ func serverSendsBackValidCert(t *testing.T, timeSinceUnixEpoch time.Duration, ke
return nil return nil
}, },
}, &quic.Config{MaxIdleTimeout: time.Second}) }, &quic.Config{MaxIdleTimeout: time.Second})
if err != nil { if err != nil {
if _, ok := err.(*quic.IdleTimeoutError); ok { if _, ok := err.(*quic.IdleTimeoutError); ok {
return errTimeout return errTimeout
@@ -712,7 +713,7 @@ func serverSendsBackValidCert(t *testing.T, timeSinceUnixEpoch time.Duration, ke
} }
func TestServerSendsBackValidCert(t *testing.T) { func TestServerSendsBackValidCert(t *testing.T) {
var maxTimeoutErrors = 10 maxTimeoutErrors := 10
require.NoError(t, quick.Check(func(timeSinceUnixEpoch time.Duration, keySeed int64, randomClientSkew time.Duration) bool { require.NoError(t, quick.Check(func(timeSinceUnixEpoch time.Duration, keySeed int64, randomClientSkew time.Duration) bool {
err := serverSendsBackValidCert(t, timeSinceUnixEpoch, keySeed, randomClientSkew) err := serverSendsBackValidCert(t, timeSinceUnixEpoch, keySeed, randomClientSkew)
if err == errTimeout { if err == errTimeout {
@@ -790,7 +791,6 @@ func TestServerRotatesCertCorrectly(t *testing.T) {
}) })
return found return found
}, nil)) }, nil))
} }

View File

@@ -9,12 +9,12 @@ require (
) )
require ( require (
github.com/benbjohnson/clock v1.3.5 // indirect
github.com/beorn7/perks v1.0.1 // indirect github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/filecoin-project/go-clock v0.1.0 // indirect
github.com/flynn/noise v1.1.0 // indirect github.com/flynn/noise v1.1.0 // indirect
github.com/francoispqt/gojay v1.2.13 // indirect github.com/francoispqt/gojay v1.2.13 // indirect
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
@@ -31,7 +31,7 @@ require (
github.com/klauspost/cpuid/v2 v2.2.10 // indirect github.com/klauspost/cpuid/v2 v2.2.10 // indirect
github.com/koron/go-ssdp v0.0.5 // indirect github.com/koron/go-ssdp v0.0.5 // indirect
github.com/libp2p/go-buffer-pool v0.1.0 // indirect github.com/libp2p/go-buffer-pool v0.1.0 // indirect
github.com/libp2p/go-flow-metrics v0.2.0 // indirect github.com/libp2p/go-flow-metrics v0.2.1-0.20250521075428-a62d82b8d5ef // indirect
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
github.com/libp2p/go-msgio v0.3.0 // indirect github.com/libp2p/go-msgio v0.3.0 // indirect
github.com/libp2p/go-netroute v0.2.2 // indirect github.com/libp2p/go-netroute v0.2.2 // indirect

View File

@@ -10,8 +10,6 @@ git.apache.org/thrift.git v0.0.0-20180902110319-2566ecd5d999/go.mod h1:fPE2ZNJGy
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/benbjohnson/clock v1.3.5 h1:VvXlSJBzZpA/zum6Sj74hxwYI2DIxRWuNIoXAzHZz5o=
github.com/benbjohnson/clock v1.3.5/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
@@ -33,6 +31,8 @@ github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0/go.mod h1:ZXNYxsqcloTdSy/rNShjY
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/filecoin-project/go-clock v0.1.0 h1:SFbYIM75M8NnFm1yMHhN9Ahy3W5bEZV9gd6MPfXbKVU=
github.com/filecoin-project/go-clock v0.1.0/go.mod h1:4uB/O4PvOjlx1VCMdZ9MyDZXRm//gkj1ELEbxfI1AZs=
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc= github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc=
github.com/flynn/noise v1.1.0 h1:KjPQoQCEFdZDiP03phOvGi11+SVVhBG2wOWAorLsstg= github.com/flynn/noise v1.1.0 h1:KjPQoQCEFdZDiP03phOvGi11+SVVhBG2wOWAorLsstg=
github.com/flynn/noise v1.1.0/go.mod h1:xbMo+0i6+IGbYdJhF31t2eR1BIU0CYc12+BNAKwUTag= github.com/flynn/noise v1.1.0/go.mod h1:xbMo+0i6+IGbYdJhF31t2eR1BIU0CYc12+BNAKwUTag=
@@ -109,8 +109,8 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/libp2p/go-buffer-pool v0.1.0 h1:oK4mSFcQz7cTQIfqbe4MIj9gLW+mnanjyFtc6cdF0Y8= github.com/libp2p/go-buffer-pool v0.1.0 h1:oK4mSFcQz7cTQIfqbe4MIj9gLW+mnanjyFtc6cdF0Y8=
github.com/libp2p/go-buffer-pool v0.1.0/go.mod h1:N+vh8gMqimBzdKkSMVuydVDq+UV5QTWy5HSiZacSbPg= github.com/libp2p/go-buffer-pool v0.1.0/go.mod h1:N+vh8gMqimBzdKkSMVuydVDq+UV5QTWy5HSiZacSbPg=
github.com/libp2p/go-flow-metrics v0.2.0 h1:EIZzjmeOE6c8Dav0sNv35vhZxATIXWZg6j/C08XmmDw= github.com/libp2p/go-flow-metrics v0.2.1-0.20250521075428-a62d82b8d5ef h1:kI3xHemFnO3WByx2ldHZ5xj4iIemu1uSERDcsUDxG0o=
github.com/libp2p/go-flow-metrics v0.2.0/go.mod h1:st3qqfu8+pMfh+9Mzqb2GTiwrAGjIPszEjZmtksN8Jc= github.com/libp2p/go-flow-metrics v0.2.1-0.20250521075428-a62d82b8d5ef/go.mod h1:nuhlreIwEguM1IvHAew3ij7A8BMlyHQJ279ao24eZZo=
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94= github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8= github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
github.com/libp2p/go-libp2p-testing v0.12.0 h1:EPvBb4kKMWO29qP4mZGyhVzUyR25dvfUIK5WDu6iPUA= github.com/libp2p/go-libp2p-testing v0.12.0 h1:EPvBb4kKMWO29qP4mZGyhVzUyR25dvfUIK5WDu6iPUA=