ante

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 5, 2023 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewAnteHandler

func NewAnteHandler(options HandlerOptions) (sdk.AnteHandler, error)

NewAnteHandler returns an 'AnteHandler' that will run actions before a tx is sent to a module's handler.

func Recover

func Recover(logger tmlog.Logger, err *error)

Types

type AddressFetcher

type AddressFetcher func(sdk.Context) []sdk.AccAddress

AddressFetcher is a type signature for functions used by the AuthenticatedMempoolDecorator to get authorized addresses.

type AuthenticatedMempoolDecorator

type AuthenticatedMempoolDecorator struct {
	// contains filtered or unexported fields
}

AuthenticatedMempoolDecorator blocks all txs from reaching the mempool unless they're signed by one of the authorzed addresses. It only runs before entry to mempool (CheckTx), and not in consensus (DeliverTx)

func NewAuthenticatedMempoolDecorator

func NewAuthenticatedMempoolDecorator(fetchers ...AddressFetcher) AuthenticatedMempoolDecorator

func (AuthenticatedMempoolDecorator) AnteHandle

func (amd AuthenticatedMempoolDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (newCtx sdk.Context, err error)

type AuthzLimiterDecorator

type AuthzLimiterDecorator struct {
	// contains filtered or unexported fields
}

AuthzLimiterDecorator blocks certain msg types from being granted or executed within authz.

func NewAuthzLimiterDecorator

func NewAuthzLimiterDecorator(disabledMsgTypes ...string) AuthzLimiterDecorator

NewAuthzLimiterDecorator creates a decorator to block certain msg types from being granted or executed within authz.

func (AuthzLimiterDecorator) AnteHandle

func (ald AuthzLimiterDecorator) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (newCtx sdk.Context, err error)

type EVMKeeper

type EVMKeeper interface {
	GetParams(ctx sdk.Context) evmtypes.Params
}

EVMKeeper specifies the interface that EvmMinGasFilter requires

type EvmMinGasFilter

type EvmMinGasFilter struct {
	// contains filtered or unexported fields
}

EvmMinGasFilter filters out the EvmDenom min gas price and calls the next ante handle with an updated context

func NewEvmMinGasFilter

func NewEvmMinGasFilter(evmKeeper EVMKeeper) EvmMinGasFilter

NewEvmMinGasFilter takes an EVMKeeper and returns a new min gas filter for it's EvmDenom

func (EvmMinGasFilter) AnteHandle

func (emgf EvmMinGasFilter) AnteHandle(ctx sdk.Context, tx sdk.Tx, simulate bool, next sdk.AnteHandler) (sdk.Context, error)

AnteHandle checks the EvmDenom from the evmKeeper and filters out the EvmDenom from the ctx

type HandlerOptions

type HandlerOptions struct {
	AccountKeeper          evmtypes.AccountKeeper
	BankKeeper             evmtypes.BankKeeper
	IBCKeeper              *ibckeeper.Keeper
	EvmKeeper              evmante.EVMKeeper
	FeegrantKeeper         authante.FeegrantKeeper
	SignModeHandler        authsigning.SignModeHandler
	SigGasConsumer         authante.SignatureVerificationGasConsumer
	FeeMarketKeeper        evmtypes.FeeMarketKeeper
	MaxTxGasWanted         uint64
	AddressFetchers        []AddressFetcher
	ExtensionOptionChecker authante.ExtensionOptionChecker
	TxFeeChecker           authante.TxFeeChecker
}

HandlerOptions extend the SDK's AnteHandler options by requiring the IBC channel keeper, EVM Keeper and Fee Market Keeper.

func (HandlerOptions) Validate

func (options HandlerOptions) Validate() error

type VestingAccountDecorator

type VestingAccountDecorator struct {
	// contains filtered or unexported fields
}

VestingAccountDecorator blocks vesting messages from reaching the mempool

func NewVestingAccountDecorator

func NewVestingAccountDecorator() VestingAccountDecorator

func (VestingAccountDecorator) AnteHandle

func (vad VestingAccountDecorator) AnteHandle(
	ctx sdk.Context,
	tx sdk.Tx,
	simulate bool,
	next sdk.AnteHandler,
) (newCtx sdk.Context, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL