Documentation
¶
Index ¶
- Constants
- Variables
- type APIInfo
- type APIVersion
- type ActiveSync
- type ActorState
- type BlockMessages
- type BlockReward
- type BlockTemplate
- type ChainIO
- type ChannelAvailableFunds
- type ChannelInfo
- type CirculatingSupply
- type CommPRet
- type Common
- type ComputeStateOutput
- type ConnMgrInfo
- type DataCIDSize
- type DataIndex
- type DataSize
- type DataTransferChannel
- type Deadline
- type DealInfo
- type ExpertFileInfo
- type ExpertInfo
- type ExpertRegisterFileParams
- type ExportRef
- type ExtendedPeerInfo
- type Fault
- type FileRef
- type FlowInfo
- type FlowVoucherCreateResult
- type FlowVoucherSpec
- type FlowchStatus
- type FullNode
- type HeadChange
- type Import
- type ImportAndDealParams
- type ImportRes
- type InvocResult
- type IpldObject
- type MarketDeal
- type Message
- type MessageMatch
- type MessageSendSpec
- type MethodCall
- type MinerPower
- type MinerSectors
- type MiningBaseInfo
- type MpoolChange
- type MpoolUpdate
- type MsgGasCost
- type MsgLookup
- type MsigProposeResponse
- type MsigTransaction
- type MsigVesting
- type MultiaddrSlice
- type NatInfo
- type NetBlockList
- type NodeType
- type ObjStat
- type PCHDir
- type Partition
- type PaychStatus
- type PaymentInfo
- type PubsubScore
- type QueryOffer
- type RetrievalDeal
- type RetrievalInfo
- type RetrievalOrder
- type RetrievalPledgeInfo
- type RetrievalState
- type StartDealParams
- type SyncState
- type SyncStateStage
- type Version
- type VoucherCreateResult
- type VoucherSpec
Constants ¶
View Source
const ( StageIdle = SyncStateStage(iota) StageHeaders StagePersistHeaders StageMessages StageSyncComplete StageSyncErrored StageFetchingMessages )
Variables ¶
View Source
var ( FullAPIVersion = newVer(1, 1, 0) MinerAPIVersion = newVer(1, 0, 1) WorkerAPIVersion = newVer(1, 0, 0) )
semver versions of the rpc api exposed
View Source
var EmptyVesting = MsigVesting{ InitialBalance: types.EmptyInt, StartEpoch: -1, UnlockDuration: -1, }
Functions ¶
This section is empty.
Types ¶
type APIVersion ¶
type APIVersion struct { Version string // APIVersion is a binary encoded semver version of the remote implementing // this api // // See APIVersion in build/version.go APIVersion Version // Seconds BlockDelay uint64 }
APIVersion provides various build-time information
func (APIVersion) String ¶
func (v APIVersion) String() string
type ActiveSync ¶
type ActorState ¶
type BlockMessages ¶
type BlockMessages struct { BlsMessages []*types.Message SecpkMessages []*types.SignedMessage Cids []cid.Cid }
BlsMessages[x].cid = Cids[x] SecpkMessages[y].cid = Cids[BlsMessages.length + y]
type BlockReward ¶
type BlockReward struct { PowerReward abi.TokenAmount // to miner GasReward abi.TokenAmount // to miner VoteReward abi.TokenAmount // to vote fund ExpertReward abi.TokenAmount // to expert fund RetrievalReward abi.TokenAmount // to retrieval fund KnowledgeReward abi.TokenAmount // to knowledge fund // Sum of failed to award among above, the funds may be burnt or remain in reward actor SendFailed abi.TokenAmount }
type BlockTemplate ¶
type BlockTemplate struct { Miner address.Address Parents types.TipSetKey Ticket *types.Ticket Eproof *types.ElectionProof BeaconValues []types.BeaconEntry Messages []*types.SignedMessage Epoch abi.ChainEpoch Timestamp uint64 WinningPoStProof []builtin.PoStProof }
type ChainIO ¶
type ChainIO interface { ChainReadObj(context.Context, cid.Cid) ([]byte, error) ChainHasObj(context.Context, cid.Cid) (bool, error) }
ChainIO abstracts operations for accessing raw IPLD objects.
type ChannelAvailableFunds ¶
type ChannelAvailableFunds struct { // Channel is the address of the channel Channel *address.Address // From is the from address of the channel (channel creator) From address.Address // To is the to address of the channel To address.Address // ConfirmedAmt is the amount of funds that have been confirmed on-chain // for the channel ConfirmedAmt types.BigInt // PendingAmt is the amount of funds that are pending confirmation on-chain PendingAmt types.BigInt // PendingWaitSentinel can be used with PaychGetWaitReady to wait for // confirmation of pending funds PendingWaitSentinel *cid.Cid // QueuedAmt is the amount that is queued up behind a pending request QueuedAmt types.BigInt // VoucherRedeemedAmt is the amount that is redeemed by vouchers on-chain // and in the local datastore VoucherReedeemedAmt types.BigInt }
type ChannelInfo ¶
type ChannelInfo struct { Channel address.Address WaitSentinel cid.Cid }
type CirculatingSupply ¶
type CirculatingSupply struct { EpkVested abi.TokenAmount EpkTeamVested abi.TokenAmount EpkFoundationVested abi.TokenAmount EpkInvestorVested abi.TokenAmount EpkMined abi.TokenAmount EpkBurnt abi.TokenAmount EpkLocked abi.TokenAmount EpkCirculating abi.TokenAmount TotalRetrievalPledge abi.TokenAmount }
type CommPRet ¶
type CommPRet struct { Root cid.Cid Size abi.UnpaddedPieceSize }
type Common ¶
type Common interface { AuthVerify(ctx context.Context, token string) ([]auth.Permission, error) AuthNew(ctx context.Context, perms []auth.Permission) ([]byte, error) NetConnectedness(context.Context, peer.ID) (network.Connectedness, error) NetPeers(context.Context) ([]peer.AddrInfo, error) NetConnect(context.Context, peer.AddrInfo) error NetAddrsListen(context.Context) (peer.AddrInfo, error) NetDisconnect(context.Context, peer.ID) error NetFindPeer(context.Context, peer.ID) (peer.AddrInfo, error) NetPubsubScores(context.Context) ([]PubsubScore, error) NetAutoNatStatus(context.Context) (NatInfo, error) NetAgentVersion(ctx context.Context, p peer.ID) (string, error) NetPeerInfo(context.Context, peer.ID) (*ExtendedPeerInfo, error) // NetBandwidthStats returns statistics about the nodes total bandwidth // usage and current rate across all peers and protocols. NetBandwidthStats(ctx context.Context) (metrics.Stats, error) // NetBandwidthStatsByPeer returns statistics about the nodes bandwidth // usage and current rate per peer NetBandwidthStatsByPeer(ctx context.Context) (map[string]metrics.Stats, error) // NetBandwidthStatsByProtocol returns statistics about the nodes bandwidth // usage and current rate per protocol NetBandwidthStatsByProtocol(ctx context.Context) (map[protocol.ID]metrics.Stats, error) // ConnectionGater API NetBlockAdd(ctx context.Context, acl NetBlockList) error NetBlockRemove(ctx context.Context, acl NetBlockList) error NetBlockList(ctx context.Context) (NetBlockList, error) // ID returns peerID of libp2p node backing this API ID(context.Context) (peer.ID, error) // Version provides information about API provider Version(context.Context) (APIVersion, error) LogList(context.Context) ([]string, error) LogSetLevel(context.Context, string, string) error // GC handle the db gc GC(context.Context) error // trigger graceful shutdown Shutdown(context.Context) error // Session returns a random UUID of api provider session Session(context.Context) (uuid.UUID, error) Closing(context.Context) (<-chan struct{}, error) }
type ComputeStateOutput ¶
type ComputeStateOutput struct { Root cid.Cid Trace []*InvocResult }
type ConnMgrInfo ¶
type DataCIDSize ¶
type DataCIDSize struct { PayloadSize int64 PieceSize abi.PaddedPieceSize PieceCID cid.Cid }
type DataSize ¶
type DataSize struct { PayloadSize int64 PieceSize abi.PaddedPieceSize }
type DataTransferChannel ¶
type DataTransferChannel struct { TransferID datatransfer.TransferID Status datatransfer.Status BaseCID cid.Cid IsInitiator bool IsSender bool Voucher string Message string OtherPeer peer.ID Transferred uint64 }
func NewDataTransferChannel ¶
func NewDataTransferChannel(hostID peer.ID, channelState datatransfer.ChannelState) DataTransferChannel
NewDataTransferChannel constructs an API DataTransferChannel type from full channel state snapshot and a host id
type Deadline ¶
type Deadline struct { PostSubmissions bitfield.BitField DisputableProofCount uint64 }
type DealInfo ¶
type DealInfo struct { ProposalCid cid.Cid State storagemarket.StorageDealStatus Message string // more information about deal state, particularly errors Provider address.Address DataRef *storagemarket.DataRef PieceCID cid.Cid Size uint64 DealID abi.DealID CreationTime time.Time TransferChannelID *datatransfer.ChannelID DataTransfer *DataTransferChannel }
type ExpertFileInfo ¶
type ExpertFileInfo struct { Expert address.Address PieceID cid.Cid PieceSize abi.PaddedPieceSize Redundancy uint64 }
type ExpertInfo ¶
type ExpertInfo struct { expert.ExpertInfo TotalReward abi.TokenAmount }
type ExpertRegisterFileParams ¶
type ExpertRegisterFileParams struct { Expert address.Address RootID cid.Cid PieceID cid.Cid PieceSize abi.PaddedPieceSize }
type ExportRef ¶
type ExportRef struct { Root cid.Cid DealID retrievalmarket.DealID }
type ExtendedPeerInfo ¶
type Fault ¶
type Fault struct { Miner address.Address Epoch abi.ChainEpoch }
type FlowInfo ¶
type FlowInfo struct { Channel address.Address WaitSentinel cid.Cid Vouchers []*flowch.SignedVoucher }
type FlowVoucherCreateResult ¶
type FlowVoucherCreateResult struct { // Voucher that was created, or nil if there was an error or if there // were insufficient funds in the channel Voucher *flowch.SignedVoucher // Shortfall is the additional amount that would be needed in the channel // in order to be able to create the voucher Shortfall types.BigInt }
FlowVoucherCreateResult is the response to calling PaychVoucherCreate
type FlowVoucherSpec ¶
type FlowVoucherSpec struct { Amount types.BigInt TimeLockMin abi.ChainEpoch TimeLockMax abi.ChainEpoch MinSettle abi.ChainEpoch Extra *flowch.ModVerifyParams }
type FlowchStatus ¶
type FlowchStatus struct { ControlAddr address.Address Direction PCHDir }
type FullNode ¶
type FullNode interface { Common // ChainNotify returns channel with chain head updates. // First message is guaranteed to be of len == 1, and type == 'current'. ChainNotify(context.Context) (<-chan []*HeadChange, error) // ChainHead returns the current head of the chain. ChainHead(context.Context) (*types.TipSet, error) // ChainGetRandomnessFromTickets is used to sample the chain for randomness. ChainGetRandomnessFromTickets(ctx context.Context, tsk types.TipSetKey, personalization crypto.DomainSeparationTag, randEpoch abi.ChainEpoch, entropy []byte) (abi.Randomness, error) // ChainGetRandomnessFromBeacon is used to sample the beacon for randomness. ChainGetRandomnessFromBeacon(ctx context.Context, tsk types.TipSetKey, personalization crypto.DomainSeparationTag, randEpoch abi.ChainEpoch, entropy []byte) (abi.Randomness, error) ChainAllowNoWindowPoSt(ctx context.Context, tsk types.TipSetKey, challenge abi.ChainEpoch, rand abi.Randomness) (bool, error) // ChainGetBlock returns the block specified by the given CID. ChainGetBlock(context.Context, cid.Cid) (*types.BlockHeader, error) // ChainGetTipSet returns the tipset specified by the given TipSetKey. ChainGetTipSet(context.Context, types.TipSetKey) (*types.TipSet, error) // ChainGetBlockMessages returns messages stored in the specified block. ChainGetBlockMessages(ctx context.Context, blockCid cid.Cid) (*BlockMessages, error) // ChainGetParentReceipts returns receipts for messages in parent tipset of // the specified block. ChainGetParentReceipts(ctx context.Context, blockCid cid.Cid) ([]*types.MessageReceipt, error) // ChainGetParentMessages returns messages stored in parent tipset of the // specified block. ChainGetParentMessages(ctx context.Context, blockCid cid.Cid) ([]Message, error) // ChainGetTipSetByHeight looks back for a tipset at the specified epoch. // If there are no blocks at the specified epoch, a tipset at an earlier epoch // will be returned. ChainGetTipSetByHeight(context.Context, abi.ChainEpoch, types.TipSetKey) (*types.TipSet, error) // ChainReadObj reads ipld nodes referenced by the specified CID from chain // blockstore and returns raw bytes. ChainReadObj(context.Context, cid.Cid) ([]byte, error) // ChainDeleteObj deletes node referenced by the given CID ChainDeleteObj(context.Context, cid.Cid) error // ChainHasObj checks if a given CID exists in the chain blockstore. ChainHasObj(context.Context, cid.Cid) (bool, error) // ChainStatObj returns statistics about the graph referenced by 'obj'. // If 'base' is also specified, then the returned stat will be a diff // between the two objects. ChainStatObj(ctx context.Context, obj cid.Cid, base cid.Cid) (ObjStat, error) // ChainSetHead forcefully sets current chain head. Use with caution. ChainSetHead(context.Context, types.TipSetKey) error // ChainGetGenesis returns the genesis tipset. ChainGetGenesis(context.Context) (*types.TipSet, error) // ChainTipSetWeight computes weight for the specified tipset. ChainTipSetWeight(context.Context, types.TipSetKey) (types.BigInt, error) ChainGetNode(ctx context.Context, p string) (*IpldObject, error) // ChainGetMessage reads a message referenced by the specified CID from the // chain blockstore. ChainGetMessage(context.Context, cid.Cid) (*types.Message, error) // ChainGetPath returns a set of revert/apply operations needed to get from // one tipset to another, for example: //“` // to // ^ // from tAA // ^ ^ // tBA tAB // ^---*--^ // ^ // tRR //“` // Would return `[revert(tBA), apply(tAB), apply(tAA)]` ChainGetPath(ctx context.Context, from types.TipSetKey, to types.TipSetKey) ([]*HeadChange, error) // ChainExport returns a stream of bytes with CAR dump of chain data. // The exported chain data includes the header chain from the given tipset // back to genesis, the entire genesis state, and the most recent 'nroots' // state trees. // If oldmsgskip is set, messages from before the requested roots are also not included. ChainExport(ctx context.Context, nroots abi.ChainEpoch, oldmsgskip bool, tsk types.TipSetKey) (<-chan []byte, error) // BeaconGetEntry returns the beacon entry for the given epoch. If // the entry has not yet been produced, the call will block until the entry // becomes available BeaconGetEntry(ctx context.Context, epoch abi.ChainEpoch) (*types.BeaconEntry, error) // GasEstimateFeeCap estimates gas fee cap GasEstimateFeeCap(context.Context, *types.Message, int64, types.TipSetKey) (types.BigInt, error) // GasEstimateGasLimit estimates gas used by the message and returns it. // It fails if message fails to execute. GasEstimateGasLimit(context.Context, *types.Message, types.TipSetKey) (int64, error) GasEstimateGasPremium(_ context.Context, nblocksincl uint64, sender address.Address, gaslimit int64, tsk types.TipSetKey) (types.BigInt, error) // GasEstimateMessageGas estimates gas values for unset message gas fields GasEstimateMessageGas(context.Context, *types.Message, *MessageSendSpec, types.TipSetKey) (*types.Message, error) // SyncState returns the current status of the epik sync system. SyncState(context.Context) (*SyncState, error) // SyncSubmitBlock can be used to submit a newly created block to the. // network through this node SyncSubmitBlock(ctx context.Context, blk *types.BlockMsg) error // SyncIncomingBlocks returns a channel streaming incoming, potentially not // yet synced block headers. SyncIncomingBlocks(ctx context.Context) (<-chan *types.BlockHeader, error) // SyncCheckpoint marks a blocks as checkpointed, meaning that it won't ever fork away from it. SyncCheckpoint(ctx context.Context, tsk types.TipSetKey) error // SyncMarkBad marks a blocks as bad, meaning that it won't ever by synced. // Use with extreme caution. SyncMarkBad(ctx context.Context, bcid cid.Cid) error // SyncUnmarkBad unmarks a blocks as bad, making it possible to be validated and synced again. SyncUnmarkBad(ctx context.Context, bcid cid.Cid) error // SyncUnmarkAllBad purges bad block cache, making it possible to sync to chains previously marked as bad SyncUnmarkAllBad(ctx context.Context) error // SyncCheckBad checks if a block was marked as bad, and if it was, returns // the reason. SyncCheckBad(ctx context.Context, bcid cid.Cid) (string, error) // SyncValidateTipset indicates whether the provided tipset is valid or not SyncValidateTipset(ctx context.Context, tsk types.TipSetKey) (bool, error) // MpoolPending returns pending mempool messages. MpoolPending(context.Context, types.TipSetKey) ([]*types.SignedMessage, error) // MpoolSelect returns a list of pending messages for inclusion in the next block MpoolSelect(context.Context, types.TipSetKey, float64) ([]*types.SignedMessage, error) // MpoolPush pushes a signed message to mempool. MpoolPush(context.Context, *types.SignedMessage) (cid.Cid, error) // MpoolPushUntrusted pushes a signed message to mempool from untrusted sources. MpoolPushUntrusted(context.Context, *types.SignedMessage) (cid.Cid, error) // MpoolPushMessage atomically assigns a nonce, signs, and pushes a message // to mempool. // maxFee is only used when GasFeeCap/GasPremium fields aren't specified // // When maxFee is set to 0, MpoolPushMessage will guess appropriate fee // based on current chain conditions MpoolPushMessage(ctx context.Context, msg *types.Message, spec *MessageSendSpec) (*types.SignedMessage, error) // MpoolBatchPush batch pushes a signed message to mempool. MpoolBatchPush(context.Context, []*types.SignedMessage) ([]cid.Cid, error) // MpoolBatchPushUntrusted batch pushes a signed message to mempool from untrusted sources. MpoolBatchPushUntrusted(context.Context, []*types.SignedMessage) ([]cid.Cid, error) // MpoolBatchPushMessage batch pushes a unsigned message to mempool. MpoolBatchPushMessage(context.Context, []*types.Message, *MessageSendSpec) ([]*types.SignedMessage, error) // MpoolGetNonce gets next nonce for the specified sender. // Note that this method may not be atomic. Use MpoolPushMessage instead. MpoolGetNonce(context.Context, address.Address) (uint64, error) MpoolSub(context.Context) (<-chan MpoolUpdate, error) // MpoolClear clears pending messages from the mpool MpoolClear(context.Context, bool) error // MpoolGetConfig returns (a copy of) the current mpool config MpoolGetConfig(context.Context) (*types.MpoolConfig, error) // MpoolSetConfig sets the mpool config to (a copy of) the supplied config MpoolSetConfig(context.Context, *types.MpoolConfig) error MinerGetBaseInfo(context.Context, address.Address, abi.ChainEpoch, types.TipSetKey) (*MiningBaseInfo, error) MinerCreateBlock(context.Context, *BlockTemplate) (*types.BlockMsg, error) // WalletNew creates a new address in the wallet with the given sigType. // Available key types: bls, secp256k1, secp256k1-ledger // Support for numerical types: 1 - secp256k1, 2 - BLS is deprecated WalletNew(context.Context, types.KeyType) (address.Address, error) // WalletHas indicates whether the given address is in the wallet. WalletHas(context.Context, address.Address) (bool, error) // WalletList lists all the addresses in the wallet. WalletList(context.Context) ([]address.Address, error) // WalletBalance returns the balance of the given address at the current head of the chain. WalletBalance(context.Context, address.Address) (types.BigInt, error) // WalletSign signs the given bytes using the given address. WalletSign(context.Context, address.Address, []byte) (*crypto.Signature, error) // WalletSignMessage signs the given message using the given address. WalletSignMessage(context.Context, address.Address, *types.Message) (*types.SignedMessage, error) // WalletVerify takes an address, a signature, and some bytes, and indicates whether the signature is valid. // The address does not have to be in the wallet. WalletVerify(context.Context, address.Address, []byte, *crypto.Signature) (bool, error) // WalletDefaultAddress returns the address marked as default in the wallet. WalletDefaultAddress(context.Context) (address.Address, error) // WalletSetDefault marks the given address as as the default one. WalletSetDefault(context.Context, address.Address) error // WalletExport returns the private key of an address in the wallet. WalletExport(context.Context, address.Address) (*types.KeyInfo, error) // WalletImport receives a KeyInfo, which includes a private key, and imports it into the wallet. WalletImport(context.Context, *types.KeyInfo) (address.Address, error) // WalletDelete deletes an address from the wallet. WalletDelete(context.Context, address.Address) error // WalletValidateAddress validates whether a given string can be decoded as a well-formed address WalletValidateAddress(context.Context, string) (address.Address, error) // ClientImport imports file under the specified path into filestore. ClientImport(ctx context.Context, ref FileRef) (*ImportRes, error) // ClientRemoveImport removes file import ClientRemoveImport(ctx context.Context, importID multistore.StoreID) error // ClientStartDeal proposes a deal with a miner. ClientStartDeal(ctx context.Context, params *StartDealParams) (*cid.Cid, error) // ClientImportAndDeal imports file and deal with all miners found. ClientImportAndDeal(ctx context.Context, params *ImportAndDealParams) (*ImportRes, error) // ClientExpertRegisterFile registers new piece. ClientExpertRegisterFile(ctx context.Context, params *ExpertRegisterFileParams) (*cid.Cid, error) // ClientGetDealInfo returns the latest information about a given deal. ClientGetDealInfo(context.Context, cid.Cid) (*DealInfo, error) // ClientListDeals returns information about the deals made by the local client. ClientListDeals(ctx context.Context) ([]DealInfo, error) // ClientGetDealUpdates returns the status of updated deals ClientGetDealUpdates(ctx context.Context) (<-chan DealInfo, error) // ClientGetDealStatus returns status given a code ClientGetDealStatus(ctx context.Context, statusCode uint64) (string, error) // ClientHasLocal indicates whether a certain CID is locally stored. ClientHasLocal(ctx context.Context, root cid.Cid) (bool, error) // ClientFindData identifies peers that have a certain file, and returns QueryOffers (one per peer). ClientFindData(ctx context.Context, root cid.Cid, piece *cid.Cid) ([]QueryOffer, error) // ClientMinerQueryOffer returns a QueryOffer for the specific miner and file. ClientMinerQueryOffer(ctx context.Context, miner address.Address, root cid.Cid, piece *cid.Cid) (QueryOffer, error) // ClientRetrieve initiates the retrieval of a file, as specified in the order. ClientRetrieve(ctx context.Context, order RetrievalOrder, ref *FileRef) error // ClientRetrieveWithEvents initiates the retrieval of a file, as specified in the order, and provides a channel // of status updates. ClientRetrieveWithEvents(ctx context.Context, order RetrievalOrder, ref *FileRef) (<-chan marketevents.RetrievalEvent, error) // ClientQueryAsk returns a signed StorageAsk from the specified miner. ClientQueryAsk(ctx context.Context, p peer.ID, miner address.Address) (*storagemarket.StorageAsk, error) // ClientCalcCommP calculates the CommP and data size of the specified CID ClientDealPieceCID(ctx context.Context, root cid.Cid) (DataCIDSize, error) // ClientCalcCommP calculates the CommP for a specified file ClientCalcCommP(ctx context.Context, inpath string) (*CommPRet, error) // ClientGenCar generates a CAR file for the specified file. ClientGenCar(ctx context.Context, ref FileRef, outpath string) error // ClientDealSize calculates real deal data size ClientDealSize(ctx context.Context, root cid.Cid) (DataSize, error) // ClientListTransfers returns the status of all ongoing transfers of data ClientListDataTransfers(ctx context.Context) ([]DataTransferChannel, error) ClientDataTransferUpdates(ctx context.Context) (<-chan DataTransferChannel, error) // ClientRestartDataTransfer attempts to restart a data transfer with the given transfer ID and other peer ClientRestartDataTransfer(ctx context.Context, transferID datatransfer.TransferID, otherPeer peer.ID, isInitiator bool) error // ClientCancelDataTransfer cancels a data transfer with the given transfer ID and other peer ClientCancelDataTransfer(ctx context.Context, transferID datatransfer.TransferID, otherPeer peer.ID, isInitiator bool) error // ClientRetrieveTryRestartInsufficientFunds attempts to restart stalled retrievals on a given payment channel // which are stuck due to insufficient funds ClientRetrieveTryRestartInsufficientFunds(ctx context.Context, paymentChannel address.Address) error // ClientRetrieveGetDeal return retrieve deal state ClientRetrieveGetDeal(ctx context.Context, dealID retrievalmarket.DealID) (*RetrievalDeal, error) // ClientRetrieveListDeals list retrieve deals ClientRetrieveListDeals(ctx context.Context) (map[retrievalmarket.DealID]*RetrievalDeal, error) // ClientListImports lists imported files and their root CIDs ClientListImports(ctx context.Context) ([]Import, error) // ClientExport exports a file stored in the local filestore to a system file ClientExport(ctx context.Context, exportRef ExportRef, fileRef FileRef) error //perm:admin // ClientRemove removes file storage from system, returns message cid. ClientRemove(ctx context.Context, root cid.Cid, wallet address.Address) (cid.Cid, error) // ClientRetrieveQuery query file status by file root or retrieve id ClientRetrieveQuery(ctx context.Context, wallet address.Address, root cid.Cid, piece *cid.Cid, miner address.Address) (*RetrievalDeal, error) // ClientRetrievePledge retrieval pledge amount ClientRetrievePledge(ctx context.Context, wallet address.Address, target address.Address, miners []address.Address, amount abi.TokenAmount) (cid.Cid, error) // ClientRetrieveBind retrieval bind miners, if reverse, unbind the miners ClientRetrieveBind(ctx context.Context, wallet address.Address, miners []address.Address, reverse bool) (cid.Cid, error) // ClientRetrieveApplyForWithdraw apply for withdraw ClientRetrieveApplyForWithdraw(ctx context.Context, wallet address.Address, target address.Address, amount abi.TokenAmount) (cid.Cid, error) // ClientRetrieveWithdraw withdraw ClientRetrieveWithdraw(ctx context.Context, wallet address.Address, amount abi.TokenAmount) (cid.Cid, error) // ClientExpertNominate nominate expert ClientExpertNominate(ctx context.Context, wallet address.Address, expert address.Address) (cid.Cid, error) // StateCall runs the given message and returns its result without any persisted changes. // // StateCall applies the message to the tipset's parent state. The // message is not applied on-top-of the messages in the passed-in // tipset. StateCall(context.Context, *types.Message, types.TipSetKey) (*InvocResult, error) // StateReplay replays a given message, assuming it was included in a block in the specified tipset. // If no tipset key is provided, the appropriate tipset is looked up. StateReplay(context.Context, types.TipSetKey, cid.Cid) (*InvocResult, error) // StateBlockReward returns block's reward detail. StateBlockReward(ctx context.Context, bid cid.Cid, tsk types.TipSetKey) (*BlockReward, error) // StateGetActor returns the indicated actor's nonce and balance. StateGetActor(ctx context.Context, actor address.Address, tsk types.TipSetKey) (*types.Actor, error) // StateReadState returns the indicated actor's state. StateReadState(ctx context.Context, actor address.Address, tsk types.TipSetKey) (*ActorState, error) // StateListMessages looks back and returns all messages with a matching to or from address, stopping at the given height. StateListMessages(ctx context.Context, match *MessageMatch, tsk types.TipSetKey, toht abi.ChainEpoch) ([]cid.Cid, error) // StateDecodeParams attempts to decode the provided params, based on the recipient actor address and method number. StateDecodeParams(ctx context.Context, toAddr address.Address, method abi.MethodNum, params []byte, tsk types.TipSetKey) (interface{}, error) // StateNetworkName returns the name of the network the node is synced to StateNetworkName(context.Context) (dtypes.NetworkName, error) // StateMinerSectors returns info about the given miner's sectors. If the filter bitfield is nil, all sectors are included. StateMinerSectors(context.Context, address.Address, *bitfield.BitField, types.TipSetKey) ([]*miner.SectorOnChainInfo, error) // StateMinerActiveSectors returns info about sectors that a given miner is actively proving. StateMinerActiveSectors(context.Context, address.Address, types.TipSetKey) ([]*miner.SectorOnChainInfo, error) // StateMinerProvingDeadline calculates the deadline at some epoch for a proving period // and returns the deadline-related calculations. StateMinerProvingDeadline(context.Context, address.Address, types.TipSetKey) (*dline.Info, error) // StateMinerPower returns the power of the indicated miner StateMinerPower(context.Context, address.Address, types.TipSetKey) (*MinerPower, error) // StateMinerInfo returns info about the indicated miner StateMinerInfo(context.Context, address.Address, types.TipSetKey) (miner.MinerInfo, error) // StateMinerDeadlines returns all the proving deadlines for the given miner StateMinerDeadlines(context.Context, address.Address, types.TipSetKey) ([]Deadline, error) // StateMinerPartitions returns all partitions in the specified deadline StateMinerPartitions(ctx context.Context, m address.Address, dlIdx uint64, tsk types.TipSetKey) ([]Partition, error) // StateMinerFaults returns a bitfield indicating the faulty sectors of the given miner StateMinerFaults(context.Context, address.Address, types.TipSetKey) (bitfield.BitField, error) // StateMinerActives returns a bitfield indicating the active sectors of the given miner StateMinerActives(context.Context, address.Address, types.TipSetKey) (bitfield.BitField, error) // StateAllMinerFaults returns all non-expired Faults that occur within lookback epochs of the given tipset StateAllMinerFaults(ctx context.Context, lookback abi.ChainEpoch, ts types.TipSetKey) ([]*Fault, error) // StateMinerRecoveries returns a bitfield indicating the recovering sectors of the given miner StateMinerRecoveries(context.Context, address.Address, types.TipSetKey) (bitfield.BitField, error) /* // StateMinerInitialPledgeCollateral returns the precommit deposit for the specified miner's sector StateMinerPreCommitDepositForPower(context.Context, address.Address, miner.SectorPreCommitInfo, types.TipSetKey) (types.BigInt, error) // StateMinerInitialPledgeCollateral returns the initial pledge collateral for the specified miner's sector StateMinerInitialPledgeCollateral(context.Context, address.Address, miner.SectorPreCommitInfo, types.TipSetKey) (types.BigInt, error) */ // StateCoinbase returns the portion of a miner's balance that can be withdrawn or spent StateCoinbase(context.Context, address.Address, types.TipSetKey) (*vesting.CoinbaseInfo, error) // StateMinerFunds returns the total pledge collateral for mining StateMinerFunds(context.Context, address.Address, types.TipSetKey) (miner.Funds, error) // StateMinerSectorAllocated checks if a sector is allocated StateMinerSectorAllocated(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (bool, error) // StateSectorPreCommitInfo returns the PreCommit info for the specified miner's sector StateSectorPreCommitInfo(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (miner.SectorPreCommitOnChainInfo, error) // StateSectorGetInfo returns the on-chain info for the specified miner's sector. Returns null in case the sector info isn't found // NOTE: returned info.Expiration may not be accurate in some cases, use StateSectorExpiration to get accurate // expiration epoch StateSectorGetInfo(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (*miner.SectorOnChainInfo, error) // StateSectorExpiration returns epoch at which given sector will expire StateSectorExpiration(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (*miner.SectorExpiration, error) // StateSectorPartition finds deadline/partition with the specified sector StateSectorPartition(ctx context.Context, maddr address.Address, sectorNumber abi.SectorNumber, tok types.TipSetKey) (*miner.SectorLocation, error) // StateSearchMsg searches for a message in the chain, and returns its receipt and the tipset where it was executed StateSearchMsg(context.Context, cid.Cid) (*MsgLookup, error) // StateSearchMsgLimited looks back up to limit epochs in the chain for a message, and returns its receipt and the tipset where it was executed StateSearchMsgLimited(ctx context.Context, msg cid.Cid, limit abi.ChainEpoch) (*MsgLookup, error) // StateWaitMsg looks back in the chain for a message. If not found, it blocks until the // message arrives on chain, and gets to the indicated confidence depth. StateWaitMsg(ctx context.Context, cid cid.Cid, confidence uint64) (*MsgLookup, error) // StateWaitMsgLimited looks back up to limit epochs in the chain for a message. // If not found, it blocks until the message arrives on chain, and gets to the // indicated confidence depth. StateWaitMsgLimited(ctx context.Context, cid cid.Cid, confidence uint64, limit abi.ChainEpoch) (*MsgLookup, error) // StateListMiners returns the addresses of every miner that has claimed power in the Power Actor StateListMiners(context.Context, types.TipSetKey) ([]address.Address, error) // StateListActors returns the addresses of every actor in the state StateListActors(context.Context, types.TipSetKey) ([]address.Address, error) // // StateMarketBalance looks up the Escrow and Locked balances of the given address in the Storage Market // StateMarketBalance(context.Context, address.Address, types.TipSetKey) (MarketBalance, error) // // StateMarketParticipants returns the Escrow and Locked balances of every participant in the Storage Market // StateMarketParticipants(context.Context, types.TipSetKey) (map[string]MarketBalance, error) // StateMarketDeals returns information about every deal in the Storage Market StateMarketDeals(context.Context, types.TipSetKey) (map[string]MarketDeal, error) // StateMarketStorageDeal returns information about the indicated deal StateMarketStorageDeal(context.Context, abi.DealID, types.TipSetKey) (*MarketDeal, error) // StateMarketRemainingQuota returns remaining quota of piece StateMarketRemainingQuota(context.Context, cid.Cid, types.TipSetKey) (int64, error) // StateLookupID retrieves the ID address of the given address StateLookupID(context.Context, address.Address, types.TipSetKey) (address.Address, error) // StateAccountKey returns the public key address of the given ID address StateAccountKey(context.Context, address.Address, types.TipSetKey) (address.Address, error) // StateChangedActors returns all the actors whose states change between the two given state CIDs // TODO: Should this take tipset keys instead? StateChangedActors(context.Context, cid.Cid, cid.Cid) (map[string]types.Actor, error) // StateGetReceipt returns the message receipt for the given message StateGetReceipt(context.Context, cid.Cid, types.TipSetKey) (*types.MessageReceipt, error) // StateMinerSectorCount returns the number of sectors in a miner's sector set and proving set StateMinerSectorCount(context.Context, address.Address, types.TipSetKey) (MinerSectors, error) // StateCompute is a flexible command that applies the given messages on the given tipset. // The messages are run as though the VM were at the provided height. StateCompute(context.Context, abi.ChainEpoch, []*types.Message, types.TipSetKey) (*ComputeStateOutput, error) StateTotalMinedDetail(ctx context.Context, tsk types.TipSetKey) (*reward.TotalMinedDetail, error) // StateCirculatingSupply returns the exact circulating supply of EPK at the given tipset. // This is not used anywhere in the protocol itself, and is only for external consumption. StateCirculatingSupply(context.Context, types.TipSetKey) (abi.TokenAmount, error) // StateVMCirculatingSupplyInternal returns an approximation of the circulating supply of EPK at the given tipset. // This is the value reported by the runtime interface to actors code. StateVMCirculatingSupplyInternal(context.Context, types.TipSetKey) (CirculatingSupply, error) // StateNetworkVersion returns the network version at the given tipset StateNetworkVersion(context.Context, types.TipSetKey) (network.Version, error) // StateListExperts returns the addresses of every expert. StateListExperts(context.Context, types.TipSetKey) ([]address.Address, error) // StateExpertInfo returns info about the indicated expert. StateExpertInfo(context.Context, address.Address, types.TipSetKey) (*ExpertInfo, error) // StateExpertInfo lists expert's data StateExpertDatas(context.Context, address.Address, *bitfield.BitField, bool, types.TipSetKey) ([]*expert.DataOnChainInfo, error) // StateExpertFileInfo returns expert's file StateExpertFileInfo(context.Context, cid.Cid, types.TipSetKey) (*ExpertFileInfo, error) // StateVoteTally returns voting result at given tipset StateVoteTally(context.Context, types.TipSetKey) (*vote.Tally, error) // StateVoterInfo returns voter info at given tipset StateVoterInfo(context.Context, address.Address, types.TipSetKey) (*vote.VoterInfo, error) // StateKnowledgeInfo returns knowledge fund info at given tipset StateKnowledgeInfo(context.Context, types.TipSetKey) (*knowledge.Info, error) // StateGovernSupervisor returns authorities of given governor StateGovernSupervisor(context.Context, types.TipSetKey) (address.Address, error) // StateGovernorList returns all governors StateGovernorList(context.Context, types.TipSetKey) ([]*govern.GovernorInfo, error) StateGovernParams(context.Context, types.TipSetKey) (*govern.GovParams, error) // StateRetrievalInfo retrieval pledge info StateRetrievalInfo(context.Context, types.TipSetKey) (*RetrievalInfo, error) // StateRetrievalPledge retrieval pledge state StateRetrievalPledge(context.Context, address.Address, types.TipSetKey) (*RetrievalState, error) // StateRetrievalPledge retrieval from address StateRetrievalPledgeFrom(context.Context, address.Address, types.TipSetKey) (*RetrievalPledgeInfo, error) // StateRetrievalPledgeList retrieval pledge list StateRetrievalPledgeList(context.Context, types.TipSetKey) (map[address.Address]*RetrievalState, error) // StateDataIndex data index StateDataIndex(context.Context, abi.ChainEpoch, types.TipSetKey) ([]*DataIndex, error) // StateMinerStoredAnyPiece check miner has storage the data by pieceIDs StateMinerStoredAnyPiece(context.Context, address.Address, []cid.Cid, types.TipSetKey) (bool, error) // MsigGetAvailableBalance returns the portion of a multisig's balance that can be withdrawn or spent MsigGetAvailableBalance(context.Context, address.Address, types.TipSetKey) (types.BigInt, error) // MsigGetVestingSchedule returns the vesting details of a given multisig. MsigGetVestingSchedule(context.Context, address.Address, types.TipSetKey) (MsigVesting, error) // MsigGetVested returns the amount of EPK that vested in a multisig in a certain period. // It takes the following params: <multisig address>, <start epoch>, <end epoch> MsigGetVested(context.Context, address.Address, types.TipSetKey, types.TipSetKey) (types.BigInt, error) //MsigGetPending returns pending transactions for the given multisig //wallet. Once pending transactions are fully approved, they will no longer //appear here. MsigGetPending(context.Context, address.Address, types.TipSetKey) ([]*MsigTransaction, error) // MsigCreate creates a multisig wallet // It takes the following params: <required number of senders>, <approving addresses>, <unlock duration> //<initial balance>, <sender address of the create msg>, <gas price> MsigCreate(context.Context, uint64, []address.Address, abi.ChainEpoch, types.BigInt, address.Address, types.BigInt) (cid.Cid, error) // MsigPropose proposes a multisig message // It takes the following params: <multisig address>, <recipient address>, <value to transfer>, // <sender address of the propose msg>, <method to call in the proposed message>, <params to include in the proposed message> MsigPropose(context.Context, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) // MsigApprove approves a previously-proposed multisig message by transaction ID // It takes the following params: <multisig address>, <proposed transaction ID> <signer address> MsigApprove(context.Context, address.Address, uint64, address.Address) (cid.Cid, error) // MsigApproveTxnHash approves a previously-proposed multisig message, specified // using both transaction ID and a hash of the parameters used in the // proposal. This method of approval can be used to ensure you only approve // exactly the transaction you think you are. // It takes the following params: <multisig address>, <proposed message ID>, <proposer address>, <recipient address>, <value to transfer>, // <sender address of the approve msg>, <method to call in the proposed message>, <params to include in the proposed message> MsigApproveTxnHash(context.Context, address.Address, uint64, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) // MsigCancel cancels a previously-proposed multisig message // It takes the following params: <multisig address>, <proposed transaction ID>, <recipient address>, <value to transfer>, // <sender address of the cancel msg>, <method to call in the proposed message>, <params to include in the proposed message> MsigCancel(context.Context, address.Address, uint64, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) // MsigAddPropose proposes adding a signer in the multisig // It takes the following params: <multisig address>, <sender address of the propose msg>, // <new signer>, <whether the number of required signers should be increased> MsigAddPropose(context.Context, address.Address, address.Address, address.Address, bool) (cid.Cid, error) // MsigAddApprove approves a previously proposed AddSigner message // It takes the following params: <multisig address>, <sender address of the approve msg>, <proposed message ID>, // <proposer address>, <new signer>, <whether the number of required signers should be increased> MsigAddApprove(context.Context, address.Address, address.Address, uint64, address.Address, address.Address, bool) (cid.Cid, error) // MsigAddCancel cancels a previously proposed AddSigner message // It takes the following params: <multisig address>, <sender address of the cancel msg>, <proposed message ID>, // <new signer>, <whether the number of required signers should be increased> MsigAddCancel(context.Context, address.Address, address.Address, uint64, address.Address, bool) (cid.Cid, error) // MsigSwapPropose proposes swapping 2 signers in the multisig // It takes the following params: <multisig address>, <sender address of the propose msg>, // <old signer>, <new signer> MsigSwapPropose(context.Context, address.Address, address.Address, address.Address, address.Address) (cid.Cid, error) // MsigSwapApprove approves a previously proposed SwapSigner // It takes the following params: <multisig address>, <sender address of the approve msg>, <proposed message ID>, // <proposer address>, <old signer>, <new signer> MsigSwapApprove(context.Context, address.Address, address.Address, uint64, address.Address, address.Address, address.Address) (cid.Cid, error) // MsigSwapCancel cancels a previously proposed SwapSigner message // It takes the following params: <multisig address>, <sender address of the cancel msg>, <proposed message ID>, // <old signer>, <new signer> MsigSwapCancel(context.Context, address.Address, address.Address, uint64, address.Address, address.Address) (cid.Cid, error) // MsigRemoveSigner proposes the removal of a signer from the multisig. // It accepts the multisig to make the change on, the proposer address to // send the message from, the address to be removed, and a boolean // indicating whether or not the signing threshold should be lowered by one // along with the address removal. MsigRemoveSigner(ctx context.Context, msig address.Address, proposer address.Address, toRemove address.Address, decrease bool) (cid.Cid, error) }
FullNode API is a low-level interface to the EpiK network full node
type HeadChange ¶
type ImportAndDealParams ¶
type ImportAndDealParams struct { Ref FileRef From address.Address Expert address.Address Miner address.Address }
type InvocResult ¶
type InvocResult struct { MsgCid cid.Cid Msg *types.Message MsgRct *types.MessageReceipt GasCost MsgGasCost ExecutionTrace types.ExecutionTrace Error string Duration time.Duration }
type IpldObject ¶
type IpldObject struct { Cid cid.Cid Obj interface{} }
type MarketDeal ¶
type MarketDeal struct { Proposal market.DealProposal State market.DealState }
type MessageMatch ¶
type MessageMatch struct { To address.Address From address.Address }
type MessageSendSpec ¶
type MessageSendSpec struct {
MaxFee abi.TokenAmount
}
type MethodCall ¶
type MethodCall struct { types.MessageReceipt Error string }
type MinerPower ¶
type MinerSectors ¶
type MiningBaseInfo ¶
type MiningBaseInfo struct { MinerPower types.BigInt NetworkPower types.BigInt Sectors []builtin.SectorInfo WorkerKey address.Address SectorSize abi.SectorSize PrevBeaconEntry types.BeaconEntry BeaconEntries []types.BeaconEntry EligibleForMining bool }
type MpoolUpdate ¶
type MpoolUpdate struct { Type MpoolChange Message *types.SignedMessage }
type MsgGasCost ¶
type MsgGasCost struct { Message cid.Cid // Can be different than requested, in case it was replaced, but only gas values changed GasUsed abi.TokenAmount BaseFeeBurn abi.TokenAmount OverEstimationBurn abi.TokenAmount MinerPenalty abi.TokenAmount MinerTip abi.TokenAmount Refund abi.TokenAmount TotalCost abi.TokenAmount }
type MsgLookup ¶
type MsgLookup struct { Message cid.Cid // Can be different than requested, in case it was replaced, but only gas values changed Receipt types.MessageReceipt ReturnDec interface{} TipSet types.TipSetKey Height abi.ChainEpoch }
type MsigProposeResponse ¶
type MsigProposeResponse int
const ( MsigApprove MsigProposeResponse = iota MsigCancel )
type MsigTransaction ¶
type MsigVesting ¶
type MsigVesting struct { InitialBalance abi.TokenAmount StartEpoch abi.ChainEpoch UnlockDuration abi.ChainEpoch }
type MultiaddrSlice ¶
func (*MultiaddrSlice) UnmarshalJSON ¶
func (m *MultiaddrSlice) UnmarshalJSON(raw []byte) (err error)
type NatInfo ¶
type NatInfo struct { Reachability network.Reachability PublicAddr string }
type NetBlockList ¶
type Partition ¶
type Partition struct { AllSectors bitfield.BitField FaultySectors bitfield.BitField RecoveringSectors bitfield.BitField LiveSectors bitfield.BitField ActiveSectors bitfield.BitField }
type PaychStatus ¶
type PaychStatus struct { ControlAddr address.Address Direction PCHDir }
type PaymentInfo ¶
type PaymentInfo struct { Channel address.Address WaitSentinel cid.Cid Vouchers []*paych.SignedVoucher }
type PubsubScore ¶
type PubsubScore struct { ID peer.ID Score *pubsub.PeerScoreSnapshot }
type QueryOffer ¶
type QueryOffer struct { Err string Root cid.Cid Piece *cid.Cid Size uint64 MinPrice types.BigInt UnsealPrice types.BigInt PaymentInterval uint64 PaymentIntervalIncrease uint64 Miner address.Address MinerPeer retrievalmarket.RetrievalPeer }
func (*QueryOffer) Order ¶
func (o *QueryOffer) Order(client address.Address) RetrievalOrder
type RetrievalDeal ¶
type RetrievalDeal struct { DealID retrievalmarket.DealID RootCID cid.Cid PieceCID *cid.Cid ClientWallet address.Address MinerWallet address.Address Miner address.Address Status retrievalmarket.DealStatus Message string WaitMsgCID *cid.Cid // the CID of any message the client deal is waiting for }
type RetrievalInfo ¶
type RetrievalInfo struct { TotalPledge abi.TokenAmount TotalReward abi.TokenAmount PendingReward abi.TokenAmount }
type RetrievalOrder ¶
type RetrievalOrder struct { // TODO: make this less unixfs specific Root cid.Cid Piece *cid.Cid Size uint64 // TODO: support offset Total types.BigInt UnsealPrice types.BigInt PaymentInterval uint64 PaymentIntervalIncrease uint64 Client address.Address Miner address.Address MinerPeer retrievalmarket.RetrievalPeer }
type RetrievalPledgeInfo ¶
type RetrievalPledgeInfo struct { Pledges map[string]abi.TokenAmount Locked abi.TokenAmount UnlockedEpoch abi.ChainEpoch }
type RetrievalState ¶
type RetrievalState struct { BindMiners []address.Address Balance abi.TokenAmount DayExpend abi.TokenAmount }
type StartDealParams ¶
type StartDealParams struct { Data *storagemarket.DataRef Wallet address.Address Miner address.Address /* EpochPrice types.BigInt MinBlocksDuration uint64 ProviderCollateral big.Int */ DealStartEpoch abi.ChainEpoch FastRetrieval bool }
func (*StartDealParams) UnmarshalJSON ¶
func (s *StartDealParams) UnmarshalJSON(raw []byte) (err error)
type SyncState ¶
type SyncState struct { ActiveSyncs []ActiveSync VMApplied uint64 }
type SyncStateStage ¶
type SyncStateStage int
func (SyncStateStage) String ¶
func (v SyncStateStage) String() string
type Version ¶
type Version uint32
func VersionForType ¶
func (Version) EqMajorMinor ¶
type VoucherCreateResult ¶
type VoucherCreateResult struct { // Voucher that was created, or nil if there was an error or if there // were insufficient funds in the channel Voucher *paych.SignedVoucher // Shortfall is the additional amount that would be needed in the channel // in order to be able to create the voucher Shortfall types.BigInt }
VoucherCreateResult is the response to calling PaychVoucherCreate
type VoucherSpec ¶
type VoucherSpec struct { Amount types.BigInt TimeLockMin abi.ChainEpoch TimeLockMax abi.ChainEpoch MinSettle abi.ChainEpoch Extra *paych.ModVerifyParams }
Click to show internal directories.
Click to hide internal directories.