Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
G
go-ipfs
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
jihao
go-ipfs
Commits
456084e6
提交
456084e6
authored
4月 23, 2019
作者:
Łukasz Magiera
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
constructor: drop P2P prefix from libp2p related units
License: MIT Signed-off-by:
Łukasz Magiera
<
magik6k@gmail.com
>
上级
da473d28
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
42 行增加
和
42 行删除
+42
-42
groups.go
core/node/groups.go
+19
-19
discovery.go
core/node/libp2p/discovery.go
+1
-1
libp2p.go
core/node/libp2p/libp2p.go
+20
-20
p2p.go
p2p/p2p.go
+2
-2
没有找到文件。
core/node/groups.go
浏览文件 @
456084e6
...
@@ -14,23 +14,23 @@ import (
...
@@ -14,23 +14,23 @@ import (
)
)
var
BaseLibP2P
=
fx
.
Options
(
var
BaseLibP2P
=
fx
.
Options
(
fx
.
Provide
(
libp2p
.
P2P
AddrFilters
),
fx
.
Provide
(
libp2p
.
AddrFilters
),
fx
.
Provide
(
libp2p
.
P2P
BandwidthCounter
),
fx
.
Provide
(
libp2p
.
BandwidthCounter
),
fx
.
Provide
(
libp2p
.
P
2PP
Net
),
fx
.
Provide
(
libp2p
.
PNet
),
fx
.
Provide
(
libp2p
.
P2P
AddrsFactory
),
fx
.
Provide
(
libp2p
.
AddrsFactory
),
fx
.
Provide
(
libp2p
.
P2P
ConnectionManager
),
fx
.
Provide
(
libp2p
.
ConnectionManager
),
fx
.
Provide
(
libp2p
.
P2P
NatPortMap
),
fx
.
Provide
(
libp2p
.
NatPortMap
),
fx
.
Provide
(
libp2p
.
P2P
Relay
),
fx
.
Provide
(
libp2p
.
Relay
),
fx
.
Provide
(
libp2p
.
P2P
AutoRealy
),
fx
.
Provide
(
libp2p
.
AutoRealy
),
fx
.
Provide
(
libp2p
.
P2P
DefaultTransports
),
fx
.
Provide
(
libp2p
.
DefaultTransports
),
fx
.
Provide
(
libp2p
.
P2P
QUIC
),
fx
.
Provide
(
libp2p
.
QUIC
),
fx
.
Provide
(
libp2p
.
P2P
Host
),
fx
.
Provide
(
libp2p
.
Host
),
fx
.
Provide
(
libp2p
.
New
DiscoveryHandler
),
fx
.
Provide
(
libp2p
.
DiscoveryHandler
),
fx
.
Invoke
(
libp2p
.
AutoNATService
),
fx
.
Invoke
(
libp2p
.
AutoNATService
),
fx
.
Invoke
(
libp2p
.
P
2PP
NetChecker
),
fx
.
Invoke
(
libp2p
.
PNetChecker
),
fx
.
Invoke
(
libp2p
.
StartListening
),
fx
.
Invoke
(
libp2p
.
StartListening
),
fx
.
Invoke
(
libp2p
.
SetupDiscovery
),
fx
.
Invoke
(
libp2p
.
SetupDiscovery
),
)
)
...
@@ -39,13 +39,13 @@ func LibP2P(cfg *BuildCfg) fx.Option {
...
@@ -39,13 +39,13 @@ func LibP2P(cfg *BuildCfg) fx.Option {
opts
:=
fx
.
Options
(
opts
:=
fx
.
Options
(
BaseLibP2P
,
BaseLibP2P
,
fx
.
Provide
(
libp2p
.
P2P
Security
(
!
cfg
.
DisableEncryptedConnections
)),
fx
.
Provide
(
libp2p
.
Security
(
!
cfg
.
DisableEncryptedConnections
)),
maybeProvide
(
libp2p
.
Pubsub
,
cfg
.
getOpt
(
"pubsub"
)
||
cfg
.
getOpt
(
"ipnsps"
)),
maybeProvide
(
libp2p
.
Pubsub
,
cfg
.
getOpt
(
"pubsub"
)
||
cfg
.
getOpt
(
"ipnsps"
)),
fx
.
Provide
(
libp2p
.
P2P
SmuxTransport
(
cfg
.
getOpt
(
"mplex"
))),
fx
.
Provide
(
libp2p
.
SmuxTransport
(
cfg
.
getOpt
(
"mplex"
))),
fx
.
Provide
(
libp2p
.
P2P
Routing
),
fx
.
Provide
(
libp2p
.
Routing
),
fx
.
Provide
(
libp2p
.
P2P
BaseRouting
),
fx
.
Provide
(
libp2p
.
BaseRouting
),
maybeProvide
(
libp2p
.
P
2PP
ubsubRouter
,
cfg
.
getOpt
(
"ipnsps"
)),
maybeProvide
(
libp2p
.
PubsubRouter
,
cfg
.
getOpt
(
"ipnsps"
)),
)
)
return
opts
return
opts
...
@@ -85,7 +85,7 @@ func Online(cfg *BuildCfg) fx.Option {
...
@@ -85,7 +85,7 @@ func Online(cfg *BuildCfg) fx.Option {
fx
.
Invoke
(
IpnsRepublisher
),
fx
.
Invoke
(
IpnsRepublisher
),
fx
.
Provide
(
p2p
.
New
P2P
),
fx
.
Provide
(
p2p
.
New
),
LibP2P
(
cfg
),
LibP2P
(
cfg
),
Providers
,
Providers
,
...
...
core/node/libp2p/discovery.go
浏览文件 @
456084e6
...
@@ -28,7 +28,7 @@ func (dh *discoveryHandler) HandlePeerFound(p peerstore.PeerInfo) {
...
@@ -28,7 +28,7 @@ func (dh *discoveryHandler) HandlePeerFound(p peerstore.PeerInfo) {
}
}
}
}
func
New
DiscoveryHandler
(
mctx
helpers
.
MetricsCtx
,
lc
fx
.
Lifecycle
,
host
host
.
Host
)
*
discoveryHandler
{
func
DiscoveryHandler
(
mctx
helpers
.
MetricsCtx
,
lc
fx
.
Lifecycle
,
host
host
.
Host
)
*
discoveryHandler
{
return
&
discoveryHandler
{
return
&
discoveryHandler
{
ctx
:
helpers
.
LifecycleCtx
(
mctx
,
lc
),
ctx
:
helpers
.
LifecycleCtx
(
mctx
,
lc
),
host
:
host
,
host
:
host
,
...
...
core/node/libp2p/libp2p.go
浏览文件 @
456084e6
...
@@ -102,7 +102,7 @@ func Peerstore(id peer.ID, sk crypto.PrivKey) (peerstore.Peerstore, error) {
...
@@ -102,7 +102,7 @@ func Peerstore(id peer.ID, sk crypto.PrivKey) (peerstore.Peerstore, error) {
return
ps
,
nil
return
ps
,
nil
}
}
func
P2P
AddrFilters
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
AddrFilters
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
for
_
,
s
:=
range
cfg
.
Swarm
.
AddrFilters
{
for
_
,
s
:=
range
cfg
.
Swarm
.
AddrFilters
{
f
,
err
:=
mamask
.
NewMask
(
s
)
f
,
err
:=
mamask
.
NewMask
(
s
)
if
err
!=
nil
{
if
err
!=
nil
{
...
@@ -113,7 +113,7 @@ func P2PAddrFilters(cfg *config.Config) (opts Libp2pOpts, err error) {
...
@@ -113,7 +113,7 @@ func P2PAddrFilters(cfg *config.Config) (opts Libp2pOpts, err error) {
return
opts
,
nil
return
opts
,
nil
}
}
func
P2P
BandwidthCounter
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
reporter
metrics
.
Reporter
)
{
func
BandwidthCounter
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
reporter
metrics
.
Reporter
)
{
reporter
=
metrics
.
NewBandwidthCounter
()
reporter
=
metrics
.
NewBandwidthCounter
()
if
!
cfg
.
Swarm
.
DisableBandwidthMetrics
{
if
!
cfg
.
Swarm
.
DisableBandwidthMetrics
{
...
@@ -130,7 +130,7 @@ type Libp2pOpts struct {
...
@@ -130,7 +130,7 @@ type Libp2pOpts struct {
type
PNetFingerprint
[]
byte
type
PNetFingerprint
[]
byte
func
P
2PP
Net
(
repo
repo
.
Repo
)
(
opts
Libp2pOpts
,
fp
PNetFingerprint
,
err
error
)
{
func
PNet
(
repo
repo
.
Repo
)
(
opts
Libp2pOpts
,
fp
PNetFingerprint
,
err
error
)
{
swarmkey
,
err
:=
repo
.
SwarmKey
()
swarmkey
,
err
:=
repo
.
SwarmKey
()
if
err
!=
nil
||
swarmkey
==
nil
{
if
err
!=
nil
||
swarmkey
==
nil
{
return
opts
,
nil
,
err
return
opts
,
nil
,
err
...
@@ -146,7 +146,7 @@ func P2PPNet(repo repo.Repo) (opts Libp2pOpts, fp PNetFingerprint, err error) {
...
@@ -146,7 +146,7 @@ func P2PPNet(repo repo.Repo) (opts Libp2pOpts, fp PNetFingerprint, err error) {
return
opts
,
fp
,
nil
return
opts
,
fp
,
nil
}
}
func
P
2PP
NetChecker
(
repo
repo
.
Repo
,
ph
host
.
Host
,
lc
fx
.
Lifecycle
)
error
{
func
PNetChecker
(
repo
repo
.
Repo
,
ph
host
.
Host
,
lc
fx
.
Lifecycle
)
error
{
// TODO: better check?
// TODO: better check?
swarmkey
,
err
:=
repo
.
SwarmKey
()
swarmkey
,
err
:=
repo
.
SwarmKey
()
if
err
!=
nil
||
swarmkey
==
nil
{
if
err
!=
nil
||
swarmkey
==
nil
{
...
@@ -229,7 +229,7 @@ func makeAddrsFactory(cfg config.Addresses) (p2pbhost.AddrsFactory, error) {
...
@@ -229,7 +229,7 @@ func makeAddrsFactory(cfg config.Addresses) (p2pbhost.AddrsFactory, error) {
},
nil
},
nil
}
}
func
P2P
AddrsFactory
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
AddrsFactory
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
addrsFactory
,
err
:=
makeAddrsFactory
(
cfg
.
Addresses
)
addrsFactory
,
err
:=
makeAddrsFactory
(
cfg
.
Addresses
)
if
err
!=
nil
{
if
err
!=
nil
{
return
opts
,
err
return
opts
,
err
...
@@ -238,7 +238,7 @@ func P2PAddrsFactory(cfg *config.Config) (opts Libp2pOpts, err error) {
...
@@ -238,7 +238,7 @@ func P2PAddrsFactory(cfg *config.Config) (opts Libp2pOpts, err error) {
return
return
}
}
func
P2P
ConnectionManager
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
ConnectionManager
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
grace
:=
config
.
DefaultConnMgrGracePeriod
grace
:=
config
.
DefaultConnMgrGracePeriod
low
:=
config
.
DefaultConnMgrHighWater
low
:=
config
.
DefaultConnMgrHighWater
high
:=
config
.
DefaultConnMgrHighWater
high
:=
config
.
DefaultConnMgrHighWater
...
@@ -308,21 +308,21 @@ func makeSmuxTransportOption(mplexExp bool) libp2p.Option {
...
@@ -308,21 +308,21 @@ func makeSmuxTransportOption(mplexExp bool) libp2p.Option {
return
libp2p
.
ChainOptions
(
opts
...
)
return
libp2p
.
ChainOptions
(
opts
...
)
}
}
func
P2P
SmuxTransport
(
mplex
bool
)
func
()
(
opts
Libp2pOpts
,
err
error
)
{
func
SmuxTransport
(
mplex
bool
)
func
()
(
opts
Libp2pOpts
,
err
error
)
{
return
func
()
(
opts
Libp2pOpts
,
err
error
)
{
return
func
()
(
opts
Libp2pOpts
,
err
error
)
{
opts
.
Opts
=
append
(
opts
.
Opts
,
makeSmuxTransportOption
(
mplex
))
opts
.
Opts
=
append
(
opts
.
Opts
,
makeSmuxTransportOption
(
mplex
))
return
return
}
}
}
}
func
P2P
NatPortMap
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
NatPortMap
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
if
!
cfg
.
Swarm
.
DisableNatPortMap
{
if
!
cfg
.
Swarm
.
DisableNatPortMap
{
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
NATPortMap
())
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
NATPortMap
())
}
}
return
return
}
}
func
P2P
Relay
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
Relay
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
if
cfg
.
Swarm
.
DisableRelay
{
if
cfg
.
Swarm
.
DisableRelay
{
// Enabled by default.
// Enabled by default.
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
DisableRelay
())
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
DisableRelay
())
...
@@ -336,7 +336,7 @@ func P2PRelay(cfg *config.Config) (opts Libp2pOpts, err error) {
...
@@ -336,7 +336,7 @@ func P2PRelay(cfg *config.Config) (opts Libp2pOpts, err error) {
return
return
}
}
func
P2P
AutoRealy
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
AutoRealy
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
// enable autorelay
// enable autorelay
if
cfg
.
Swarm
.
EnableAutoRelay
{
if
cfg
.
Swarm
.
EnableAutoRelay
{
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
EnableAutoRelay
())
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
EnableAutoRelay
())
...
@@ -344,19 +344,19 @@ func P2PAutoRealy(cfg *config.Config) (opts Libp2pOpts, err error) {
...
@@ -344,19 +344,19 @@ func P2PAutoRealy(cfg *config.Config) (opts Libp2pOpts, err error) {
return
return
}
}
func
P2P
DefaultTransports
()
(
opts
Libp2pOpts
,
err
error
)
{
func
DefaultTransports
()
(
opts
Libp2pOpts
,
err
error
)
{
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
DefaultTransports
)
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
DefaultTransports
)
return
return
}
}
func
P2P
QUIC
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
func
QUIC
(
cfg
*
config
.
Config
)
(
opts
Libp2pOpts
,
err
error
)
{
if
cfg
.
Experimental
.
QUIC
{
if
cfg
.
Experimental
.
QUIC
{
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
Transport
(
libp2pquic
.
NewTransport
))
opts
.
Opts
=
append
(
opts
.
Opts
,
libp2p
.
Transport
(
libp2pquic
.
NewTransport
))
}
}
return
return
}
}
func
P2P
Security
(
enabled
bool
)
interface
{}
{
func
Security
(
enabled
bool
)
interface
{}
{
if
!
enabled
{
if
!
enabled
{
return
func
()
(
opts
Libp2pOpts
)
{
return
func
()
(
opts
Libp2pOpts
)
{
// TODO: shouldn't this be Errorf to guarantee visibility?
// TODO: shouldn't this be Errorf to guarantee visibility?
...
@@ -389,15 +389,15 @@ type P2PHostIn struct {
...
@@ -389,15 +389,15 @@ type P2PHostIn struct {
Opts
[][]
libp2p
.
Option
`group:"libp2p"`
Opts
[][]
libp2p
.
Option
`group:"libp2p"`
}
}
type
BaseRouting
routing
.
IpfsRouting
type
Base
Ipfs
Routing
routing
.
IpfsRouting
type
P2PHostOut
struct
{
type
P2PHostOut
struct
{
fx
.
Out
fx
.
Out
Host
host
.
Host
Host
host
.
Host
Routing
BaseRouting
Routing
Base
Ipfs
Routing
}
}
func
P2P
Host
(
mctx
helpers
.
MetricsCtx
,
lc
fx
.
Lifecycle
,
params
P2PHostIn
)
(
out
P2PHostOut
,
err
error
)
{
func
Host
(
mctx
helpers
.
MetricsCtx
,
lc
fx
.
Lifecycle
,
params
P2PHostIn
)
(
out
P2PHostOut
,
err
error
)
{
opts
:=
[]
libp2p
.
Option
{
libp2p
.
NoListenAddrs
}
opts
:=
[]
libp2p
.
Option
{
libp2p
.
NoListenAddrs
}
for
_
,
o
:=
range
params
.
Opts
{
for
_
,
o
:=
range
params
.
Opts
{
opts
=
append
(
opts
,
o
...
)
opts
=
append
(
opts
,
o
...
)
...
@@ -448,7 +448,7 @@ type p2pRouterOut struct {
...
@@ -448,7 +448,7 @@ type p2pRouterOut struct {
Router
Router
`group:"routers"`
Router
Router
`group:"routers"`
}
}
func
P2PBaseRouting
(
lc
fx
.
Lifecycle
,
in
Base
Routing
)
(
out
p2pRouterOut
,
dr
*
dht
.
IpfsDHT
)
{
func
BaseRouting
(
lc
fx
.
Lifecycle
,
in
BaseIpfs
Routing
)
(
out
p2pRouterOut
,
dr
*
dht
.
IpfsDHT
)
{
if
dht
,
ok
:=
in
.
(
*
dht
.
IpfsDHT
);
ok
{
if
dht
,
ok
:=
in
.
(
*
dht
.
IpfsDHT
);
ok
{
dr
=
dht
dr
=
dht
...
@@ -474,7 +474,7 @@ type p2pOnlineRoutingIn struct {
...
@@ -474,7 +474,7 @@ type p2pOnlineRoutingIn struct {
Validator
record
.
Validator
Validator
record
.
Validator
}
}
func
P2P
Routing
(
in
p2pOnlineRoutingIn
)
routing
.
IpfsRouting
{
func
Routing
(
in
p2pOnlineRoutingIn
)
routing
.
IpfsRouting
{
routers
:=
in
.
Routers
routers
:=
in
.
Routers
sort
.
SliceStable
(
routers
,
func
(
i
,
j
int
)
bool
{
sort
.
SliceStable
(
routers
,
func
(
i
,
j
int
)
bool
{
...
@@ -495,14 +495,14 @@ func P2PRouting(in p2pOnlineRoutingIn) routing.IpfsRouting {
...
@@ -495,14 +495,14 @@ func P2PRouting(in p2pOnlineRoutingIn) routing.IpfsRouting {
type
p2pPSRoutingIn
struct
{
type
p2pPSRoutingIn
struct
{
fx
.
In
fx
.
In
BaseRouting
BaseRouting
BaseRouting
Base
Ipfs
Routing
Repo
repo
.
Repo
Repo
repo
.
Repo
Validator
record
.
Validator
Validator
record
.
Validator
Host
host
.
Host
Host
host
.
Host
PubSub
*
pubsub
.
PubSub
`optional:"true"`
PubSub
*
pubsub
.
PubSub
`optional:"true"`
}
}
func
P
2PP
ubsubRouter
(
mctx
helpers
.
MetricsCtx
,
lc
fx
.
Lifecycle
,
in
p2pPSRoutingIn
)
(
p2pRouterOut
,
*
namesys
.
PubsubValueStore
)
{
func
PubsubRouter
(
mctx
helpers
.
MetricsCtx
,
lc
fx
.
Lifecycle
,
in
p2pPSRoutingIn
)
(
p2pRouterOut
,
*
namesys
.
PubsubValueStore
)
{
psRouter
:=
namesys
.
NewPubsubValueStore
(
psRouter
:=
namesys
.
NewPubsubValueStore
(
helpers
.
LifecycleCtx
(
mctx
,
lc
),
helpers
.
LifecycleCtx
(
mctx
,
lc
),
in
.
Host
,
in
.
Host
,
...
...
p2p/p2p.go
浏览文件 @
456084e6
...
@@ -20,8 +20,8 @@ type P2P struct {
...
@@ -20,8 +20,8 @@ type P2P struct {
peerstore
pstore
.
Peerstore
peerstore
pstore
.
Peerstore
}
}
// New
P2P
creates new P2P struct
// New creates new P2P struct
func
New
P2P
(
identity
peer
.
ID
,
peerHost
p2phost
.
Host
,
peerstore
pstore
.
Peerstore
)
*
P2P
{
func
New
(
identity
peer
.
ID
,
peerHost
p2phost
.
Host
,
peerstore
pstore
.
Peerstore
)
*
P2P
{
return
&
P2P
{
return
&
P2P
{
identity
:
identity
,
identity
:
identity
,
peerHost
:
peerHost
,
peerHost
:
peerHost
,
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论