MCPcopy Index your code
hub / github.com/CovenantSQL/CovenantSQL / SetNode

Function SetNode

crypto/kms/pubkeystore.go:258–269  ·  view source on GitHub ↗

SetNode verifies nonce and sets {proto.Node.ID: proto.Node}.

(nodeInfo *proto.Node)

Source from the content-addressed store, hash-verified

256
257// SetNode verifies nonce and sets {proto.Node.ID: proto.Node}.
258func SetNode(nodeInfo *proto.Node) (err error) {
259 if nodeInfo == nil {
260 return ErrNilNode
261 }
262 if !Unittest {
263 if !IsIDPubNonceValid(nodeInfo.ID.ToRawNodeID(), &nodeInfo.Nonce, nodeInfo.PublicKey) {
264 return ErrNodeIDKeyNonceNotMatch
265 }
266 }
267
268 return setNode(nodeInfo)
269}
270
271// IsIDPubNonceValid returns if `id == HashBlock(key, nonce)`.
272func IsIDPubNonceValid(id *proto.RawNodeID, nonce *mine.Uint256, key *asymmetric.PublicKey) bool {

Callers 9

TestMultiChainFunction · 0.92
SetNodeMethod · 0.92
setupMuxParallelFunction · 0.92
initNodePeersFunction · 0.92
SetNodeMethod · 0.92
InitKMSFunction · 0.92
GetNodeInfoFunction · 0.92
SetPublicKeyFunction · 0.85
TestDBFunction · 0.85

Calls 3

IsIDPubNonceValidFunction · 0.85
setNodeFunction · 0.85
ToRawNodeIDMethod · 0.80

Tested by 3

TestMultiChainFunction · 0.74
setupMuxParallelFunction · 0.74
TestDBFunction · 0.68