Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
G
go-ipfs
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
jihao
go-ipfs
Commits
0e680716
提交
0e680716
authored
1月 11, 2018
作者:
Steven Allen
提交者:
Jeromy
1月 21, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
put immediate error second
License: MIT Signed-off-by:
Steven Allen
<
steven@stebalien.com
>
上级
652ac620
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
18 行增加
和
18 行删除
+18
-18
daemon.go
cmd/ipfs/daemon.go
+18
-18
没有找到文件。
cmd/ipfs/daemon.go
浏览文件 @
0e680716
...
...
@@ -343,7 +343,7 @@ func daemonFunc(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment
}
// construct api endpoint - every time
err
,
apiErrc
:=
serveHTTPApi
(
req
,
cctx
)
apiErrc
,
err
:=
serveHTTPApi
(
req
,
cctx
)
if
err
!=
nil
{
re
.
SetError
(
err
,
cmdkit
.
ErrNormal
)
return
...
...
@@ -364,7 +364,7 @@ func daemonFunc(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment
}
// repo blockstore GC - if --enable-gc flag is present
err
,
gcErrc
:=
maybeRunGC
(
req
,
node
)
gcErrc
,
err
:=
maybeRunGC
(
req
,
node
)
if
err
!=
nil
{
re
.
SetError
(
err
,
cmdkit
.
ErrNormal
)
return
...
...
@@ -374,7 +374,7 @@ func daemonFunc(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment
var
gwErrc
<-
chan
error
if
len
(
cfg
.
Addresses
.
Gateway
)
>
0
{
var
err
error
err
,
gwErrc
=
serveHTTPGateway
(
req
,
cctx
)
gwErrc
,
err
=
serveHTTPGateway
(
req
,
cctx
)
if
err
!=
nil
{
re
.
SetError
(
err
,
cmdkit
.
ErrNormal
)
return
...
...
@@ -396,10 +396,10 @@ func daemonFunc(req *cmds.Request, re cmds.ResponseEmitter, env cmds.Environment
}
// serveHTTPApi collects options, creates listener, prints status message and starts serving requests
func
serveHTTPApi
(
req
*
cmds
.
Request
,
cctx
*
oldcmds
.
Context
)
(
error
,
<-
chan
error
)
{
func
serveHTTPApi
(
req
*
cmds
.
Request
,
cctx
*
oldcmds
.
Context
)
(
<-
chan
error
,
error
)
{
cfg
,
err
:=
cctx
.
GetConfig
()
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPApi: GetConfig() failed: %s"
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPApi: GetConfig() failed: %s"
,
err
)
}
apiAddr
,
_
:=
req
.
Options
[
commands
.
ApiOption
]
.
(
string
)
...
...
@@ -408,12 +408,12 @@ func serveHTTPApi(req *cmds.Request, cctx *oldcmds.Context) (error, <-chan error
}
apiMaddr
,
err
:=
ma
.
NewMultiaddr
(
apiAddr
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPApi: invalid API address: %q (err: %s)"
,
apiAddr
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPApi: invalid API address: %q (err: %s)"
,
apiAddr
,
err
)
}
apiLis
,
err
:=
manet
.
Listen
(
apiMaddr
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPApi: manet.Listen(%s) failed: %s"
,
apiMaddr
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPApi: manet.Listen(%s) failed: %s"
,
apiMaddr
,
err
)
}
// we might have listened to /tcp/0 - lets see what we are listing on
apiMaddr
=
apiLis
.
Multiaddr
()
...
...
@@ -448,11 +448,11 @@ func serveHTTPApi(req *cmds.Request, cctx *oldcmds.Context) (error, <-chan error
node
,
err
:=
cctx
.
ConstructNode
()
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPApi: ConstructNode() failed: %s"
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPApi: ConstructNode() failed: %s"
,
err
)
}
if
err
:=
node
.
Repo
.
SetAPIAddr
(
apiMaddr
);
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPApi: SetAPIAddr() failed: %s"
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPApi: SetAPIAddr() failed: %s"
,
err
)
}
errc
:=
make
(
chan
error
)
...
...
@@ -460,7 +460,7 @@ func serveHTTPApi(req *cmds.Request, cctx *oldcmds.Context) (error, <-chan error
errc
<-
corehttp
.
Serve
(
node
,
apiLis
.
NetListener
(),
opts
...
)
close
(
errc
)
}()
return
nil
,
errc
return
errc
,
nil
}
// printSwarmAddrs prints the addresses of the host
...
...
@@ -495,15 +495,15 @@ func printSwarmAddrs(node *core.IpfsNode) {
}
// serveHTTPGateway collects options, creates listener, prints status message and starts serving requests
func
serveHTTPGateway
(
req
*
cmds
.
Request
,
cctx
*
oldcmds
.
Context
)
(
error
,
<-
chan
error
)
{
func
serveHTTPGateway
(
req
*
cmds
.
Request
,
cctx
*
oldcmds
.
Context
)
(
<-
chan
error
,
error
)
{
cfg
,
err
:=
cctx
.
GetConfig
()
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPGateway: GetConfig() failed: %s"
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPGateway: GetConfig() failed: %s"
,
err
)
}
gatewayMaddr
,
err
:=
ma
.
NewMultiaddr
(
cfg
.
Addresses
.
Gateway
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPGateway: invalid gateway address: %q (err: %s)"
,
cfg
.
Addresses
.
Gateway
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPGateway: invalid gateway address: %q (err: %s)"
,
cfg
.
Addresses
.
Gateway
,
err
)
}
writable
,
writableOptionFound
:=
req
.
Options
[
writableKwd
]
.
(
bool
)
...
...
@@ -513,7 +513,7 @@ func serveHTTPGateway(req *cmds.Request, cctx *oldcmds.Context) (error, <-chan e
gwLis
,
err
:=
manet
.
Listen
(
gatewayMaddr
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPGateway: manet.Listen(%s) failed: %s"
,
gatewayMaddr
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPGateway: manet.Listen(%s) failed: %s"
,
gatewayMaddr
,
err
)
}
// we might have listened to /tcp/0 - lets see what we are listing on
gatewayMaddr
=
gwLis
.
Multiaddr
()
...
...
@@ -539,7 +539,7 @@ func serveHTTPGateway(req *cmds.Request, cctx *oldcmds.Context) (error, <-chan e
node
,
err
:=
cctx
.
ConstructNode
()
if
err
!=
nil
{
return
fmt
.
Errorf
(
"serveHTTPGateway: ConstructNode() failed: %s"
,
err
),
nil
return
nil
,
fmt
.
Errorf
(
"serveHTTPGateway: ConstructNode() failed: %s"
,
err
)
}
errc
:=
make
(
chan
error
)
...
...
@@ -547,7 +547,7 @@ func serveHTTPGateway(req *cmds.Request, cctx *oldcmds.Context) (error, <-chan e
errc
<-
corehttp
.
Serve
(
node
,
gwLis
.
NetListener
(),
opts
...
)
close
(
errc
)
}()
return
nil
,
errc
return
errc
,
nil
}
//collects options and opens the fuse mountpoint
...
...
@@ -581,7 +581,7 @@ func mountFuse(req *cmds.Request, cctx *oldcmds.Context) error {
return
nil
}
func
maybeRunGC
(
req
*
cmds
.
Request
,
node
*
core
.
IpfsNode
)
(
error
,
<-
chan
error
)
{
func
maybeRunGC
(
req
*
cmds
.
Request
,
node
*
core
.
IpfsNode
)
(
<-
chan
error
,
error
)
{
enableGC
,
_
:=
req
.
Options
[
enableGCKwd
]
.
(
bool
)
if
!
enableGC
{
return
nil
,
nil
...
...
@@ -592,7 +592,7 @@ func maybeRunGC(req *cmds.Request, node *core.IpfsNode) (error, <-chan error) {
errc
<-
corerepo
.
PeriodicGC
(
req
.
Context
,
node
)
close
(
errc
)
}()
return
nil
,
errc
return
errc
,
nil
}
// merge does fan-in of multiple read-only error channels
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论