sudo

package
v0.21.0-rc.9 Latest Latest
Warning

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

Go to latest
Published: Jun 21, 2023 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ModuleName = pb.ModuleName
	StoreKey   = pb.StoreKey
)

Ensure the interface is properly implemented at compile time

View Source
var ROOT_ACTION = pb.ROOT_ACTION
View Source
var ROOT_ACTIONS = pb.ROOT_ACTIONS

Functions

func DefaultGenesis

func DefaultGenesis() *pb.GenesisState

func ExportGenesis

func ExportGenesis(ctx sdk.Context, k Keeper) *pb.GenesisState

ExportGenesis returns the module's exported genesis state. This fn assumes InitGenesis has already been called.

func InitGenesis

func InitGenesis(ctx sdk.Context, k Keeper, genState pb.GenesisState)

InitGenesis initializes the module's state from a provided genesis state JSON.

func NewHandler

func NewHandler(k Keeper) sdk.Handler

func SudoersToPb

func SudoersToPb(sudo Sudoers) pb.Sudoers

Types

type AppModule

type AppModule struct {
	AppModuleBasic
	// contains filtered or unexported fields
}

AppModule implements the AppModule interface for the module.

func NewAppModule

func NewAppModule(
	cdc codec.Codec,
	keeper Keeper,
) AppModule

func (AppModule) BeginBlock

func (am AppModule) BeginBlock(_ sdk.Context, _ abci.RequestBeginBlock)

BeginBlock executes all ABCI BeginBlock logic respective to the capability module.

func (AppModule) ConsensusVersion

func (AppModule) ConsensusVersion() uint64

ConsensusVersion implements ConsensusVersion.

func (AppModule) EndBlock

EndBlock executes all ABCI EndBlock logic respective to the capability module. It returns no validator updates.

func (AppModule) ExportGenesis

func (am AppModule) ExportGenesis(ctx sdk.Context, cdc codec.JSONCodec) json.RawMessage

ExportGenesis returns the capability module's exported genesis state as raw JSON bytes.

func (AppModule) InitGenesis

func (am AppModule) InitGenesis(ctx sdk.Context, cdc codec.JSONCodec, gs json.RawMessage,
) []abci.ValidatorUpdate

InitGenesis performs the capability module's genesis initialization It returns no validator updates.

func (AppModule) Name

func (am AppModule) Name() string

Name returns the capability module's name.

func (AppModule) QuerierRoute

func (AppModule) QuerierRoute() string

QuerierRoute returns the capability module's query routing key.

func (AppModule) RegisterInvariants

func (am AppModule) RegisterInvariants(_ sdk.InvariantRegistry)

RegisterInvariants registers the capability module's invariants.

func (AppModule) RegisterServices

func (am AppModule) RegisterServices(cfg module.Configurator)

RegisterServices registers a GRPC query service to respond to the module-specific GRPC queries.

type AppModuleBasic

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

func NewAppModuleBasic

func NewAppModuleBasic(binaryCodec codec.BinaryCodec) AppModuleBasic

func (AppModuleBasic) DefaultGenesis

func (AppModuleBasic) DefaultGenesis(cdc codec.JSONCodec) json.RawMessage

DefaultGenesis returns default genesis state as raw bytes for the module.

func (AppModuleBasic) GetQueryCmd

func (AppModuleBasic) GetQueryCmd() *cobra.Command

GetQueryCmd returns the capability module's root query command.

func (AppModuleBasic) GetTxCmd

func (a AppModuleBasic) GetTxCmd() *cobra.Command

GetTxCmd returns the capability module's root tx command.

func (AppModuleBasic) Name

func (AppModuleBasic) Name() string

func (AppModuleBasic) RegisterCodec

func (AppModuleBasic) RegisterCodec(aminoCodec *codec.LegacyAmino)

func (AppModuleBasic) RegisterGRPCGatewayRoutes

func (AppModuleBasic) RegisterGRPCGatewayRoutes(
	clientCtx client.Context, mux *runtime.ServeMux,
)

