@cryptotaxi247 / kubo / commits / 76e227d49

code review improvements

change core.IpfsNode as first arg check keylookup err to propagate validation errors from lower levels License: MIT Signed-off-by: Kerem Gocen <keremgocen@gmail.com>

Kerem committed Apr 27, 2017 at 21:00 UTC 76e227d499d75180db491d276db86b54e8aac6d8
1 file changed +7 -2
core/commands/publish.go
+7 -2
@@ -10,6 +10,7 @@ import (
10
11 cmds "github.com/ipfs/go-ipfs/commands"
12 core "github.com/ipfs/go-ipfs/core"
13 + keystore "github.com/ipfs/go-ipfs/keystore"
14 path "github.com/ipfs/go-ipfs/path"
15
16 crypto "gx/ipfs/QmP1DfoUjiWH2ZBo1PBH6FupdBucbDepx3HpWmEY6JMUpY/go-libp2p-crypto"
@@ -121,7 +122,7 @@ Alternatively, publish an <ipfs-path> using a valid PeerID(as listed by 'ipfs ke
122 }
123
124 kname, _, _ := req.Option("key").String()
124 - k, err := keylookup(kname, n)
125 + k, err := keylookup(n, kname)
126 if err != nil {
127 res.SetError(err, cmds.ErrNormal)
128 return
@@ -182,13 +183,17 @@ func publish(ctx context.Context, n *core.IpfsNode, k crypto.PrivKey, ref path.P
183 }, nil
184 }
185
185 -func keylookup(k string, n *core.IpfsNode) (crypto.PrivKey, error) {
186 +func keylookup(n *core.IpfsNode, k string) (crypto.PrivKey, error) {
187
188 res, err := n.GetKey(k)
189 if res != nil {
190 return res, nil
191 }
192
193 + if err != nil && err != keystore.ErrNoSuchKey {
194 + return nil, err
195 + }
196 +
197 keys, err := n.Repo.Keystore().List()
198 if err != nil {
199 return nil, err