Documentation ¶
Index ¶
- Constants
- func SignWith(ctx context.Context, signer Signer, addr address.Address, signable ...Signable) error
- type ActiveSync
- type ActorState
- type BlockMessages
- type BlockTemplate
- type ChainSectorInfo
- type ChannelInfo
- type CommPRet
- type Common
- type ComputeStateOutput
- type DealInfo
- type Fault
- type FileRef
- type FullNode
- type HeadChange
- type Import
- type InvocResult
- type IpldObject
- type MarketBalance
- type MarketDeal
- type Message
- type MethodCall
- type MinerPower
- type MinerSectors
- type MiningBaseInfo
- type MpoolChange
- type MpoolUpdate
- type MsgLookup
- type MsigProposeResponse
- type MultiaddrSlice
- type ObjStat
- type PCHDir
- type PaychStatus
- type PaymentInfo
- type PubsubScore
- type QueryOffer
- type RetrievalOrder
- type SealRes
- type SealSeed
- type SealTicket
- type SealedRef
- type SealedRefs
- type SectorInfo
- type SectorLog
- type SectorState
- type SignFunc
- type Signable
- type Signer
- type StartDealParams
- type StorageMiner
- type SyncState
- type SyncStateStage
- type Version
- type VoucherSpec
- type WorkerAPI
Constants ¶
View Source
const ( StageIdle = SyncStateStage(iota) StageHeaders StagePersistHeaders StageMessages StageSyncComplete StageSyncErrored )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ActiveSync ¶
type ActorState ¶
type BlockMessages ¶
type BlockMessages struct { BlsMessages []*types.Message SecpkMessages []*types.SignedMessage Cids []cid.Cid }
type BlockTemplate ¶ added in v0.3.0
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 []abi.PoStProof }
type ChainSectorInfo ¶
type ChainSectorInfo struct { Info miner.SectorOnChainInfo ID abi.SectorNumber }
type ChannelInfo ¶
type ChannelInfo struct { Channel address.Address ChannelMessage cid.Cid }
type CommPRet ¶ added in v0.3.0
type CommPRet struct { Root cid.Cid Size abi.UnpaddedPieceSize }
type Common ¶
type Common interface { // Auth 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) // ID returns peerID of libp2p node backing this API ID(context.Context) (peer.ID, error) // Version provides information about API provider Version(context.Context) (Version, error) LogList(context.Context) ([]string, error) LogSetLevel(context.Context, string, string) error }
type ComputeStateOutput ¶ added in v0.3.0
type ComputeStateOutput struct { Root cid.Cid Trace []*InvocResult }
type DealInfo ¶
type DealInfo struct { ProposalCid cid.Cid State storagemarket.StorageDealStatus Message string // more information about deal state, particularly errors Provider address.Address PieceCID cid.Cid Size uint64 PricePerEpoch types.BigInt Duration uint64 DealID abi.DealID }
type Fault ¶ added in v0.3.1
type Fault struct { Miner address.Address Epoch abi.ChainEpoch }
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) // ChainGetRandomness is used to sample the chain for randomness ChainGetRandomness(ctx context.Context, tsk types.TipSetKey, personalization crypto.DomainSeparationTag, randEpoch abi.ChainEpoch, entropy []byte) (abi.Randomness, error) // ChainGetBlock returns the block specified by the given CID ChainGetBlock(context.Context, cid.Cid) (*types.BlockHeader, error) ChainGetTipSet(context.Context, types.TipSetKey) (*types.TipSet, error) ChainGetBlockMessages(context.Context, cid.Cid) (*BlockMessages, error) ChainGetParentReceipts(context.Context, cid.Cid) ([]*types.MessageReceipt, error) ChainGetParentMessages(context.Context, cid.Cid) ([]Message, error) ChainGetTipSetByHeight(context.Context, abi.ChainEpoch, types.TipSetKey) (*types.TipSet, error) ChainReadObj(context.Context, cid.Cid) ([]byte, error) ChainHasObj(context.Context, cid.Cid) (bool, error) ChainStatObj(context.Context, cid.Cid, cid.Cid) (ObjStat, error) ChainSetHead(context.Context, types.TipSetKey) error ChainGetGenesis(context.Context) (*types.TipSet, error) ChainTipSetWeight(context.Context, types.TipSetKey) (types.BigInt, error) ChainGetNode(ctx context.Context, p string) (*IpldObject, error) ChainGetMessage(context.Context, cid.Cid) (*types.Message, error) ChainGetPath(ctx context.Context, from types.TipSetKey, to types.TipSetKey) ([]*HeadChange, error) ChainExport(context.Context, types.TipSetKey) (<-chan []byte, error) // SyncState returns the current status of the lotus 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(ctx context.Context) (<-chan *types.BlockHeader, error) SyncMarkBad(ctx context.Context, bcid cid.Cid) error SyncCheckBad(ctx context.Context, bcid cid.Cid) (string, error) MpoolPending(context.Context, types.TipSetKey) ([]*types.SignedMessage, error) MpoolPush(context.Context, *types.SignedMessage) (cid.Cid, error) MpoolPushMessage(context.Context, *types.Message) (*types.SignedMessage, error) // get nonce, sign, push MpoolGetNonce(context.Context, address.Address) (uint64, error) MpoolSub(context.Context) (<-chan MpoolUpdate, error) MpoolEstimateGasPrice(context.Context, uint64, address.Address, int64, types.TipSetKey) (types.BigInt, error) MinerGetBaseInfo(context.Context, address.Address, abi.ChainEpoch, types.TipSetKey) (*MiningBaseInfo, error) MinerCreateBlock(context.Context, *BlockTemplate) (*types.BlockMsg, error) WalletNew(context.Context, crypto.SigType) (address.Address, error) WalletHas(context.Context, address.Address) (bool, error) WalletList(context.Context) ([]address.Address, error) WalletBalance(context.Context, address.Address) (types.BigInt, error) WalletSign(context.Context, address.Address, []byte) (*crypto.Signature, error) WalletSignMessage(context.Context, address.Address, *types.Message) (*types.SignedMessage, error) WalletVerify(context.Context, address.Address, []byte, *crypto.Signature) bool WalletDefaultAddress(context.Context) (address.Address, error) WalletSetDefault(context.Context, address.Address) error WalletExport(context.Context, address.Address) (*types.KeyInfo, error) WalletImport(context.Context, *types.KeyInfo) (address.Address, error) // ClientImport imports file under the specified path into filestore ClientImport(ctx context.Context, ref FileRef) (cid.Cid, error) // ClientStartDeal proposes a deal with a miner ClientStartDeal(ctx context.Context, params *StartDealParams) (*cid.Cid, error) // ClientGetDeal info returns the latest information about a given deal ClientGetDealInfo(context.Context, cid.Cid) (*DealInfo, error) ClientListDeals(ctx context.Context) ([]DealInfo, error) ClientHasLocal(ctx context.Context, root cid.Cid) (bool, error) ClientFindData(ctx context.Context, root cid.Cid) ([]QueryOffer, error) ClientRetrieve(ctx context.Context, order RetrievalOrder, ref *FileRef) error ClientQueryAsk(ctx context.Context, p peer.ID, miner address.Address) (*storagemarket.SignedStorageAsk, error) ClientCalcCommP(ctx context.Context, inpath string, miner address.Address) (*CommPRet, error) ClientGenCar(ctx context.Context, ref FileRef, outpath string) error // ClientListImports lists imported files and their root CIDs ClientListImports(ctx context.Context) ([]Import, error) // if tipset is nil, we'll use heaviest StateCall(context.Context, *types.Message, types.TipSetKey) (*InvocResult, error) StateReplay(context.Context, types.TipSetKey, cid.Cid) (*InvocResult, error) StateGetActor(ctx context.Context, actor address.Address, tsk types.TipSetKey) (*types.Actor, error) StateReadState(ctx context.Context, act *types.Actor, tsk types.TipSetKey) (*ActorState, error) StateListMessages(ctx context.Context, match *types.Message, tsk types.TipSetKey, toht abi.ChainEpoch) ([]cid.Cid, error) StateNetworkName(context.Context) (dtypes.NetworkName, error) StateMinerSectors(context.Context, address.Address, *abi.BitField, bool, types.TipSetKey) ([]*ChainSectorInfo, error) StateMinerProvingSet(context.Context, address.Address, types.TipSetKey) ([]*ChainSectorInfo, error) StateMinerProvingDeadline(context.Context, address.Address, types.TipSetKey) (*miner.DeadlineInfo, error) StateMinerPower(context.Context, address.Address, types.TipSetKey) (*MinerPower, error) StateMinerInfo(context.Context, address.Address, types.TipSetKey) (miner.MinerInfo, error) StateMinerDeadlines(context.Context, address.Address, types.TipSetKey) (*miner.Deadlines, error) StateMinerFaults(context.Context, address.Address, types.TipSetKey) (*abi.BitField, error) // 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(context.Context, address.Address, types.TipSetKey) (*abi.BitField, error) StateMinerInitialPledgeCollateral(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (types.BigInt, error) StateMinerAvailableBalance(context.Context, address.Address, types.TipSetKey) (types.BigInt, error) StateSectorPreCommitInfo(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (miner.SectorPreCommitOnChainInfo, error) StateSectorGetInfo(context.Context, address.Address, abi.SectorNumber, types.TipSetKey) (*miner.SectorOnChainInfo, error) StatePledgeCollateral(context.Context, types.TipSetKey) (types.BigInt, error) StateWaitMsg(ctx context.Context, cid cid.Cid, confidence uint64) (*MsgLookup, error) StateSearchMsg(context.Context, cid.Cid) (*MsgLookup, error) StateListMiners(context.Context, types.TipSetKey) ([]address.Address, error) StateListActors(context.Context, types.TipSetKey) ([]address.Address, error) StateMarketBalance(context.Context, address.Address, types.TipSetKey) (MarketBalance, error) StateMarketParticipants(context.Context, types.TipSetKey) (map[string]MarketBalance, error) StateMarketDeals(context.Context, types.TipSetKey) (map[string]MarketDeal, error) StateMarketStorageDeal(context.Context, abi.DealID, types.TipSetKey) (*MarketDeal, error) StateLookupID(context.Context, address.Address, types.TipSetKey) (address.Address, error) StateAccountKey(context.Context, address.Address, types.TipSetKey) (address.Address, error) StateChangedActors(context.Context, cid.Cid, cid.Cid) (map[string]types.Actor, error) StateGetReceipt(context.Context, cid.Cid, types.TipSetKey) (*types.MessageReceipt, error) StateMinerSectorCount(context.Context, address.Address, types.TipSetKey) (MinerSectors, error) StateCompute(context.Context, abi.ChainEpoch, []*types.Message, types.TipSetKey) (*ComputeStateOutput, error) MsigGetAvailableBalance(context.Context, address.Address, types.TipSetKey) (types.BigInt, error) MsigCreate(context.Context, int64, []address.Address, types.BigInt, address.Address, types.BigInt) (cid.Cid, error) MsigPropose(context.Context, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) MsigApprove(context.Context, address.Address, uint64, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) MsigCancel(context.Context, address.Address, uint64, address.Address, address.Address, types.BigInt, address.Address, uint64, []byte) (cid.Cid, error) MarketEnsureAvailable(context.Context, address.Address, address.Address, types.BigInt) (cid.Cid, error) PaychGet(ctx context.Context, from, to address.Address, ensureFunds types.BigInt) (*ChannelInfo, error) PaychList(context.Context) ([]address.Address, error) PaychStatus(context.Context, address.Address) (*PaychStatus, error) PaychClose(context.Context, address.Address) (cid.Cid, error) PaychAllocateLane(ctx context.Context, ch address.Address) (uint64, error) PaychNewPayment(ctx context.Context, from, to address.Address, vouchers []VoucherSpec) (*PaymentInfo, error) PaychVoucherCheckValid(context.Context, address.Address, *paych.SignedVoucher) error PaychVoucherCheckSpendable(context.Context, address.Address, *paych.SignedVoucher, []byte, []byte) (bool, error) PaychVoucherCreate(context.Context, address.Address, types.BigInt, uint64) (*paych.SignedVoucher, error) PaychVoucherAdd(context.Context, address.Address, *paych.SignedVoucher, []byte, types.BigInt) (types.BigInt, error) PaychVoucherList(context.Context, address.Address) ([]*paych.SignedVoucher, error) PaychVoucherSubmit(context.Context, address.Address, *paych.SignedVoucher) (cid.Cid, error) }
FullNode API is a low-level interface to the Filecoin network full node
type HeadChange ¶ added in v0.3.0
type InvocResult ¶ added in v0.3.0
type InvocResult struct { Msg *types.Message MsgRct *types.MessageReceipt InternalExecutions []*types.ExecutionResult Error string Duration time.Duration }
type IpldObject ¶ added in v0.3.0
type IpldObject struct { Cid cid.Cid Obj interface{} }
type MarketDeal ¶ added in v0.3.0
type MarketDeal struct { Proposal market.DealProposal State market.DealState }
type MethodCall ¶ added in v0.2.6
type MethodCall struct { types.MessageReceipt Error string }
type MinerSectors ¶ added in v0.1.5
type MiningBaseInfo ¶ added in v0.3.0
type MiningBaseInfo struct { MinerPower types.BigInt NetworkPower types.BigInt Sectors []abi.SectorInfo WorkerKey address.Address SectorSize abi.SectorSize PrevBeaconEntry types.BeaconEntry BeaconEntries []types.BeaconEntry }
type MpoolUpdate ¶
type MpoolUpdate struct { Type MpoolChange Message *types.SignedMessage }
type MsgLookup ¶ added in v0.3.0
type MsgLookup struct { Receipt types.MessageReceipt TipSet *types.TipSet }
type MsigProposeResponse ¶ added in v0.3.0
type MsigProposeResponse int
const ( MsigApprove MsigProposeResponse = iota MsigCancel )
type MultiaddrSlice ¶
func (*MultiaddrSlice) UnmarshalJSON ¶
func (m *MultiaddrSlice) UnmarshalJSON(raw []byte) (err error)
type PaychStatus ¶
type PaychStatus struct { ControlAddr address.Address Direction PCHDir }
type PaymentInfo ¶
type PaymentInfo struct { Channel address.Address ChannelMessage *cid.Cid Vouchers []*paych.SignedVoucher }
func (*PaymentInfo) MarshalCBOR ¶
func (t *PaymentInfo) MarshalCBOR(w io.Writer) error
func (*PaymentInfo) UnmarshalCBOR ¶
func (t *PaymentInfo) UnmarshalCBOR(r io.Reader) error
type PubsubScore ¶ added in v0.3.1
type QueryOffer ¶
type QueryOffer struct { Err string Root cid.Cid Size uint64 MinPrice types.BigInt PaymentInterval uint64 PaymentIntervalIncrease uint64 Miner address.Address MinerPeerID peer.ID }
func (*QueryOffer) Order ¶
func (o *QueryOffer) Order(client address.Address) RetrievalOrder
type RetrievalOrder ¶
type SealSeed ¶ added in v0.3.0
type SealSeed struct { Value abi.InteractiveSealRandomness Epoch abi.ChainEpoch }
type SealTicket ¶ added in v0.3.0
type SealTicket struct { Value abi.SealRandomness Epoch abi.ChainEpoch }
func (*SealTicket) Equals ¶ added in v0.3.0
func (st *SealTicket) Equals(ost *SealTicket) bool
func (*SealTicket) MarshalCBOR ¶ added in v0.3.0
func (t *SealTicket) MarshalCBOR(w io.Writer) error
func (*SealTicket) UnmarshalCBOR ¶ added in v0.3.0
func (t *SealTicket) UnmarshalCBOR(r io.Reader) error
type SealedRef ¶
type SealedRef struct { SectorID abi.SectorNumber Offset uint64 Size abi.UnpaddedPieceSize }
type SealedRefs ¶
type SealedRefs struct {
Refs []SealedRef
}
func (*SealedRefs) MarshalCBOR ¶
func (t *SealedRefs) MarshalCBOR(w io.Writer) error
func (*SealedRefs) UnmarshalCBOR ¶
func (t *SealedRefs) UnmarshalCBOR(r io.Reader) error
type SectorInfo ¶
type SectorInfo struct { SectorID abi.SectorNumber State SectorState CommD *cid.Cid CommR *cid.Cid Proof []byte Deals []abi.DealID Ticket SealTicket Seed SealSeed Retries uint64 LastErr string Log []SectorLog }
type SectorState ¶
type SectorState string
type StartDealParams ¶ added in v0.3.0
type StartDealParams struct { Data *storagemarket.DataRef Wallet address.Address Miner address.Address EpochPrice types.BigInt MinBlocksDuration uint64 DealStartEpoch abi.ChainEpoch }
type StorageMiner ¶
type StorageMiner interface { Common ActorAddress(context.Context) (address.Address, error) ActorSectorSize(context.Context, address.Address) (abi.SectorSize, error) MiningBase(context.Context) (*types.TipSet, error) // Temp api for testing PledgeSector(context.Context) error // Get the status of a given sector by ID SectorsStatus(context.Context, abi.SectorNumber) (SectorInfo, error) // List all staged sectors SectorsList(context.Context) ([]abi.SectorNumber, error) SectorsRefs(context.Context) (map[string][]SealedRef, error) SectorsUpdate(context.Context, abi.SectorNumber, SectorState) error StorageList(ctx context.Context) (map[stores.ID][]stores.Decl, error) StorageLocal(ctx context.Context) (map[stores.ID]string, error) StorageStat(ctx context.Context, id stores.ID) (stores.FsStat, error) // WorkerConnect tells the node to connect to workers RPC WorkerConnect(context.Context, string) error WorkerStats(context.Context) (map[uint64]storiface.WorkerStats, error) stores.SectorIndex MarketImportDealData(ctx context.Context, propcid cid.Cid, path string) error MarketListDeals(ctx context.Context) ([]storagemarket.StorageDeal, error) MarketListIncompleteDeals(ctx context.Context) ([]storagemarket.MinerDeal, error) MarketSetPrice(context.Context, types.BigInt) error DealsImportData(ctx context.Context, dealPropCid cid.Cid, file string) error DealsList(ctx context.Context) ([]storagemarket.StorageDeal, error) StorageAddLocal(ctx context.Context, path string) error }
StorageMiner is a low-level interface to the Filecoin network storage miner node
type SyncState ¶
type SyncState struct {
ActiveSyncs []ActiveSync
}
type SyncStateStage ¶
type SyncStateStage int
type Version ¶
type Version struct { Version string // APIVersion is a binary encoded semver version of the remote implementing // this api // // See APIVersion in build/version.go APIVersion build.Version // Seconds BlockDelay uint64 }
Version provides various build-time information
type VoucherSpec ¶
type VoucherSpec struct { Amount types.BigInt TimeLockMin abi.ChainEpoch TimeLockMax abi.ChainEpoch MinSettle abi.ChainEpoch Extra *paych.ModVerifyParams }
type WorkerAPI ¶ added in v0.3.1
type WorkerAPI interface { Version(context.Context) (build.Version, error) TaskTypes(context.Context) (map[sealtasks.TaskType]struct{}, error) // TaskType -> Weight Paths(context.Context) ([]stores.StoragePath, error) Info(context.Context) (storiface.WorkerInfo, error) storage.Sealer UnsealPiece(context.Context, abi.SectorID, storiface.UnpaddedByteIndex, abi.UnpaddedPieceSize, abi.SealRandomness, cid.Cid) error ReadPiece(context.Context, io.Writer, abi.SectorID, storiface.UnpaddedByteIndex, abi.UnpaddedPieceSize) error Fetch(context.Context, abi.SectorID, stores.SectorFileType, bool, stores.AcquireMode) error Closing(context.Context) (<-chan struct{}, error) }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.