-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
b6fca64
commit bc85eca
Showing
98 changed files
with
6,885 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
*.pyc | ||
*.pyi | ||
*.py |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
syntax = "proto3"; | ||
package cosmos.auth.v1beta1; | ||
|
||
import "cosmos_proto/cosmos.proto"; | ||
import "gogoproto/gogo.proto"; | ||
import "google/protobuf/any.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/auth/types"; | ||
|
||
// BaseAccount defines a base account type. It contains all the necessary fields | ||
// for basic account functionality. Any custom account type should extend this | ||
// type for additional functionality (e.g. vesting). | ||
message BaseAccount { | ||
option (gogoproto.goproto_getters) = false; | ||
option (gogoproto.goproto_stringer) = false; | ||
option (gogoproto.equal) = false; | ||
|
||
option (cosmos_proto.implements_interface) = "AccountI"; | ||
|
||
string address = 1; | ||
google.protobuf.Any pub_key = 2 | ||
[(gogoproto.jsontag) = "public_key,omitempty", (gogoproto.moretags) = "yaml:\"public_key\""]; | ||
uint64 account_number = 3 [(gogoproto.moretags) = "yaml:\"account_number\""]; | ||
uint64 sequence = 4; | ||
} | ||
|
||
// ModuleAccount defines an account for modules that holds coins on a pool. | ||
message ModuleAccount { | ||
option (gogoproto.goproto_getters) = false; | ||
option (gogoproto.goproto_stringer) = false; | ||
option (cosmos_proto.implements_interface) = "ModuleAccountI"; | ||
|
||
BaseAccount base_account = 1 [(gogoproto.embed) = true, (gogoproto.moretags) = "yaml:\"base_account\""]; | ||
string name = 2; | ||
repeated string permissions = 3; | ||
} | ||
|
||
// Params defines the parameters for the auth module. | ||
message Params { | ||
option (gogoproto.equal) = true; | ||
option (gogoproto.goproto_stringer) = false; | ||
|
||
uint64 max_memo_characters = 1 [(gogoproto.moretags) = "yaml:\"max_memo_characters\""]; | ||
uint64 tx_sig_limit = 2 [(gogoproto.moretags) = "yaml:\"tx_sig_limit\""]; | ||
uint64 tx_size_cost_per_byte = 3 [(gogoproto.moretags) = "yaml:\"tx_size_cost_per_byte\""]; | ||
uint64 sig_verify_cost_ed25519 = 4 | ||
[(gogoproto.customname) = "SigVerifyCostED25519", (gogoproto.moretags) = "yaml:\"sig_verify_cost_ed25519\""]; | ||
uint64 sig_verify_cost_secp256k1 = 5 | ||
[(gogoproto.customname) = "SigVerifyCostSecp256k1", (gogoproto.moretags) = "yaml:\"sig_verify_cost_secp256k1\""]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
syntax = "proto3"; | ||
package cosmos.auth.v1beta1; | ||
|
||
import "google/protobuf/any.proto"; | ||
import "gogoproto/gogo.proto"; | ||
import "cosmos/auth/v1beta1/auth.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/auth/types"; | ||
|
||
// GenesisState defines the auth module's genesis state. | ||
message GenesisState { | ||
// params defines all the paramaters of the module. | ||
Params params = 1 [(gogoproto.nullable) = false]; | ||
|
||
// accounts are the accounts present at genesis. | ||
repeated google.protobuf.Any accounts = 2; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
syntax = "proto3"; | ||
package cosmos.auth.v1beta1; | ||
|
||
import "cosmos/base/query/v1beta1/pagination.proto"; | ||
import "gogoproto/gogo.proto"; | ||
import "google/protobuf/any.proto"; | ||
import "google/api/annotations.proto"; | ||
import "cosmos/auth/v1beta1/auth.proto"; | ||
import "cosmos_proto/cosmos.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/auth/types"; | ||
|
||
// Query defines the gRPC querier service. | ||
service Query { | ||
// Accounts returns all the existing accounts | ||
// | ||
// Since: cosmos-sdk 0.43 | ||
rpc Accounts(QueryAccountsRequest) returns (QueryAccountsResponse) { | ||
option (google.api.http).get = "/cosmos/auth/v1beta1/accounts"; | ||
} | ||
|
||
// Account returns account details based on address. | ||
rpc Account(QueryAccountRequest) returns (QueryAccountResponse) { | ||
option (google.api.http).get = "/cosmos/auth/v1beta1/accounts/{address}"; | ||
} | ||
|
||
// Params queries all parameters. | ||
rpc Params(QueryParamsRequest) returns (QueryParamsResponse) { | ||
option (google.api.http).get = "/cosmos/auth/v1beta1/params"; | ||
} | ||
} | ||
|
||
// QueryAccountsRequest is the request type for the Query/Accounts RPC method. | ||
// | ||
// Since: cosmos-sdk 0.43 | ||
message QueryAccountsRequest { | ||
// pagination defines an optional pagination for the request. | ||
cosmos.base.query.v1beta1.PageRequest pagination = 1; | ||
} | ||
|
||
// QueryAccountsResponse is the response type for the Query/Accounts RPC method. | ||
// | ||
// Since: cosmos-sdk 0.43 | ||
message QueryAccountsResponse { | ||
// accounts are the existing accounts | ||
repeated google.protobuf.Any accounts = 1 [(cosmos_proto.accepts_interface) = "AccountI"]; | ||
|
||
// pagination defines the pagination in the response. | ||
cosmos.base.query.v1beta1.PageResponse pagination = 2; | ||
} | ||
|
||
// QueryAccountRequest is the request type for the Query/Account RPC method. | ||
message QueryAccountRequest { | ||
option (gogoproto.equal) = false; | ||
option (gogoproto.goproto_getters) = false; | ||
|
||
// address defines the address to query for. | ||
string address = 1; | ||
} | ||
|
||
// QueryAccountResponse is the response type for the Query/Account RPC method. | ||
message QueryAccountResponse { | ||
// account defines the account of the corresponding address. | ||
google.protobuf.Any account = 1 [(cosmos_proto.accepts_interface) = "AccountI"]; | ||
} | ||
|
||
// QueryParamsRequest is the request type for the Query/Params RPC method. | ||
message QueryParamsRequest {} | ||
|
||
// QueryParamsResponse is the response type for the Query/Params RPC method. | ||
message QueryParamsResponse { | ||
// params defines the parameters of the module. | ||
Params params = 1 [(gogoproto.nullable) = false]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
// Since: cosmos-sdk 0.43 | ||
syntax = "proto3"; | ||
package cosmos.authz.v1beta1; | ||
|
||
import "cosmos_proto/cosmos.proto"; | ||
import "google/protobuf/timestamp.proto"; | ||
import "gogoproto/gogo.proto"; | ||
import "google/protobuf/any.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/authz"; | ||
option (gogoproto.goproto_getters_all) = false; | ||
|
||
// GenericAuthorization gives the grantee unrestricted permissions to execute | ||
// the provided method on behalf of the granter's account. | ||
message GenericAuthorization { | ||
option (cosmos_proto.implements_interface) = "Authorization"; | ||
|
||
// Msg, identified by it's type URL, to grant unrestricted permissions to execute | ||
string msg = 1; | ||
} | ||
|
||
// Grant gives permissions to execute | ||
// the provide method with expiration time. | ||
message Grant { | ||
google.protobuf.Any authorization = 1 [(cosmos_proto.accepts_interface) = "Authorization"]; | ||
google.protobuf.Timestamp expiration = 2 [(gogoproto.stdtime) = true, (gogoproto.nullable) = false]; | ||
} | ||
|
||
// GrantAuthorization extends a grant with both the addresses of the grantee and granter. | ||
// It is used in genesis.proto and query.proto | ||
// | ||
// Since: cosmos-sdk 0.45.2 | ||
message GrantAuthorization { | ||
string granter = 1; | ||
string grantee = 2; | ||
|
||
google.protobuf.Any authorization = 3 [(cosmos_proto.accepts_interface) = "Authorization"]; | ||
google.protobuf.Timestamp expiration = 4 [(gogoproto.nullable) = false, (gogoproto.stdtime) = true]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
// Since: cosmos-sdk 0.43 | ||
syntax = "proto3"; | ||
package cosmos.authz.v1beta1; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/authz"; | ||
|
||
// EventGrant is emitted on Msg/Grant | ||
message EventGrant { | ||
// Msg type URL for which an autorization is granted | ||
string msg_type_url = 2; | ||
// Granter account address | ||
string granter = 3; | ||
// Grantee account address | ||
string grantee = 4; | ||
} | ||
|
||
// EventRevoke is emitted on Msg/Revoke | ||
message EventRevoke { | ||
// Msg type URL for which an autorization is revoked | ||
string msg_type_url = 2; | ||
// Granter account address | ||
string granter = 3; | ||
// Grantee account address | ||
string grantee = 4; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
// Since: cosmos-sdk 0.43 | ||
syntax = "proto3"; | ||
package cosmos.authz.v1beta1; | ||
|
||
import "gogoproto/gogo.proto"; | ||
import "cosmos/authz/v1beta1/authz.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/authz"; | ||
|
||
// GenesisState defines the authz module's genesis state. | ||
message GenesisState { | ||
repeated GrantAuthorization authorization = 1 [(gogoproto.nullable) = false]; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
// Since: cosmos-sdk 0.43 | ||
syntax = "proto3"; | ||
package cosmos.authz.v1beta1; | ||
|
||
import "google/api/annotations.proto"; | ||
import "cosmos/base/query/v1beta1/pagination.proto"; | ||
import "cosmos/authz/v1beta1/authz.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/authz"; | ||
|
||
// Query defines the gRPC querier service. | ||
service Query { | ||
// Returns list of `Authorization`, granted to the grantee by the granter. | ||
rpc Grants(QueryGrantsRequest) returns (QueryGrantsResponse) { | ||
option (google.api.http).get = "/cosmos/authz/v1beta1/grants"; | ||
} | ||
|
||
// GranterGrants returns list of `GrantAuthorization`, granted by granter. | ||
// | ||
// Since: cosmos-sdk 0.45.2 | ||
rpc GranterGrants(QueryGranterGrantsRequest) returns (QueryGranterGrantsResponse) { | ||
option (google.api.http).get = "/cosmos/authz/v1beta1/grants/granter/{granter}"; | ||
} | ||
|
||
// GranteeGrants returns a list of `GrantAuthorization` by grantee. | ||
// | ||
// Since: cosmos-sdk 0.45.2 | ||
rpc GranteeGrants(QueryGranteeGrantsRequest) returns (QueryGranteeGrantsResponse) { | ||
option (google.api.http).get = "/cosmos/authz/v1beta1/grants/grantee/{grantee}"; | ||
} | ||
} | ||
|
||
// QueryGrantsRequest is the request type for the Query/Grants RPC method. | ||
message QueryGrantsRequest { | ||
string granter = 1; | ||
string grantee = 2; | ||
// Optional, msg_type_url, when set, will query only grants matching given msg type. | ||
string msg_type_url = 3; | ||
// pagination defines an pagination for the request. | ||
cosmos.base.query.v1beta1.PageRequest pagination = 4; | ||
} | ||
|
||
// QueryGrantsResponse is the response type for the Query/Authorizations RPC method. | ||
message QueryGrantsResponse { | ||
// authorizations is a list of grants granted for grantee by granter. | ||
repeated Grant grants = 1; | ||
// pagination defines an pagination for the response. | ||
cosmos.base.query.v1beta1.PageResponse pagination = 2; | ||
} | ||
|
||
// QueryGranterGrantsRequest is the request type for the Query/GranterGrants RPC method. | ||
message QueryGranterGrantsRequest { | ||
string granter = 1; | ||
|
||
// pagination defines an pagination for the request. | ||
cosmos.base.query.v1beta1.PageRequest pagination = 2; | ||
} | ||
|
||
// QueryGranterGrantsResponse is the response type for the Query/GranterGrants RPC method. | ||
message QueryGranterGrantsResponse { | ||
// grants is a list of grants granted by the granter. | ||
repeated GrantAuthorization grants = 1; | ||
// pagination defines an pagination for the response. | ||
cosmos.base.query.v1beta1.PageResponse pagination = 2; | ||
} | ||
|
||
// QueryGranteeGrantsRequest is the request type for the Query/IssuedGrants RPC method. | ||
message QueryGranteeGrantsRequest { | ||
string grantee = 1; | ||
|
||
// pagination defines an pagination for the request. | ||
cosmos.base.query.v1beta1.PageRequest pagination = 2; | ||
} | ||
|
||
// QueryGranteeGrantsResponse is the response type for the Query/GranteeGrants RPC method. | ||
message QueryGranteeGrantsResponse { | ||
// grants is a list of grants granted to the grantee. | ||
repeated GrantAuthorization grants = 1; | ||
// pagination defines an pagination for the response. | ||
cosmos.base.query.v1beta1.PageResponse pagination = 2; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
// Since: cosmos-sdk 0.43 | ||
syntax = "proto3"; | ||
package cosmos.authz.v1beta1; | ||
|
||
import "cosmos_proto/cosmos.proto"; | ||
import "gogoproto/gogo.proto"; | ||
import "google/protobuf/timestamp.proto"; | ||
import "google/protobuf/any.proto"; | ||
import "cosmos/base/abci/v1beta1/abci.proto"; | ||
import "cosmos/authz/v1beta1/authz.proto"; | ||
|
||
option go_package = "github.com/cosmos/cosmos-sdk/x/authz"; | ||
option (gogoproto.goproto_getters_all) = false; | ||
|
||
// Msg defines the authz Msg service. | ||
service Msg { | ||
// Grant grants the provided authorization to the grantee on the granter's | ||
// account with the provided expiration time. If there is already a grant | ||
// for the given (granter, grantee, Authorization) triple, then the grant | ||
// will be overwritten. | ||
rpc Grant(MsgGrant) returns (MsgGrantResponse); | ||
|
||
// Exec attempts to execute the provided messages using | ||
// authorizations granted to the grantee. Each message should have only | ||
// one signer corresponding to the granter of the authorization. | ||
rpc Exec(MsgExec) returns (MsgExecResponse); | ||
|
||
// Revoke revokes any authorization corresponding to the provided method name on the | ||
// granter's account that has been granted to the grantee. | ||
rpc Revoke(MsgRevoke) returns (MsgRevokeResponse); | ||
} | ||
|
||
// MsgGrant is a request type for Grant method. It declares authorization to the grantee | ||
// on behalf of the granter with the provided expiration time. | ||
message MsgGrant { | ||
string granter = 1; | ||
string grantee = 2; | ||
|
||
cosmos.authz.v1beta1.Grant grant = 3 [(gogoproto.nullable) = false]; | ||
} | ||
|
||
// MsgExecResponse defines the Msg/MsgExecResponse response type. | ||
message MsgExecResponse { | ||
repeated bytes results = 1; | ||
} | ||
|
||
// MsgExec attempts to execute the provided messages using | ||
// authorizations granted to the grantee. Each message should have only | ||
// one signer corresponding to the granter of the authorization. | ||
message MsgExec { | ||
string grantee = 1; | ||
// Authorization Msg requests to execute. Each msg must implement Authorization interface | ||
// The x/authz will try to find a grant matching (msg.signers[0], grantee, MsgTypeURL(msg)) | ||
// triple and validate it. | ||
repeated google.protobuf.Any msgs = 2 [(cosmos_proto.accepts_interface) = "sdk.Msg, authz.Authorization"]; | ||
} | ||
|
||
// MsgGrantResponse defines the Msg/MsgGrant response type. | ||
message MsgGrantResponse {} | ||
|
||
// MsgRevoke revokes any authorization with the provided sdk.Msg type on the | ||
// granter's account with that has been granted to the grantee. | ||
message MsgRevoke { | ||
string granter = 1; | ||
string grantee = 2; | ||
string msg_type_url = 3; | ||
} | ||
|
||
// MsgRevokeResponse defines the Msg/MsgRevokeResponse response type. | ||
message MsgRevokeResponse {} |
Oops, something went wrong.