apistruct

package
v0.3.2 Latest Latest
Warning

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

Go to latest
Published: Jun 4, 2020 License: Apache-2.0, MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PermRead  auth.Permission = "read" // default
	PermWrite auth.Permission = "write"
	PermSign  auth.Permission = "sign"  // Use wallet keys for signing
	PermAdmin auth.Permission = "admin" // Manage permissions
)

Variables

View Source
var DefaultPerms = []auth.Permission{PermRead}

Functions

func PermissionedFullAPI

func PermissionedFullAPI(a api.FullNode) api.FullNode

func PermissionedStorMinerAPI

func PermissionedStorMinerAPI(a api.StorageMiner) api.StorageMiner

func PermissionedWorkerAPI added in v0.3.0

func PermissionedWorkerAPI(a api.WorkerApi) api.WorkerApi

Types

type CommonStruct

type CommonStruct struct {
	Internal struct {
		AuthVerify func(ctx context.Context, token string) ([]auth.Permission, error) `perm:"read"`
		AuthNew    func(ctx context.Context, perms []auth.Permission) ([]byte, error) `perm:"admin"`

		NetConnectedness func(context.Context, peer.ID) (network.Connectedness, error) `perm:"read"`
		NetPeers         func(context.Context) ([]peer.AddrInfo, error)                `perm:"read"`
		NetConnect       func(context.Context, peer.AddrInfo) error                    `perm:"write"`
		NetAddrsListen   func(context.Context) (peer.AddrInfo, error)                  `perm:"read"`
		NetDisconnect    func(context.Context, peer.ID) error                          `perm:"write"`
		NetFindPeer      func(context.Context, peer.ID) (peer.AddrInfo, error)         `perm:"read"`

		ID      func(context.Context) (peer.ID, error)     `perm:"read"`
		Version func(context.Context) (api.Version, error) `perm:"read"`

		LogList     func(context.Context) ([]string, error)     `perm:"write"`
		LogSetLevel func(context.Context, string, string) error `perm:"write"`

		Shutdown func(context.Context) error `perm:"admin"`
	}
}

func (*CommonStruct) AuthNew

func (c *CommonStruct) AuthNew(ctx context.Context, perms []auth.Permission) ([]byte, error)

func (*CommonStruct) AuthVerify

func (c *CommonStruct) AuthVerify(ctx context.Context, token string) ([]auth.Permission, error)

func (*CommonStruct) ID

func (c *CommonStruct) ID(ctx context.Context) (peer.ID, error)

ID implements API.ID

func (*CommonStruct) LogList added in v0.2.8

func (c *CommonStruct) LogList(ctx context.Context) ([]string, error)

func (*CommonStruct) LogSetLevel added in v0.2.8

func (c *CommonStruct) LogSetLevel(ctx context.Context, group, level string) error

func (*CommonStruct) NetAddrsListen

func (c *CommonStruct) NetAddrsListen(ctx context.Context) (peer.AddrInfo, error)

func (*CommonStruct) NetConnect

func (c *CommonStruct) NetConnect(ctx context.Context, p peer.AddrInfo) error

func (*CommonStruct) NetConnectedness

func (c *CommonStruct) NetConnectedness(ctx context.Context, pid peer.ID) (network.Connectedness, error)

func (*CommonStruct) NetDisconnect

func (c *CommonStruct) NetDisconnect(ctx context.Context, p peer.ID) error

func (*CommonStruct) NetFindPeer added in v0.2.9

func (c *CommonStruct) NetFindPeer(ctx context.Context, p peer.ID) (peer.AddrInfo, error)

func (*CommonStruct) NetPeers

func (c *CommonStruct) NetPeers(ctx context.Context) ([]peer.AddrInfo, error)

func (*CommonStruct) Shutdown added in v0.3.2

func (c *CommonStruct) Shutdown(ctx context.Context) error

func (*CommonStruct) Version

func (c *CommonStruct) Version(ctx context.Context) (api.Version, error)

Version implements API.Version

type FullNodeStruct