RegisterGRPCGatewayRoutes registers the gRPC Gateway routes for the module.

func (AppModuleBasic) RegisterInterfaces

func (AppModuleBasic) RegisterInterfaces(interfaceRegistry codectypes.InterfaceRegistry)

RegisterInterfaces registers interfaces and implementations of the perp module.

func (AppModuleBasic) RegisterLegacyAminoCodec

func (AppModuleBasic) RegisterLegacyAminoCodec(aminoCodec *codec.LegacyAmino)

func (AppModuleBasic) RegisterRESTRoutes

func (AppModuleBasic) RegisterRESTRoutes(clientCtx client.Context, rtr *mux.Router)

RegisterRESTRoutes registers the capability module's REST service handlers.

func (AppModuleBasic) ValidateGenesis

func (AppModuleBasic) ValidateGenesis(
	cdc codec.JSONCodec, config client.TxEncodingConfig, bz json.RawMessage,
) error

ValidateGenesis performs genesis state validation for the capability module.

type Keeper

type Keeper struct {
	Sudoers collections.Item[PbSudoers]
}

func NewKeeper

func NewKeeper(
	cdc codec.BinaryCodec,
	storeKey types.StoreKey,
) Keeper

func (Keeper) AddContracts

func (k Keeper) AddContracts(
	goCtx context.Context, msg *pb.MsgEditSudoers,
) (msgResp *pb.MsgEditSudoersResponse, err error)

Keeper.AddContracts executes a MsgEditSudoers message with action type "add_contracts". This adds contract addresses to the sudoer set.

func (Keeper) CheckPermissions

func (k Keeper) CheckPermissions(
	contract sdk.AccAddress, ctx sdk.Context,
) error

CheckPermissions Checks if a contract is contained within the set of sudo contracts defined in the x/sudo module. These smart contracts are able to execute certain permissioned functions.

func (Keeper) EditSudoers

func (k Keeper) EditSudoers(
	goCtx context.Context, msg *pb.MsgEditSudoers,
) (*pb.MsgEditSudoersResponse, error)

EditSudoers adds or removes sudo contracts from state.

func (Keeper) GetSudoContracts

func (k Keeper) GetSudoContracts(ctx sdk.Context) (contracts []string, err error)

func (Keeper) QuerySudoers

func (k Keeper) QuerySudoers(
	goCtx context.Context,
	req *pb.QuerySudoersRequest,
) (resp *pb.QuerySudoersResponse, err error)

func (Keeper) RemoveContracts

func (k Keeper) RemoveContracts(
	goCtx context.Context, msg *pb.MsgEditSudoers,
) (msgResp *pb.MsgEditSudoersResponse, err error)

func (Keeper) SenderHasPermission

func (k Keeper) SenderHasPermission(sender string, root string) error

func (Keeper) SetSudoContracts

func (k Keeper) SetSudoContracts(contracts []string, ctx sdk.Context)

SetSudoContracts overwrites the state. This function is a convenience function for testing with permissioned contracts in other modules..

type PbSudoers

type PbSudoers = pb.Sudoers

type Sudoers

type Sudoers struct {
	Root      string          `json:"root"`
	Contracts set.Set[string] `json:"contracts"`
}

func (*Sudoers) AddContracts

func (sudo *Sudoers) AddContracts(
	contracts []string,
) (out set.Set[string], err error)

Sudoers.AddContracts adds contract addresses to the sudoer set.

func (Sudoers) FromPb

func (sudo Sudoers) FromPb(pbSudoers pb.Sudoers) Sudoers

func (*Sudoers) RemoveContracts

func (sudo *Sudoers) RemoveContracts(contracts []string)

func (Sudoers) String

func (sudo Sudoers) String() string

func (Sudoers) ToPb

func (sudo Sudoers) ToPb() pb.Sudoers

Directories

Path Synopsis
Package pb is a reverse proxy.
Package pb is a reverse proxy.

Jump to

Keyboard shortcuts

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