mirror of
https://github.com/ipfs/kubo.git
synced 2025-06-26 23:53:19 +08:00
some comments
This commit is contained in:
@ -20,6 +20,8 @@ import (
|
||||
// invalid due to being too old
|
||||
var ErrExpiredRecord = errors.New("expired record")
|
||||
|
||||
// ErrUnrecognizedValidity is returned when an IpnsRecord has an
|
||||
// unknown validity type.
|
||||
var ErrUnrecognizedValidity = errors.New("unrecognized validity type")
|
||||
|
||||
// ipnsPublisher is capable of publishing and resolving names to the IPFS
|
||||
@ -107,6 +109,8 @@ func ipnsEntryDataForSig(e *pb.IpnsEntry) []byte {
|
||||
[]byte{})
|
||||
}
|
||||
|
||||
// ValidateIpnsRecord implements ValidatorFunc and verifies that the
|
||||
// given 'val' is an IpnsEntry and that that entry is valid.
|
||||
func ValidateIpnsRecord(k u.Key, val []byte) error {
|
||||
entry := new(pb.IpnsEntry)
|
||||
err := proto.Unmarshal(val, entry)
|
||||
|
@ -14,9 +14,16 @@ import (
|
||||
u "github.com/jbenet/go-ipfs/util"
|
||||
)
|
||||
|
||||
// ValidatorFunc is a function that is called to validate a given
|
||||
// type of DHTRecord.
|
||||
type ValidatorFunc func(u.Key, []byte) error
|
||||
|
||||
// ErrBadRecord is returned any time a dht record is found to be
|
||||
// incorrectly formatted or signed.
|
||||
var ErrBadRecord = errors.New("bad dht record")
|
||||
|
||||
// ErrInvalidRecordType is returned if a DHTRecord keys prefix
|
||||
// is not found in the Validator map of the DHT.
|
||||
var ErrInvalidRecordType = errors.New("invalid record keytype")
|
||||
|
||||
// creates and signs a dht record for the given key/value pair
|
||||
@ -96,6 +103,9 @@ func (dht *IpfsDHT) verifyRecord(r *pb.Record) error {
|
||||
return fnc(u.Key(r.GetKey()), r.GetValue())
|
||||
}
|
||||
|
||||
// ValidatePublicKeyRecord implements ValidatorFunc and
|
||||
// verifies that the passed in record value is the PublicKey
|
||||
// that matches the passed in key.
|
||||
func ValidatePublicKeyRecord(k u.Key, val []byte) error {
|
||||
keyparts := bytes.Split([]byte(k), []byte("/"))
|
||||
if len(keyparts) < 3 {
|
||||
|
Reference in New Issue
Block a user