type FullNodeStruct struct {
	CommonStruct

	Internal struct {
		ChainNotify            func(context.Context) (<-chan []*api.HeadChange, error)                                                            `perm:"read"`
		ChainHead              func(context.Context) (*types.TipSet, error)                                                                       `perm:"read"`
		ChainGetRandomness     func(context.Context, types.TipSetKey, crypto.DomainSeparationTag, abi.ChainEpoch, []byte) (abi.Randomness, error) `perm:"read"`
		ChainGetBlock          func(context.Context, cid.Cid) (*types.BlockHeader, error)                                                         `perm:"read"`
		ChainGetTipSet         func(context.Context, types.TipSetKey) (*types.TipSet, error)                                                      `perm:"read"`
		ChainGetBlockMessages  func(context.Context, cid.Cid) (*api.BlockMessages, error)                                                         `perm:"read"`
		ChainGetParentReceipts func(context.Context, cid.Cid) ([]*types.MessageReceipt, error)                                                    `perm:"read"`
		ChainGetParentMessages func(context.Context, cid.Cid) ([]api.Message, error)                                                              `perm:"read"`
		ChainGetTipSetByHeight func(context.Context, abi.ChainEpoch, types.TipSetKey) (*types.TipSet, error)                                      `perm:"read"`
		ChainReadObj           func(context.Context, cid.Cid) ([]byte, error)                                                                     `perm:"read"`
		ChainHasObj            func(context.Context, cid.Cid) (bool, error)                                                                       `perm:"read"`
		ChainStatObj           func(context.Context, cid.Cid, cid.Cid) (api.ObjStat, error)                                                       `perm:"read"`
		ChainSetHead           func(context.Context, types.TipSetKey) error                                                                       `perm:"admin"`
		ChainGetGenesis        func(context.Context) (*types.TipSet, error)                                                                       `perm:"read"`
		ChainTipSetWeight      func(context.Context, types.TipSetKey) (types.BigInt, error)                                                       `perm:"read"`
		ChainGetNode           func(ctx context.Context, p string) (*api.IpldObject, error)                                                       `perm:"read"`
		ChainGetMessage        func(context.Context, cid.Cid) (*types.Message, error)                                                             `perm:"read"`
		ChainGetPath           func(context.Context, types.TipSetKey, types.TipSetKey) ([]*api.HeadChange, error)                                 `perm:"read"`
		ChainExport            func(context.Context, types.TipSetKey) (<-chan []byte, error)                                                      `perm:"read"`

		SyncState          func(context.Context) (*api.SyncState, error)                `perm:"read"`
		SyncSubmitBlock    func(ctx context.Context, blk *types.BlockMsg) error         `perm:"write"`
		SyncIncomingBlocks func(ctx context.Context) (<-chan *types.BlockHeader, error) `perm:"read"`
		SyncMarkBad        func(ctx context.Context, bcid cid.Cid) error                `perm:"admin"`
		SyncCheckBad       func(ctx context.Context, bcid cid.Cid) (string, error)      `perm:"read"`

		MpoolPending          func(context.Context, types.TipSetKey) ([]*types.SignedMessage, error)                       `perm:"read"`
		MpoolPush             func(context.Context, *types.SignedMessage) (cid.Cid, error)                                 `perm:"write"`
		MpoolPushMessage      func(context.Context, *types.Message) (*types.SignedMessage, error)                          `perm:"sign"`
		MpoolGetNonce         func(context.Context, address.Address) (uint64, error)                                       `perm:"read"`
		MpoolSub              func(context.Context) (<-chan api.MpoolUpdate, error)                                        `perm:"read"`
		MpoolEstimateGasPrice func(context.Context, uint64, address.Address, int64, types.TipSetKey) (types.BigInt, error) `perm:"read"`

		MinerGetBaseInfo func(context.Context, address.Address, abi.ChainEpoch, types.TipSetKey) (*api.MiningBaseInfo, error) `perm:"read"`
		MinerCreateBlock func(context.Context, *api.BlockTemplate) (*types.BlockMsg, error)                                   `perm:"write"`

		WalletNew            func(context.Context, crypto.SigType) (address.Address, error)                       `perm:"write"`
		WalletHas            func(context.Context, address.Address) (bool, error)                                 `perm:"write"`
		WalletList           func(context.Context) ([]address.Address, error)                                     `perm:"write"`
		WalletBalance        func(context.Context, address.Address) (types.BigInt, error)                         `perm:"read"`
		WalletSign           func(context.Context, address.Address, []byte) (*crypto.Signature, error)            `perm:"sign"`
		WalletSignMessage    func(context.Context, address.Address, *types.Message) (*types.SignedMessage, error) `perm:"sign"`
		WalletVerify         func(context.Context, address.Address, []byte, *crypto.Signature) bool               `perm:"read"`
		WalletDefaultAddress func(context.Context) (address.Address, error)                                       `perm:"write"`
		WalletSetDefault     func(context.Context, address.Address) error                                         `perm:"admin"`
		WalletExport         func(context.Context, address.Address) (*types.KeyInfo, error)                       `perm:"admin"`
		WalletImport         func(context.Context, *types.KeyInfo) (address.Address, error)                       `perm:"admin"`

		ClientImport      func(ctx context.Context, ref api.FileRef) (cid.Cid, error)                                          `perm:"admin"`
		ClientListImports func(ctx context.Context) ([]api.Import, error)                                                      `perm:"write"`
		ClientHasLocal    func(ctx context.Context, root cid.Cid) (bool, error)                                                `perm:"write"`
		ClientFindData    func(ctx context.Context, root cid.Cid) ([]api.QueryOffer, error)                                    `perm:"read"`
		ClientStartDeal   func(ctx context.Context, params *api.StartDealParams) (*cid.Cid, error)                             `perm:"admin"`
		ClientGetDealInfo func(context.Context, cid.Cid) (*api.DealInfo, error)                                                `perm:"read"`
		ClientListDeals   func(ctx context.Context) ([]api.DealInfo, error)                                                    `perm:"write"`
		ClientRetrieve    func(ctx context.Context, order api.RetrievalOrder, ref *api.FileRef) error                          `perm:"admin"`
		ClientQueryAsk    func(ctx context.Context, p peer.ID, miner address.Address) (*storagemarket.SignedStorageAsk, error) `perm:"read"`
		ClientCalcCommP   func(ctx context.Context, inpath string, miner address.Address) (*api.CommPRet, error)               `perm:"read"`
		ClientGenCar      func(ctx context.Context, ref api.FileRef, outpath string) error                                     `perm:"write"`

		StateNetworkName                  func(context.Context) (dtypes.NetworkName, error)                                                                   `perm:"read"`
		StateMinerSectors                 func(context.Context, address.Address, *abi.BitField, bool, types.TipSetKey) ([]*api.ChainSectorInfo, error)        `perm:"read"`
		StateMinerProvingSet              func(context.Context, address.Address, types.TipSetKey) ([]*api.ChainSectorInfo, error)                             `perm:"read"`
		StateMinerProvingDeadline         func(context.Context, address.Address, types.TipSetKey) (*miner.DeadlineInfo, error)                                `perm:"read"`
		StateMinerPower                   func(context.Context, address.Address, types.TipSetKey) (*api.MinerPower, error)                                    `perm:"read"`
		StateMinerInfo                    func(context.Context, address.Address, types.TipSetKey) (miner.MinerInfo, error)                                    `perm:"read"`
		StateMinerDeadlines               func(context.Context, address.Address, types.TipSetKey) (*miner.Deadlines, error)                                   `perm:"read"`
		StateMinerFaults                  func(context.Context, address.Address, types.TipSetKey) (*abi.BitField, error)                                      `perm:"read"`
		StateAllMinerFaults               func(context.Context, abi.ChainEpoch, types.TipSetKey) ([]*api.Fault, error)                                        `perm:"read"`
		StateMinerRecoveries              func(context.Context, address.Address, types.TipSetKey) (*abi.BitField, error)                                      `perm:"read"`
		StateMinerInitialPledgeCollateral func(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (types.BigInt, error)                     `perm:"read"`
		StateMinerAvailableBalance        func(context.Context, address.Address, types.TipSetKey) (types.BigInt, error)                                       `perm:"read"`
		StateSectorPreCommitInfo          func(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (miner.SectorPreCommitOnChainInfo, error) `perm:"read"`
		StateCall                         func(context.Context, *types.Message, types.TipSetKey) (*api.InvocResult, error)                                    `perm:"read"`
		StateReplay                       func(context.Context, types.TipSetKey, cid.Cid) (*api.InvocResult, error)                                           `perm:"read"`
		StateGetActor                     func(context.Context, address.Address, types.TipSetKey) (*types.Actor, error)                                       `perm:"read"`
		StateReadState                    func(context.Context, *types.Actor, types.TipSetKey) (*api.ActorState, error)                                       `perm:"read"`
		StatePledgeCollateral             func(context.Context, types.TipSetKey) (types.BigInt, error)                                                        `perm:"read"`
		StateWaitMsg                      func(context.Context, cid.Cid) (*api.MsgLookup, error)                                                              `perm:"read"`
		StateSearchMsg                    func(context.Context, cid.Cid) (*api.MsgLookup, error)                                                              `perm:"read"`
		StateListMiners                   func(context.Context, types.TipSetKey) ([]address.Address, error)                                                   `perm:"read"`
		StateListActors                   func(context.Context, types.TipSetKey) ([]address.Address, error)                                                   `perm:"read"`
		StateMarketBalance                func(context.Context, address.Address, types.TipSetKey) (api.MarketBalance, error)                                  `perm:"read"`
		StateMarketParticipants           func(context.Context, types.TipSetKey) (map[string]api.MarketBalance, error)                                        `perm:"read"`
		StateMarketDeals                  func(context.Context, types.TipSetKey) (map[string]api.MarketDeal, error)                                           `perm:"read"`
		StateMarketStorageDeal            func(context.Context, abi.DealID, types.TipSetKey) (*api.MarketDeal, error)                                         `perm:"read"`
		StateLookupID                     func(ctx context.Context, addr address.Address, tsk types.TipSetKey) (address.Address, error)                       `perm:"read"`
		StateAccountKey                   func(context.Context, address.Address, types.TipSetKey) (address.Address, error)                                    `perm:"read"`
		StateChangedActors                func(context.Context, cid.Cid, cid.Cid) (map[string]types.Actor, error)                                             `perm:"read"`
		StateGetReceipt                   func(context.Context, cid.Cid, types.TipSetKey) (*types.MessageReceipt, error)                                      `perm:"read"`
		StateMinerSectorCount             func(context.Context, address.Address, types.TipSetKey) (api.MinerSectors, error)                                   `perm:"read"`
		StateListMessages                 func(ctx context.Context, match *types.Message, tsk types.TipSetKey, toht abi.ChainEpoch) ([]cid.Cid, error)        `perm:"read"`
		StateCompute                      func(context.Context, abi.ChainEpoch, []*types.Message, types.TipSetKey) (*api.ComputeStateOutput, error)           `perm:"read"`

		MsigGetAvailableBalance func(context.Context, address.Address, types.TipSetKey) (types.BigInt, error)                                                                    `perm:"read"`
		MsigCreate              func(context.Context, int64, []address.Address, types.BigInt, address.Address, types.BigInt) (cid.Cid, error)                                    `perm:"sign"`
		MsigPropose             func(context.Context, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error)                          `perm:"sign"`
		MsigApprove             func(context.Context, address.Address, uint64, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) `perm:"sign"`
		MsigCancel              func(context.Context, address.Address, uint64, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) `perm:"sign"`

		MarketEnsureAvailable func(context.Context, address.Address, address.Address, types.BigInt) (cid.Cid, error) `perm:"sign"`

		PaychGet                   func(ctx context.Context, from, to address.Address, ensureFunds types.BigInt) (*api.ChannelInfo, error)   `perm:"sign"`
		PaychList                  func(context.Context) ([]address.Address, error)                                                          `perm:"read"`
		PaychStatus                func(context.Context, address.Address) (*api.PaychStatus, error)                                          `perm:"read"`
		PaychClose                 func(context.Context, address.Address) (cid.Cid, error)                                                   `perm:"sign"`
		PaychAllocateLane          func(context.Context, address.Address) (uint64, error)                                                    `perm:"sign"`
		PaychNewPayment            func(ctx context.Context, from, to address.Address, vouchers []api.VoucherSpec) (*api.PaymentInfo, error) `perm:"sign"`
		PaychVoucherCheck          func(context.Context, *paych.SignedVoucher) error                                                         `perm:"read"`
		PaychVoucherCheckValid     func(context.Context, address.Address, *paych.SignedVoucher) error                                        `perm:"read"`
		PaychVoucherCheckSpendable func(context.Context, address.Address, *paych.SignedVoucher, []byte, []byte) (bool, error)                `perm:"read"`
		PaychVoucherAdd            func(context.Context, address.Address, *paych.SignedVoucher, []byte, types.BigInt) (types.BigInt, error)  `perm:"write"`
		PaychVoucherCreate         func(context.Context, address.Address, big.Int, uint64) (*paych.SignedVoucher, error)                     `perm:"sign"`
		PaychVoucherList           func(context.Context, address.Address) ([]*paych.SignedVoucher, error)                                    `perm:"write"`
		PaychVoucherSubmit         func(context.Context, address.Address, *paych.SignedVoucher) (cid.Cid, error)                             `perm:"sign"`
	}
}

FullNodeStruct implements API passing calls to user-provided function values.

func (*FullNodeStruct) ChainExport added in v0.2.6

func (c *FullNodeStruct) ChainExport(ctx context.Context, tsk types.TipSetKey) (<-chan []byte, error)

func (*FullNodeStruct) ChainGetBlock

func (c *FullNodeStruct) ChainGetBlock(ctx context.Context, b cid.Cid) (*types.BlockHeader, error)

func (*FullNodeStruct) ChainGetBlockMessages

func (c *FullNodeStruct) ChainGetBlockMessages(ctx context.Context, b cid.Cid) (*api.BlockMessages, error)

func (*FullNodeStruct) ChainGetGenesis

func (c *FullNodeStruct) ChainGetGenesis(ctx context.Context) (*types.TipSet, error)

func (*FullNodeStruct) ChainGetMessage added in v0.1.6

func (c *FullNodeStruct) ChainGetMessage(ctx context.Context, mc cid.Cid) (*types.Message, error)

func (*FullNodeStruct) ChainGetNode added in v0.1.5

func (c *FullNodeStruct) ChainGetNode(ctx context.Context, p string) (*api.IpldObject, error)

func (*FullNodeStruct) ChainGetParentMessages

func (c *FullNodeStruct) ChainGetParentMessages(ctx context.Context, b cid.Cid) ([]api.Message, error)

func (*FullNodeStruct) ChainGetParentReceipts

func (c *FullNodeStruct) ChainGetParentReceipts(ctx context.Context, b cid.Cid) ([]*types.MessageReceipt, error)

func (*FullNodeStruct) ChainGetPath added in v0.2.5

func (c *FullNodeStruct) ChainGetPath(ctx context.Context, from types.TipSetKey, to types.TipSetKey) ([]*api.HeadChange, error)

func (*FullNodeStruct) ChainGetRandomness

func (c *FullNodeStruct) ChainGetRandomness(ctx context.Context, tsk types.TipSetKey, personalization crypto.DomainSeparationTag, randEpoch abi.ChainEpoch, entropy []byte) (abi.Randomness, error)

func (*FullNodeStruct) ChainGetTipSet

func (c *FullNodeStruct) ChainGetTipSet(ctx context.Context, key types.TipSetKey) (*types.TipSet, error)

func (*FullNodeStruct) ChainGetTipSetByHeight

func (c *FullNodeStruct) ChainGetTipSetByHeight(ctx context.Context, h abi.ChainEpoch, tsk types.TipSetKey) (*types.TipSet, error)

func (*FullNodeStruct) ChainHasObj added in v0.2.8

func (c *FullNodeStruct) ChainHasObj(ctx context.Context, o cid.Cid) (bool, error)

func (*FullNodeStruct) ChainHead

func (c *FullNodeStruct) ChainHead(ctx context.Context) (*types.TipSet, error)

func (*FullNodeStruct) ChainNotify

func (c *FullNodeStruct) ChainNotify(ctx context.Context) (<-chan []*api.HeadChange, error)

func (*FullNodeStruct) ChainReadObj

func (c *FullNodeStruct) ChainReadObj(ctx context.Context, obj cid.Cid) ([]byte, error)

func (*FullNodeStruct) ChainSetHead

func (c *FullNodeStruct) ChainSetHead(ctx context.Context, tsk types.TipSetKey) error

func (*FullNodeStruct) ChainStatObj added in v0.3.0

func (c *FullNodeStruct) ChainStatObj(ctx context.Context, obj, base cid.Cid) (api.ObjStat, error)

func (*FullNodeStruct) ChainTipSetWeight

func (c *FullNodeStruct) ChainTipSetWeight(ctx context.Context, tsk types.TipSetKey) (types.BigInt, error)

func (*FullNodeStruct) ClientCalcCommP added in v0.3.0

func (c *FullNodeStruct) ClientCalcCommP(ctx context.Context, inpath string, miner address.Address) (*api.CommPRet, error)

func (*FullNodeStruct) ClientFindData

func (c *FullNodeStruct) ClientFindData(ctx context.Context, root cid.Cid) ([]api.QueryOffer, error)

func (*FullNodeStruct) ClientGenCar added in v0.3.0

func (c *FullNodeStruct) ClientGenCar(ctx context.Context, ref api.FileRef, outpath string) error

func (*FullNodeStruct) ClientGetDealInfo

func (c *FullNodeStruct) ClientGetDealInfo(ctx context.Context, deal cid.Cid) (*api.DealInfo, error)

func (*FullNodeStruct) ClientHasLocal

func (c *FullNodeStruct) ClientHasLocal(ctx context.Context, root cid.Cid) (bool, error)

func (*FullNodeStruct) ClientImport

func (c *FullNodeStruct) ClientImport(ctx context.Context, ref api.FileRef) (cid.Cid, error)

func (*FullNodeStruct) ClientListDeals

func (c *FullNodeStruct) ClientListDeals(ctx context.Context) ([]api.DealInfo, error)

func (*FullNodeStruct) ClientListImports

func (c *FullNodeStruct) ClientListImports(ctx context.Context) ([]api.Import, error)

func (*FullNodeStruct) ClientQueryAsk

func (c *FullNodeStruct) ClientQueryAsk(ctx context.Context, p peer.ID, miner address.Address) (*storagemarket.SignedStorageAsk, error)

func (*FullNodeStruct) ClientRetrieve

func (c *FullNodeStruct) ClientRetrieve(ctx context.Context, order api.RetrievalOrder, ref *api.FileRef) error

func (*FullNodeStruct) ClientStartDeal

func (c *FullNodeStruct) ClientStartDeal(ctx context.Context, params *api.StartDealParams) (*cid.Cid, error)

func (*FullNodeStruct) MarketEnsureAvailable

func (c *FullNodeStruct) MarketEnsureAvailable(ctx context.Context, addr, wallet address.Address, amt types.BigInt) (cid.Cid, error)

func (*FullNodeStruct) MinerCreateBlock

func (c *FullNodeStruct) MinerCreateBlock(ctx context.Context, bt *api.BlockTemplate) (*types.BlockMsg, error)

func (*FullNodeStruct) MinerGetBaseInfo added in v0.3.0

func (c *FullNodeStruct) MinerGetBaseInfo(ctx context.Context, maddr address.Address, epoch abi.ChainEpoch, tsk types.TipSetKey) (*api.MiningBaseInfo, error)

func (*FullNodeStruct) MpoolEstimateGasPrice added in v0.3.0

func (c *FullNodeStruct) MpoolEstimateGasPrice(ctx context.Context, nblocksincl uint64, sender address.Address, limit int64, tsk types.TipSetKey) (types.BigInt, error)

func (*FullNodeStruct) MpoolGetNonce

func (c *FullNodeStruct) MpoolGetNonce(ctx context.Context, addr address.Address) (uint64, error)

func (*FullNodeStruct) MpoolPending

func (c *FullNodeStruct) MpoolPending(ctx context.Context, tsk types.TipSetKey) ([]*types.SignedMessage, error)

func (*FullNodeStruct) MpoolPush

func (c *FullNodeStruct) MpoolPush(ctx context.Context, smsg *types.SignedMessage) (cid.Cid, error)

func (*FullNodeStruct) MpoolPushMessage

func (c *FullNodeStruct) MpoolPushMessage(ctx context.Context, msg *types.Message) (*types.SignedMessage, error)

func (*FullNodeStruct) MpoolSub

func (c *FullNodeStruct) MpoolSub(ctx context.Context) (<-chan api.MpoolUpdate, error)

func (*FullNodeStruct) MsigApprove added in v0.3.0

func (c *FullNodeStruct) MsigApprove(ctx context.Context, msig address.Address, txID uint64, proposer address.Address, to address.Address, amt types.BigInt, src address.Address, method uint64, params []byte) (cid.Cid, error)

func (*FullNodeStruct) MsigCancel added in v0.3.0

func (c *FullNodeStruct) MsigCancel(ctx context.Context, msig address.Address, txID uint64, proposer address.Address, to address.Address, amt types.BigInt, src address.Address, method uint64, params []byte) (cid.Cid, error)

func (*FullNodeStruct) MsigCreate added in v0.3.0

func (c *FullNodeStruct) MsigCreate(ctx context.Context, req int64, addrs []address.Address, val types.BigInt, src address.Address, gp types.BigInt) (cid.Cid, error)

func (*FullNodeStruct) MsigGetAvailableBalance added in v0.2.8

func (c *FullNodeStruct) MsigGetAvailableBalance(ctx context.Context, a address.Address, tsk types.TipSetKey) (types.BigInt, error)

func (*FullNodeStruct) MsigPropose added in v0.3.0

func (c *FullNodeStruct) MsigPropose(ctx context.Context, msig address.Address, to address.Address, amt types.BigInt, src address.Address, method uint64, params []byte) (cid.Cid, error)

func (*FullNodeStruct) PaychAllocateLane

func (c *FullNodeStruct) PaychAllocateLane(ctx context.Context, ch address.Address) (uint64, error)

func (*FullNodeStruct) PaychClose

func (c *FullNodeStruct) PaychClose(ctx context.Context, a address.Address) (cid.Cid, error)

func (*FullNodeStruct) PaychGet

func (c *FullNodeStruct) PaychGet(ctx context.Context, from, to address.Address, ensureFunds types.BigInt) (*api.ChannelInfo, error)

func (*FullNodeStruct) PaychList

func (c *FullNodeStruct) PaychList(ctx context.Context) ([]address.Address, error)

func (*FullNodeStruct) PaychNewPayment

func (c *FullNodeStruct) PaychNewPayment(ctx context.Context, from, to address.Address, vouchers []api.VoucherSpec) (*api.PaymentInfo, error)

func (*FullNodeStruct) PaychStatus

func (c *FullNodeStruct) PaychStatus(ctx context.Context, pch address.Address) (*api.PaychStatus, error)

func (*FullNodeStruct) PaychVoucherAdd

func (c *FullNodeStruct) PaychVoucherAdd(ctx context.Context, addr address.Address, sv *paych.SignedVoucher, proof []byte, minDelta types.BigInt) (types.BigInt, error)

func (*FullNodeStruct) PaychVoucherCheckSpendable

func (c *FullNodeStruct) PaychVoucherCheckSpendable(ctx context.Context, addr address.Address, sv *paych.SignedVoucher, secret []byte, proof []byte) (bool, error)

func (*FullNodeStruct) PaychVoucherCheckValid

func (c *FullNodeStruct) PaychVoucherCheckValid(ctx context.Context, addr address.Address, sv *paych.SignedVoucher) error

func (*FullNodeStruct) PaychVoucherCreate

func (c *FullNodeStruct) PaychVoucherCreate(ctx context.Context, pch address.Address, amt types.BigInt, lane uint64) (*paych.SignedVoucher, error)

func (*FullNodeStruct) PaychVoucherList

func (c *FullNodeStruct) PaychVoucherList(ctx context.Context, pch address.Address) ([]*paych.SignedVoucher, error)

func (*FullNodeStruct) PaychVoucherSubmit

func (c *FullNodeStruct) PaychVoucherSubmit(ctx context.Context, ch address.Address, sv *paych.SignedVoucher) (cid.Cid, error)

func (*FullNodeStruct) StateAccountKey added in v0.3.0

func (c *FullNodeStruct) StateAccountKey(ctx context.Context, addr address.Address, tsk types.TipSetKey) (address.Address, error)

func (*FullNodeStruct) StateAllMinerFaults added in v0.3.1

func (c *FullNodeStruct) StateAllMinerFaults(ctx context.Context, cutoff abi.ChainEpoch, endTsk types.TipSetKey) ([]*api.Fault, error)

func (*FullNodeStruct) StateCall

func (c *FullNodeStruct) StateCall(ctx context.Context, msg *types.Message, tsk types.TipSetKey) (*api.InvocResult, error)

func (*FullNodeStruct) StateChangedActors

func (c *FullNodeStruct) StateChangedActors(ctx context.Context, olnstate cid.Cid, newstate cid.Cid) (map[string]types.Actor, error)

func (*FullNodeStruct) StateCompute added in v0.2.5

func (c *FullNodeStruct) StateCompute(ctx context.Context, height abi.ChainEpoch, msgs []*types.Message, tsk types.TipSetKey) (*api.ComputeStateOutput, error)

func (*FullNodeStruct) StateGetActor

func (c *FullNodeStruct) StateGetActor(ctx context.Context, actor address.Address, tsk types.TipSetKey) (*types.Actor, error)

func (*FullNodeStruct) StateGetReceipt

func (c *FullNodeStruct) StateGetReceipt(ctx context.Context, msg cid.Cid, tsk types.TipSetKey) (*types.MessageReceipt, error)

func (*FullNodeStruct) StateListActors

func (c *FullNodeStruct) StateListActors(ctx context.Context, tsk types.TipSetKey) ([]address.Address, error)

func (*FullNodeStruct) StateListMessages added in v0.1.6

func (c *FullNodeStruct) StateListMessages(ctx context.Context, match *types.Message, tsk types.TipSetKey, toht abi.ChainEpoch) ([]cid.Cid, error)

func (*FullNodeStruct) StateListMiners

func (c *FullNodeStruct) StateListMiners(ctx context.Context, tsk types.TipSetKey) ([]address.Address, error)

func (*FullNodeStruct) StateLookupID

func (c *FullNodeStruct) StateLookupID(ctx context.Context, addr address.Address, tsk types.TipSetKey) (address.Address, error)

func (*FullNodeStruct) StateMarketBalance

func (c *FullNodeStruct) StateMarketBalance(ctx context.Context, addr address.Address, tsk types.TipSetKey) (api.MarketBalance, error)

func (*FullNodeStruct) StateMarketDeals

func (c *FullNodeStruct) StateMarketDeals(ctx context.Context, tsk types.TipSetKey) (map[string]api.MarketDeal, error)

func (*FullNodeStruct) StateMarketParticipants

func (c *FullNodeStruct) StateMarketParticipants(ctx context.Context, tsk types.TipSetKey) (map[string]api.MarketBalance, error)

func (*FullNodeStruct) StateMarketStorageDeal

func (c *FullNodeStruct) StateMarketStorageDeal(ctx context.Context, dealid abi.DealID, tsk types.TipSetKey) (*api.MarketDeal, error)

func (*FullNodeStruct) StateMinerAvailableBalance added in v0.3.0

func (c *FullNodeStruct) StateMinerAvailableBalance(ctx context.Context, maddr address.Address, tsk types.TipSetKey) (types.BigInt, error)

func (*FullNodeStruct) StateMinerDeadlines added in v0.3.0

func (c *FullNodeStruct) StateMinerDeadlines(ctx context.Context, m address.Address, tsk types.TipSetKey) (*miner.Deadlines, error)

func (*FullNodeStruct) StateMinerFaults added in v0.2.8

func (c *FullNodeStruct) StateMinerFaults(ctx context.Context, actor address.Address, tsk types.TipSetKey) (*abi.BitField, error)

func (*FullNodeStruct) StateMinerInfo added in v0.3.0

func (c *FullNodeStruct) StateMinerInfo(ctx context.Context, actor address.Address, tsk types.TipSetKey) (miner.MinerInfo, error)

func (*FullNodeStruct) StateMinerInitialPledgeCollateral added in v0.3.0

func (c *FullNodeStruct) StateMinerInitialPledgeCollateral(ctx context.Context, maddr address.Address, snum abi.SectorNumber, tsk types.TipSetKey) (types.BigInt, error)

func (*FullNodeStruct) StateMinerPower

func (c *FullNodeStruct) StateMinerPower(ctx context.Context, a address.Address, tsk types.TipSetKey) (*api.MinerPower, error)

func (*FullNodeStruct) StateMinerProvingDeadline added in v0.3.0

func (c *FullNodeStruct) StateMinerProvingDeadline(ctx context.Context, addr address.Address, tsk types.TipSetKey) (*miner.DeadlineInfo, error)

func (*FullNodeStruct) StateMinerProvingSet

func (c *FullNodeStruct) StateMinerProvingSet(ctx context.Context, addr address.Address, tsk types.TipSetKey) ([]*api.ChainSectorInfo, error)

func (*FullNodeStruct) StateMinerRecoveries added in v0.3.1

func (c *FullNodeStruct) StateMinerRecoveries(ctx context.Context, actor address.Address, tsk types.TipSetKey) (*abi.BitField, error)

func (*FullNodeStruct) StateMinerSectorCount added in v0.1.5

func (c *FullNodeStruct) StateMinerSectorCount(ctx context.Context, addr address.Address, tsk types.TipSetKey) (api.MinerSectors, error)

func (*FullNodeStruct) StateMinerSectors

func (c *FullNodeStruct) StateMinerSectors(ctx context.Context, addr address.Address, filter *abi.BitField, filterOut bool, tsk types.TipSetKey) ([]*api.ChainSectorInfo, error)

func (*FullNodeStruct) StateNetworkName added in v0.3.0

func (c *FullNodeStruct) StateNetworkName(ctx context.Context) (dtypes.NetworkName, error)

func (*FullNodeStruct) StatePledgeCollateral

func (c *FullNodeStruct) StatePledgeCollateral(ctx context.Context, tsk types.TipSetKey) (types.BigInt, error)

func (*FullNodeStruct) StateReadState

func (c *FullNodeStruct) StateReadState(ctx context.Context, act *types.Actor, tsk types.TipSetKey) (*api.ActorState, error)

func (*FullNodeStruct) StateReplay

func (c *FullNodeStruct) StateReplay(ctx context.Context, tsk types.TipSetKey, mc cid.Cid) (*api.InvocResult, error)

func (*FullNodeStruct) StateSearchMsg added in v0.3.0

func (c *FullNodeStruct) StateSearchMsg(ctx context.Context, msgc cid.Cid) (*api.MsgLookup, error)

func (*FullNodeStruct) StateSectorPreCommitInfo added in v0.3.0

func (c *FullNodeStruct) StateSectorPreCommitInfo(ctx context.Context, maddr address.Address, n abi.SectorNumber, tsk types.TipSetKey) (miner.SectorPreCommitOnChainInfo, error)

func (*FullNodeStruct) StateWaitMsg

func (c *FullNodeStruct) StateWaitMsg(ctx context.Context, msgc cid.Cid) (*api.MsgLookup, error)

func (*FullNodeStruct) SyncCheckBad added in v0.2.8

func (c *FullNodeStruct) SyncCheckBad(ctx context.Context, bcid cid.Cid) (string, error)

func (*FullNodeStruct) SyncIncomingBlocks

func (c *FullNodeStruct) SyncIncomingBlocks(ctx context.Context) (<-chan *types.BlockHeader, error)

func (*FullNodeStruct) SyncMarkBad added in v0.1.6

func (c *FullNodeStruct) SyncMarkBad(ctx context.Context, bcid cid.Cid) error

func (*FullNodeStruct) SyncState

func (c *FullNodeStruct) SyncState(ctx context.Context) (*api.SyncState, error)

func (*FullNodeStruct) SyncSubmitBlock

func (c *FullNodeStruct) SyncSubmitBlock(ctx context.Context, blk *types.BlockMsg) error

func (*FullNodeStruct) WalletBalance

func (c *FullNodeStruct) WalletBalance(ctx context.Context, a address.Address) (types.BigInt, error)

func (*FullNodeStruct) WalletDefaultAddress

func (c *FullNodeStruct) WalletDefaultAddress(ctx context.Context) (address.Address, error)

func (*FullNodeStruct) WalletExport

func (c *FullNodeStruct) WalletExport(ctx context.Context, a address.Address) (*types.KeyInfo, error)

func (*FullNodeStruct) WalletHas

func (c *FullNodeStruct) WalletHas(ctx context.Context, addr address.Address) (bool, error)

func (*FullNodeStruct) WalletImport

func (c *FullNodeStruct) WalletImport(ctx context.Context, ki *types.KeyInfo) (address.Address, error)

func (*FullNodeStruct) WalletList

func (c *FullNodeStruct) WalletList(ctx context.Context) ([]address.Address, error)

func (*FullNodeStruct) WalletNew

func (c *FullNodeStruct) WalletNew(ctx context.Context, typ crypto.SigType) (address.Address, error)

func (*FullNodeStruct) WalletSetDefault

func (c *FullNodeStruct) WalletSetDefault(ctx context.Context, a address.Address) error

func (*FullNodeStruct) WalletSign

func (c *FullNodeStruct) WalletSign(ctx context.Context, k address.Address, msg []byte) (*crypto.Signature, error)

func (*FullNodeStruct) WalletSignMessage

func (c *FullNodeStruct) WalletSignMessage(ctx context.Context, k address.Address, msg *types.Message) (*types.SignedMessage, error)

func (*FullNodeStruct) WalletVerify added in v0.2.10

func (c *FullNodeStruct) WalletVerify(ctx context.Context, k address.Address, msg []byte, sig *crypto.Signature) bool

type StorageMinerStruct

type StorageMinerStruct struct {
	CommonStruct

	Internal struct {
		ActorAddress    func(context.Context) (address.Address, error)                 `perm:"read"`
		ActorSectorSize func(context.Context, address.Address) (abi.SectorSize, error) `perm:"read"`

		MiningBase func(context.Context) (*types.TipSet, error) `perm:"read"`

		MarketImportDealData      func(context.Context, cid.Cid, string) error                   `perm:"write"`
		MarketListDeals           func(ctx context.Context) ([]storagemarket.StorageDeal, error) `perm:"read"`
		MarketListIncompleteDeals func(ctx context.Context) ([]storagemarket.MinerDeal, error)   `perm:"read"`
		MarketSetPrice            func(context.Context, types.BigInt) error                      `perm:"admin"`

		PledgeSector func(context.Context) error `perm:"write"`

		SectorsStatus func(context.Context, abi.SectorNumber) (api.SectorInfo, error) `perm:"read"`
		SectorsList   func(context.Context) ([]abi.SectorNumber, error)               `perm:"read"`
		SectorsRefs   func(context.Context) (map[string][]api.SealedRef, error)       `perm:"read"`
		SectorsUpdate func(context.Context, abi.SectorNumber, api.SectorState) error  `perm:"write"`

		WorkerConnect func(context.Context, string) error                             `perm:"admin"` // TODO: worker perm
		WorkerStats   func(context.Context) (map[uint64]storiface.WorkerStats, error) `perm:"admin"`

		StorageList          func(context.Context) (map[stores.ID][]stores.Decl, error)                                                                     `perm:"admin"`
		StorageLocal         func(context.Context) (map[stores.ID]string, error)                                                                            `perm:"admin"`
		StorageStat          func(context.Context, stores.ID) (stores.FsStat, error)                                                                        `perm:"admin"`
		StorageAttach        func(context.Context, stores.StorageInfo, stores.FsStat) error                                                                 `perm:"admin"`
		StorageDeclareSector func(context.Context, stores.ID, abi.SectorID, stores.SectorFileType) error                                                    `perm:"admin"`
		StorageDropSector    func(context.Context, stores.ID, abi.SectorID, stores.SectorFileType) error                                                    `perm:"admin"`
		StorageFindSector    func(context.Context, abi.SectorID, stores.SectorFileType, bool) ([]stores.StorageInfo, error)                                 `perm:"admin"`
		StorageInfo          func(context.Context, stores.ID) (stores.StorageInfo, error)                                                                   `perm:"admin"`
		StorageBestAlloc     func(ctx context.Context, allocate stores.SectorFileType, spt abi.RegisteredProof, sealing bool) ([]stores.StorageInfo, error) `perm:"admin"`
		StorageReportHealth  func(ctx context.Context, id stores.ID, report stores.HealthReport) error                                                      `perm:"admin"`

		DealsImportData func(ctx context.Context, dealPropCid cid.Cid, file string) error `perm:"write"`
		DealsList       func(ctx context.Context) ([]storagemarket.StorageDeal, error)    `perm:"read"`

		StorageAddLocal func(ctx context.Context, path string) error `perm:"admin"`
	}
}

func (*StorageMinerStruct) ActorAddress

func (c *StorageMinerStruct) ActorAddress(ctx context.Context) (address.Address, error)

func (*StorageMinerStruct) ActorSectorSize

func (c *StorageMinerStruct) ActorSectorSize(ctx context.Context, addr address.Address) (abi.SectorSize, error)

func (*StorageMinerStruct) DealsImportData added in v0.3.0

func (c *StorageMinerStruct) DealsImportData(ctx context.Context, dealPropCid cid.Cid, file string) error

func (*StorageMinerStruct) DealsList added in v0.3.0

func (*StorageMinerStruct) MarketImportDealData added in v0.3.0

func (c *StorageMinerStruct) MarketImportDealData(ctx context.Context, propcid cid.Cid, path string) error

func (*StorageMinerStruct) MarketListDeals added in v0.3.0

func (c *StorageMinerStruct) MarketListDeals(ctx context.Context) ([]storagemarket.StorageDeal, error)

func (*StorageMinerStruct) MarketListIncompleteDeals added in v0.3.0

func (c *StorageMinerStruct) MarketListIncompleteDeals(ctx context.Context) ([]storagemarket.MinerDeal, error)

func (*StorageMinerStruct) MarketSetPrice added in v0.3.0

func (c *StorageMinerStruct) MarketSetPrice(ctx context.Context, p types.BigInt) error

func (*StorageMinerStruct) MiningBase added in v0.3.0

func (c *StorageMinerStruct) MiningBase(ctx context.Context) (*types.TipSet, error)

func (*StorageMinerStruct) PledgeSector

func (c *StorageMinerStruct) PledgeSector(ctx context.Context) error

func (*StorageMinerStruct) SectorsList

func (c *StorageMinerStruct) SectorsList(ctx context.Context) ([]abi.SectorNumber, error)

List all staged sectors

func (*StorageMinerStruct) SectorsRefs

func (c *StorageMinerStruct) SectorsRefs(ctx context.Context) (map[string][]api.SealedRef, error)

func (*StorageMinerStruct) SectorsStatus

func (c *StorageMinerStruct) SectorsStatus(ctx context.Context, sid abi.SectorNumber) (api.SectorInfo, error)

Get the status of a given sector by ID

func (*StorageMinerStruct) SectorsUpdate

func (c *StorageMinerStruct) SectorsUpdate(ctx context.Context, id abi.SectorNumber, state api.SectorState) error

func (*StorageMinerStruct) StorageAddLocal added in v0.3.0

func (c *StorageMinerStruct) StorageAddLocal(ctx context.Context, path string) error

func (*StorageMinerStruct) StorageAttach added in v0.3.0

func (c *StorageMinerStruct) StorageAttach(ctx context.Context, si stores.StorageInfo, st stores.FsStat) error

func (*StorageMinerStruct) StorageBestAlloc added in v0.3.0

func (c *StorageMinerStruct) StorageBestAlloc(ctx context.Context, allocate stores.SectorFileType, spt abi.RegisteredProof, sealing bool) ([]stores.StorageInfo, error)

func (*StorageMinerStruct) StorageDeclareSector added in v0.3.0

func (c *StorageMinerStruct) StorageDeclareSector(ctx context.Context, storageId stores.ID, s abi.SectorID, ft stores.SectorFileType) error

func (*StorageMinerStruct) StorageDropSector added in v0.3.0

func (c *StorageMinerStruct) StorageDropSector(ctx context.Context, storageId stores.ID, s abi.SectorID, ft stores.SectorFileType) error

func (*StorageMinerStruct) StorageFindSector added in v0.3.0

func (c *StorageMinerStruct) StorageFindSector(ctx context.Context, si abi.SectorID, types stores.SectorFileType, allowFetch bool) ([]stores.StorageInfo, error)

func (*StorageMinerStruct) StorageInfo added in v0.3.0

func (c *StorageMinerStruct) StorageInfo(ctx context.Context, id stores.ID) (stores.StorageInfo, error)

func (*StorageMinerStruct) StorageList added in v0.3.0

func (c *StorageMinerStruct) StorageList(ctx context.Context) (map[stores.ID][]stores.Decl, error)

func (*StorageMinerStruct) StorageLocal added in v0.3.0

func (c *StorageMinerStruct) StorageLocal(ctx context.Context) (map[stores.ID]string, error)

func (*StorageMinerStruct) StorageReportHealth added in v0.3.0

func (c *StorageMinerStruct) StorageReportHealth(ctx context.Context, id stores.ID, report stores.HealthReport) error

func (*StorageMinerStruct) StorageStat added in v0.3.0

func (c *StorageMinerStruct) StorageStat(ctx context.Context, id stores.ID) (stores.FsStat, error)

func (*StorageMinerStruct) WorkerConnect added in v0.3.0

func (c *StorageMinerStruct) WorkerConnect(ctx context.Context, url string) error

func (*StorageMinerStruct) WorkerStats

func (c *StorageMinerStruct) WorkerStats(ctx context.Context) (map[uint64]storiface.WorkerStats, error)

type WorkerStruct added in v0.3.0

type WorkerStruct struct {
	Internal struct {
		Version func(context.Context) (build.Version, error) `perm:"admin"`

		TaskTypes func(context.Context) (map[sealtasks.TaskType]struct{}, error) `perm:"admin"`
		Paths     func(context.Context) ([]stores.StoragePath, error)            `perm:"admin"`
		Info      func(context.Context) (storiface.WorkerInfo, error)            `perm:"admin"`

		SealPreCommit1 func(ctx context.Context, sector abi.SectorID, ticket abi.SealRandomness, pieces []abi.PieceInfo) (storage.PreCommit1Out, error)                                                           `perm:"admin"`
		SealPreCommit2 func(context.Context, abi.SectorID, storage.PreCommit1Out) (cids storage.SectorCids, err error)                                                                                            `perm:"admin"`
		SealCommit1    func(ctx context.Context, sector abi.SectorID, ticket abi.SealRandomness, seed abi.InteractiveSealRandomness, pieces []abi.PieceInfo, cids storage.SectorCids) (storage.Commit1Out, error) `perm:"admin"`
		SealCommit2    func(context.Context, abi.SectorID, storage.Commit1Out) (storage.Proof, error)                                                                                                             `perm:"admin"`
		FinalizeSector func(context.Context, abi.SectorID) error                                                                                                                                                  `perm:"admin"`

		Fetch func(context.Context, abi.SectorID, stores.SectorFileType, bool) error `perm:"admin"`

		Closing func(context.Context) (<-chan struct{}, error) `perm:"admin"`
	}
}

func (*WorkerStruct) Closing added in v0.3.0

func (w *WorkerStruct) Closing(ctx context.Context) (<-chan struct{}, error)

func (*WorkerStruct) Fetch added in v0.3.0

func (w *WorkerStruct) Fetch(ctx context.Context, id abi.SectorID, fileType stores.SectorFileType, b bool) error

func (*WorkerStruct) FinalizeSector added in v0.3.0

func (w *WorkerStruct) FinalizeSector(ctx context.Context, sector abi.SectorID) error

func (*WorkerStruct) Info added in v0.3.0

func (*WorkerStruct) Paths added in v0.3.0

func (w *WorkerStruct) Paths(ctx context.Context) ([]stores.StoragePath, error)

func (*WorkerStruct) SealCommit1 added in v0.3.0

func (*WorkerStruct) SealCommit2 added in v0.3.0

func (w *WorkerStruct) SealCommit2(ctx context.Context, sector abi.SectorID, c1o storage.Commit1Out) (storage.Proof, error)

func (*WorkerStruct) SealPreCommit1 added in v0.3.0

func (w *WorkerStruct) SealPreCommit1(ctx context.Context, sector abi.SectorID, ticket abi.SealRandomness, pieces []abi.PieceInfo) (storage.PreCommit1Out, error)

func (*WorkerStruct) SealPreCommit2 added in v0.3.0

func (w *WorkerStruct) SealPreCommit2(ctx context.Context, sector abi.SectorID, p1o storage.PreCommit1Out) (storage.SectorCids, error)

func (*WorkerStruct) TaskTypes added in v0.3.0

func (w *WorkerStruct) TaskTypes(ctx context.Context) (map[sealtasks.TaskType]struct{}, error)

func (*WorkerStruct) Version added in v0.3.0

func (w *WorkerStruct) Version(ctx context.Context) (build.Version, error)

Jump to

Keyboard shortcuts

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