good morning!!!!

Skip to content
Snippets Groups Projects
Select Git revision
  • master
  • renovate/configure
  • dependabot/go_modules/golang.org/x/crypto-0.1.0
  • dependabot/go_modules/golang.org/x/sys-0.1.0
  • dependabot/go_modules/golang.org/x/text-0.3.8
  • test-pg-json-raw-message
  • v4
  • timeouts
  • pk-pgx-hacking
  • issue-616_add-limit-to-one
  • v3
  • v3-github-actions
  • issue-607_sqlite_paginator
  • mockdb-adapter
  • v1
  • issue_508-valuer_panic
  • feature/preload
  • issue-394
  • feature/test-reconnect-with-few-connections
  • v0
  • v0.0.2
  • v0.0.1
  • v4.6.0
  • v4.6.0-rc1
  • v4.5.4
  • v4.5.3
  • v4.5.2
  • v4.5.1
  • v4.5.0
  • v4.5.0-rc3
  • v4.5.0-rc2
  • v4.5.0-rc1
  • v4.5.0-alpha.2
  • v4.5.0-alpha.1
  • v4.2.1
  • v4.2.0
  • v4.1.0
  • v3.8.0
  • v4.0.2
  • v4.0.1
40 results

go.sum

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    This project manages its dependencies using Go Modules. Learn more
    web3_api.go 1.05 KiB
    package commands
    
    import (
    	"context"
    
    	"github.com/ledgerwatch/erigon/cmd/rpcdaemon/services"
    	"github.com/ledgerwatch/erigon/common/hexutil"
    	"github.com/ledgerwatch/erigon/crypto"
    )
    
    // Web3API provides interfaces for the web3_ RPC commands
    type Web3API interface {
    	ClientVersion(_ context.Context) (string, error)
    	Sha3(_ context.Context, input hexutil.Bytes) hexutil.Bytes
    }
    
    type Web3APIImpl struct {
    	*BaseAPI
    	ethBackend services.ApiBackend
    }
    
    // NewWeb3APIImpl returns Web3APIImpl instance
    func NewWeb3APIImpl(ethBackend services.ApiBackend) *Web3APIImpl {
    	return &Web3APIImpl{
    		BaseAPI:    &BaseAPI{},
    		ethBackend: ethBackend,
    	}
    }
    
    // ClientVersion implements web3_clientVersion. Returns the current client version.
    func (api *Web3APIImpl) ClientVersion(ctx context.Context) (string, error) {
    	return api.ethBackend.ClientVersion(ctx)
    }
    
    // Sha3 implements web3_sha3. Returns Keccak-256 (not the standardized SHA3-256) of the given data.
    func (api *Web3APIImpl) Sha3(_ context.Context, input hexutil.Bytes) hexutil.Bytes {
    	return crypto.Keccak256(input)
    }