From bdbceba6eb3c1065c1aca235b13791f1e95fe739 Mon Sep 17 00:00:00 2001 From: b00ris Date: Wed, 24 Oct 2018 19:31:41 +0300 Subject: [PATCH] added ulc config params (#1255) * added ulc config params * fmt * fix lint --- node/node.go | 4 ++++ params/config.go | 6 ++++++ services/rpcfilters/api.go | 6 +++--- services/rpcfilters/service.go | 2 +- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/node/node.go b/node/node.go index 4b4fdce6d..b76262a42 100644 --- a/node/node.go +++ b/node/node.go @@ -218,6 +218,10 @@ func activateLightEthService(stack *node.Node, config *params.NodeConfig) error ethConf.SyncMode = downloader.LightSync ethConf.NetworkId = config.NetworkID ethConf.DatabaseCache = config.LightEthConfig.DatabaseCache + ethConf.ULC = ð.ULCConfig{ + TrustedServers: config.LightEthConfig.TrustedNodes, + MinTrustedFraction: config.LightEthConfig.MinTrustedFraction, + } return stack.Register(func(ctx *node.ServiceContext) (node.Service, error) { return les.New(ctx, ðConf) }) diff --git a/params/config.go b/params/config.go index c0857de02..858da7d03 100644 --- a/params/config.go +++ b/params/config.go @@ -31,6 +31,12 @@ type LightEthConfig struct { // DatabaseCache is memory (in MBs) allocated to internal caching (min 16MB / database forced) DatabaseCache int + + // TrustedNodes is a list of trusted servers + TrustedNodes []string + + //MinTrustedFraction is minimum percentage of connected trusted servers to validate header(1-100) + MinTrustedFraction int } // ---------- diff --git a/services/rpcfilters/api.go b/services/rpcfilters/api.go index aa7ff591d..2cd155ba1 100644 --- a/services/rpcfilters/api.go +++ b/services/rpcfilters/api.go @@ -48,9 +48,9 @@ func NewPublicAPI(s *Service) *PublicAPI { filters: make(map[rpc.ID]filter), latestBlockChangedEvent: s.latestBlockChangedEvent, transactionSentToUpstreamEvent: s.transactionSentToUpstreamEvent, - client: func() ContextCaller { return s.rpc.RPCClient() }, - filterLivenessLoop: defaultFilterLivenessPeriod, - filterLivenessPeriod: defaultFilterLivenessPeriod + 10*time.Second, + client: func() ContextCaller { return s.rpc.RPCClient() }, + filterLivenessLoop: defaultFilterLivenessPeriod, + filterLivenessPeriod: defaultFilterLivenessPeriod + 10*time.Second, } go api.timeoutLoop(s.quit) return api diff --git a/services/rpcfilters/service.go b/services/rpcfilters/service.go index 1318111ed..50dcd1aaf 100644 --- a/services/rpcfilters/service.go +++ b/services/rpcfilters/service.go @@ -27,7 +27,7 @@ func New(rpc rpcProvider) *Service { return &Service{ latestBlockChangedEvent: latestBlockChangedEvent, transactionSentToUpstreamEvent: transactionSentToUpstreamEvent, - rpc: rpc, + rpc: rpc, } }