diff --git a/p2p/protocol/identify/id.go b/p2p/protocol/identify/id.go index 0f5fd8f6ac..de25436dc2 100644 --- a/p2p/protocol/identify/id.go +++ b/p2p/protocol/identify/id.go @@ -19,6 +19,7 @@ import ( "github.com/libp2p/go-libp2p/core/protocol" "github.com/libp2p/go-libp2p/core/record" "github.com/libp2p/go-libp2p/p2p/host/eventbus" + useragent "github.com/libp2p/go-libp2p/p2p/protocol/identify/internal/user-agent" "github.com/libp2p/go-libp2p/p2p/protocol/identify/pb" logging "github.com/ipfs/go-log/v2" @@ -54,8 +55,6 @@ const ( connectedPeerMaxAddrs = 500 ) -var defaultUserAgent = "github.com/libp2p/go-libp2p" - type identifySnapshot struct { seq uint64 protocols []protocol.ID @@ -188,7 +187,7 @@ func NewIDService(h host.Host, opts ...Option) (*idService, error) { opt(&cfg) } - userAgent := defaultUserAgent + userAgent := useragent.DefaultUserAgent() if cfg.userAgent != "" { userAgent = cfg.userAgent } diff --git a/p2p/protocol/identify/id_test.go b/p2p/protocol/identify/id_test.go index 06ea0119df..994f042b3e 100644 --- a/p2p/protocol/identify/id_test.go +++ b/p2p/protocol/identify/id_test.go @@ -27,6 +27,7 @@ import ( "github.com/libp2p/go-libp2p/p2p/net/swarm" swarmt "github.com/libp2p/go-libp2p/p2p/net/swarm/testing" "github.com/libp2p/go-libp2p/p2p/protocol/identify" + useragent "github.com/libp2p/go-libp2p/p2p/protocol/identify/internal/user-agent" "github.com/libp2p/go-libp2p/p2p/protocol/identify/pb" mockClock "github.com/benbjohnson/clock" @@ -44,9 +45,8 @@ func testKnowsAddrs(t *testing.T, h host.Host, p peer.ID, expected []ma.Multiadd func testHasAgentVersion(t *testing.T, h host.Host, p peer.ID) { v, err := h.Peerstore().Get(p, "AgentVersion") - if v.(string) != "github.com/libp2p/go-libp2p" { // this is the default user agent - t.Error("agent version mismatch", err) - } + require.NoError(t, err, "fetching agent version") + require.Equal(t, useragent.DefaultUserAgent(), v, "agent version") } func testHasPublicKey(t *testing.T, h host.Host, p peer.ID, shouldBe ic.PubKey) { @@ -104,7 +104,7 @@ func emitAddrChangeEvt(t *testing.T, h host.Host) { } } -// TestIDServiceWait gives the ID service 1s to finish after dialing +// TestIDService gives the ID service 1s to finish after dialing // this is because it used to be concurrent. Now, Dial wait till the // id service is done. func TestIDService(t *testing.T) { diff --git a/p2p/protocol/identify/user_agent.go b/p2p/protocol/identify/internal/user-agent/user_agent.go similarity index 84% rename from p2p/protocol/identify/user_agent.go rename to p2p/protocol/identify/internal/user-agent/user_agent.go index 016f941f39..a639d4c5f5 100644 --- a/p2p/protocol/identify/user_agent.go +++ b/p2p/protocol/identify/internal/user-agent/user_agent.go @@ -1,10 +1,16 @@ -package identify +package useragent import ( "fmt" "runtime/debug" ) +func DefaultUserAgent() string { + return defaultUserAgent +} + +var defaultUserAgent = "github.com/libp2p/go-libp2p" + func init() { bi, ok := debug.ReadBuildInfo() if !ok {