Documentation ¶
Index ¶
- func ExportSlashingProtectionJSONCli(cliCtx *cli.Context) error
- func ImportSlashingProtectionCLI(cliCtx *cli.Context) error
- type Config
- type Service
- func (s *Service) CheckAttestationSafety(ctx context.Context, attestation *ethpb.IndexedAttestation) bool
- func (s *Service) CheckBlockSafety(ctx context.Context, blockHeader *ethpb.SignedBeaconBlockHeader) bool
- func (s *Service) Start()
- func (s *Service) Status() error
- func (s *Service) Stop() error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExportSlashingProtectionJSONCli ¶
func ExportSlashingProtectionJSONCli(cliCtx *cli.Context) error
ExportSlashingProtectionJSONCli extracts a validator's slashing protection history from their database and formats it into an EIP-3076 standard JSON file via a CLI entrypoint to make it easy to migrate machines or Ethereum consensus clients.
Steps: 1. Parse a path to the validator's datadir from the CLI context. 2. Open the validator database. 3. Call the function which actually exports the data from from the validator's db into an EIP standard slashing protection format 4. Format and save the JSON file to a user's specified output directory.
func ImportSlashingProtectionCLI ¶
func ImportSlashingProtectionCLI(cliCtx *cli.Context) error
ImportSlashingProtectionCLI reads an input slashing protection EIP-3076 standard JSON file and attempts to insert its data into our validator DB.
Steps: 1. Parse a path to the validator's datadir from the CLI context. 2. Open the validator database. 3. Read the JSON file from user input. 4. Call the function which actually imports the data from from the standard slashing protection JSON file into our database.
Types ¶
type Config ¶
type Config struct { Endpoint string CertFlag string GrpcMaxCallRecvMsgSizeFlag int GrpcRetriesFlag uint GrpcRetryDelay time.Duration GrpcHeadersFlag string }
Config for the validator service.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service represents a service to manage the validator �slashing protection.
func NewService ¶
NewService creates a new validator service for the service registry.
func (*Service) CheckAttestationSafety ¶
func (s *Service) CheckAttestationSafety(ctx context.Context, attestation *ethpb.IndexedAttestation) bool
CheckAttestationSafety for attestations before submitting them to the node.
func (*Service) CheckBlockSafety ¶
func (s *Service) CheckBlockSafety(ctx context.Context, blockHeader *ethpb.SignedBeaconBlockHeader) bool
CheckBlockSafety for blocks before submitting them to the node.
func (*Service) Start ¶
func (s *Service) Start()
Start the slasher protection service and grpc client.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
local
|
|
standard-protection-format/format
Package format defines methods to parse, import, and export slashing protection data from a standard JSON file according to EIP-3076 https://eips.ethereum.org/EIPS/eip-3076.
|
Package format defines methods to parse, import, and export slashing protection data from a standard JSON file according to EIP-3076 https://eips.ethereum.org/EIPS/eip-3076. |