feat: Waku v2 bridge

Issue #12610
This commit is contained in:
Michal Iskierko
2023-11-12 13:29:38 +01:00
parent 56e7bd01ca
commit 6d31343205
6716 changed files with 1982502 additions and 5891 deletions

View File

@@ -0,0 +1,30 @@
package verifier
import (
"context"
"github.com/ethereum/go-ethereum/p2p/enode"
)
// LocalVerifier verifies nodes based on a provided local list.
type LocalVerifier struct {
KnownPeers map[enode.ID]struct{}
}
// NewLocalVerifier returns a new LocalVerifier instance.
func NewLocalVerifier(peers []enode.ID) *LocalVerifier {
knownPeers := make(map[enode.ID]struct{})
for _, peer := range peers {
knownPeers[peer] = struct{}{}
}
return &LocalVerifier{KnownPeers: knownPeers}
}
// VerifyNode checks if a given node is trusted using a local list.
func (v *LocalVerifier) VerifyNode(_ context.Context, nodeID enode.ID) bool {
if _, ok := v.KnownPeers[nodeID]; ok {
return true
}
return false
}