address comments from PR
Jeromy committed
Nov 14, 2014 at 11:00 UTC
f45d575a96ed9fd38f6719452f5a97abd70053bf
3 files changed
+6
-4
core/core.go
+3
-1
@@ -31,6 +31,8 @@ import (
31
ctxc "github.com/jbenet/go-ipfs/util/ctxcloser"
32
)
33
34
+const IpnsValidatorTag = "ipns"
35
+
36
var log = u.Logger("core")
37
38
// IpfsNode is IPFS Core module. It represents an IPFS instance.
@@ -156,7 +158,7 @@ func NewIpfsNode(cfg *config.Config, online bool) (n *IpfsNode, err error) {
158
159
// setup routing service
160
dhtRouting := dht.NewDHT(ctx, n.Identity, n.Peerstore, n.Network, dhtService, n.Datastore)
159
- dhtRouting.Validators["ipns"] = namesys.ValidateIpnsRecord
161
+ dhtRouting.Validators[IpnsValidatorTag] = namesys.ValidateIpnsRecord
162
163
// TODO(brian): perform this inside NewDHT factory method
164
dhtService.SetHandler(dhtRouting) // wire the handler to the service.
namesys/publisher.go
+2
-3
@@ -90,7 +90,7 @@ func createRoutingEntryData(pk ci.PrivKey, val string) ([]byte, error) {
90
entry.Value = []byte(val)
91
typ := pb.IpnsEntry_EOL
92
entry.ValidityType = &typ
93
- entry.Validity = []byte(time.Now().Add(time.Hour * 24).String())
93
+ entry.Validity = []byte(u.FormatRFC3339(time.Now().Add(time.Hour * 24)))
94
95
sig, err := pk.Sign(ipnsEntryDataForSig(entry))
96
if err != nil {
@@ -119,8 +119,7 @@ func ValidateIpnsRecord(k u.Key, val []byte) error {
119
}
120
switch entry.GetValidityType() {
121
case pb.IpnsEntry_EOL:
122
- defaultTimeFormat := "2006-01-02 15:04:05.999999999 -0700 MST"
123
- t, err := time.Parse(defaultTimeFormat, string(entry.GetValue()))
122
+ t, err := u.ParseRFC3339(string(entry.GetValue()))
123
if err != nil {
124
log.Error("Failed parsing time for ipns record EOL")
125
return err
routing/dht/dht.go
+1
@@ -273,6 +273,7 @@ func (dht *IpfsDHT) getValueOrPeers(ctx context.Context, p peer.Peer,
273
// make sure record is still valid
274
err = dht.verifyRecord(record)
275
if err != nil {
276
+ log.Error("Received invalid record!")
277
return nil, nil, err
278
}
279
return record.GetValue(), nil, nil