Versions in this module Expand all Collapse all v0 v0.0.2 Dec 15, 2025 v0.0.1 Nov 25, 2025 Changes in this version + const HeaderLen + const MT_ERROR_INVALID_HANDLE + const MT_ERROR_NOT_FOUND + const MT_ERROR_NO_LINK + const MT_ERROR_NO_PERMISSION + const MT_ERROR_TIMEOUT + const MT_ERROR_TOO_LARGE + const MT_ERROR_UNKNOWN + const MT_OK + func Abort(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle) error + func AddFrom(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func BeginTx(ctx context.Context, tp Asker, ep blobcache.Endpoint, volh blobcache.Handle, ...) (*blobcache.Handle, *blobcache.TxInfo, error) + func CloneVolume(ctx context.Context, tp Asker, ep blobcache.Endpoint, caller *blobcache.PeerID, ...) (*blobcache.Handle, error) + func Commit(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func CreateQueue(ctx context.Context, tp Asker, ep blobcache.Endpoint, ...) (*blobcache.Handle, error) + func CreateVolume(ctx context.Context, tp Asker, ep blobcache.Endpoint, ...) (*blobcache.Handle, error) + func Delete(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func Drop(ctx context.Context, tp Asker, ep blobcache.Endpoint, h blobcache.Handle) error + func Exists(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func Get(ctx context.Context, tp Asker, ep blobcache.Endpoint, txh blobcache.Handle, ...) (int, error) + func Insert(ctx context.Context, tp Asker, ep blobcache.Endpoint, from *blobcache.Endpoint, ...) (*blobcache.InsertResp, error) + func InspectHandle(ctx context.Context, tp Asker, ep blobcache.Endpoint, h blobcache.Handle) (*blobcache.HandleInfo, error) + func InspectTx(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle) (*blobcache.TxInfo, error) + func InspectVolume(ctx context.Context, tp Asker, ep blobcache.Endpoint, vol blobcache.Handle) (*blobcache.VolumeInfo, error) + func IsVisited(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func KeepAlive(ctx context.Context, tp Asker, ep blobcache.Endpoint, hs []blobcache.Handle) error + func Link(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func Load(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func Next(ctx context.Context, tp Asker, ep blobcache.Endpoint, qh blobcache.Handle, ...) (int, error) + func OpenFiat(ctx context.Context, tp Asker, ep blobcache.Endpoint, target blobcache.OID, ...) (*blobcache.Handle, *blobcache.VolumeInfo, error) + func OpenFrom(ctx context.Context, tp Asker, ep blobcache.Endpoint, base blobcache.Handle, ...) (*blobcache.Handle, *blobcache.VolumeInfo, error) + func Ping(ctx context.Context, tp Asker, ep blobcache.Endpoint) error + func Post(ctx context.Context, tp Asker, ep blobcache.Endpoint, txh blobcache.Handle, ...) (blobcache.CID, error) + func Save(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func Share(ctx context.Context, tp Asker, ep blobcache.Endpoint, h blobcache.Handle, ...) (*blobcache.Handle, error) + func SubToVolume(ctx context.Context, tp Asker, ep blobcache.Endpoint, qh blobcache.Handle, ...) error + func TopicSend(ctx context.Context, tp Teller, tmsg blobcache.Message) error + func Unlink(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func Visit(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + func VisitLinks(ctx context.Context, tp Asker, ep blobcache.Endpoint, tx blobcache.Handle, ...) error + type AbortReq struct + Tx blobcache.Handle + func (ar *AbortReq) Unmarshal(data []byte) error + func (ar AbortReq) Marshal(out []byte) []byte + type AbortResp struct + func (ar *AbortResp) Unmarshal(data []byte) error + func (ar AbortResp) Marshal(out []byte) []byte + type AddFromReq struct + CIDs []blobcache.CID + Srcs []blobcache.Handle + Tx blobcache.Handle + func (ar *AddFromReq) Unmarshal(data []byte) error + func (ar AddFromReq) Marshal(out []byte) []byte + type AddFromResp struct + Added []bool + func (ar *AddFromResp) Unmarshal(data []byte) error + func (ar AddFromResp) Marshal(out []byte) []byte + type Asker interface + Ask func(ctx context.Context, remote blobcache.Endpoint, req Message, resp *Message) error + type BeginTxReq struct + Params blobcache.TxParams + Volume blobcache.Handle + func (btx *BeginTxReq) Unmarshal(data []byte) error + func (btx BeginTxReq) Marshal(out []byte) []byte + type BeginTxResp struct + Info blobcache.TxInfo + Tx blobcache.Handle + func (btx *BeginTxResp) Unmarshal(data []byte) error + func (btx BeginTxResp) Marshal(out []byte) []byte + type CloneVolumeReq struct + Volume blobcache.Handle + func (cr *CloneVolumeReq) Unmarshal(data []byte) error + func (cr CloneVolumeReq) Marshal(out []byte) []byte + type CloneVolumeResp struct + Handle blobcache.Handle + func (cr *CloneVolumeResp) Unmarshal(data []byte) error + func (cr CloneVolumeResp) Marshal(out []byte) []byte + type CommitReq struct + Root *[]byte + Tx blobcache.Handle + func (cr *CommitReq) Unmarshal(data []byte) error + func (cr CommitReq) Marshal(out []byte) []byte + type CommitResp struct + func (cr *CommitResp) Unmarshal(data []byte) error + func (cr CommitResp) Marshal(out []byte) []byte + type CreateQueueReq struct + Spec blobcache.QueueSpec + func (cq *CreateQueueReq) Unmarshal(data []byte) error + func (cq CreateQueueReq) Marshal(out []byte) []byte + type CreateQueueResp struct + Handle blobcache.Handle + func (cq *CreateQueueResp) Unmarshal(data []byte) error + func (cq CreateQueueResp) Marshal(out []byte) []byte + type CreateVolumeReq struct + Spec blobcache.VolumeSpec + func (cr *CreateVolumeReq) Unmarshal(data []byte) error + func (cr CreateVolumeReq) Marshal(out []byte) []byte + type CreateVolumeResp struct + Handle blobcache.Handle + Info blobcache.VolumeInfo + func (cr *CreateVolumeResp) Unmarshal(data []byte) error + func (cr CreateVolumeResp) Marshal(out []byte) []byte + type DeleteReq struct + CIDs []blobcache.CID + Tx blobcache.Handle + func (dr *DeleteReq) Unmarshal(data []byte) error + func (dr DeleteReq) Marshal(out []byte) []byte + type DeleteResp struct + func (dr *DeleteResp) Unmarshal(data []byte) error + func (dr DeleteResp) Marshal(out []byte) []byte + type DropReq struct + Handle blobcache.Handle + func (dr *DropReq) Unmarshal(data []byte) error + func (dr DropReq) Marshal(out []byte) []byte + type DropResp struct + func (dr *DropResp) Unmarshal(data []byte) error + func (dr DropResp) Marshal(out []byte) []byte + type ExistsReq struct + CIDs []blobcache.CID + Tx blobcache.Handle + func (er *ExistsReq) Unmarshal(data []byte) error + func (er ExistsReq) Marshal(out []byte) []byte + type ExistsResp struct + Exists []bool + func (er *ExistsResp) Unmarshal(data []byte) error + func (er ExistsResp) Marshal(out []byte) []byte + type GetReq struct + CID blobcache.CID + Salt *blobcache.CID + Tx blobcache.Handle + func (gr *GetReq) Unmarshal(data []byte) error + func (gr GetReq) Marshal(out []byte) []byte + type GetResp struct + Data []byte + func (gr *GetResp) Unmarshal(data []byte) error + func (gr GetResp) Marshal(out []byte) []byte + type InsertReq struct + Messages []blobcache.Message + func (ir *InsertReq) Unmarshal(data []byte) error + func (ir InsertReq) Marshal(out []byte) []byte + type InsertResp struct + Success uint32 + func (ir *InsertResp) Unmarshal(data []byte) error + func (ir InsertResp) Marshal(out []byte) []byte + type InspectHandleReq struct + Handle blobcache.Handle + func (ir *InspectHandleReq) Unmarshal(data []byte) error + func (ir InspectHandleReq) Marshal(out []byte) []byte + type InspectHandleResp struct + Info blobcache.HandleInfo + func (ir *InspectHandleResp) Unmarshal(data []byte) error + func (ir InspectHandleResp) Marshal(out []byte) []byte + type InspectQueueReq struct + Queue blobcache.Handle + func (iq *InspectQueueReq) Unmarshal(data []byte) error + func (iq InspectQueueReq) Marshal(out []byte) []byte + type InspectQueueResp struct + Info blobcache.QueueInfo + func (iq *InspectQueueResp) Unmarshal(data []byte) error + func (iq InspectQueueResp) Marshal(out []byte) []byte + type InspectTxReq struct + Tx blobcache.Handle + func (r *InspectTxReq) Unmarshal(data []byte) error + func (r InspectTxReq) Marshal(out []byte) []byte + type InspectTxResp struct + Info blobcache.TxInfo + func (r *InspectTxResp) Unmarshal(data []byte) error + func (r InspectTxResp) Marshal(out []byte) []byte + type InspectVolumeReq struct + Volume blobcache.Handle + func (iv *InspectVolumeReq) Unmarshal(data []byte) error + func (iv InspectVolumeReq) Marshal(out []byte) []byte + type InspectVolumeResp struct + Info blobcache.VolumeInfo + func (iv *InspectVolumeResp) Unmarshal(data []byte) error + func (iv InspectVolumeResp) Marshal(out []byte) []byte + type IsVisitedReq struct + CIDs []blobcache.CID + Tx blobcache.Handle + func (ir *IsVisitedReq) Unmarshal(data []byte) error + func (ir IsVisitedReq) Marshal(out []byte) []byte + type IsVisitedResp struct + Visited []bool + func (ir *IsVisitedResp) Unmarshal(data []byte) error + func (ir IsVisitedResp) Marshal(out []byte) []byte + type KeepAliveReq struct + Handles []blobcache.Handle + func (kr *KeepAliveReq) Unmarshal(data []byte) error + func (kr KeepAliveReq) Marshal(out []byte) []byte + type KeepAliveResp struct + func (kr *KeepAliveResp) Unmarshal(data []byte) error + func (kr KeepAliveResp) Marshal(out []byte) []byte + type LinkReq struct + Mask blobcache.ActionSet + Subvol blobcache.Handle + Tx blobcache.Handle + func (ar *LinkReq) Unmarshal(data []byte) error + func (ar LinkReq) Marshal(out []byte) []byte + type LinkResp struct + func (ar *LinkResp) Unmarshal(data []byte) error + func (ar LinkResp) Marshal(out []byte) []byte + type LoadReq struct + Tx blobcache.Handle + func (lr *LoadReq) Unmarshal(data []byte) error + func (lr LoadReq) Marshal(out []byte) []byte + type LoadResp struct + Root []byte + func (lr *LoadResp) Unmarshal(data []byte) error + func (lr LoadResp) Marshal(out []byte) []byte + type Message struct + func (m *Message) Body() []byte + func (m *Message) Header() MessageHeader + func (m *Message) ReadFrom(r io.Reader) (int64, error) + func (m *Message) SetBody(body []byte) + func (m *Message) SetCode(code MessageType) + func (m *Message) SetError(err error) + func (m *Message) SetSendable(x Sendable) + func (m *Message) WriteTo(w io.Writer) (int64, error) + type MessageHeader [HeaderLen]byte + func (h *MessageHeader) SetBodyLen(bodyLen int) + func (h *MessageHeader) SetCode(code MessageType) + func (h MessageHeader) BodyLen() int + func (h MessageHeader) Code() MessageType + type MessageType uint8 + const MT_CREATE_VOLUME + const MT_HANDLE_DROP + const MT_HANDLE_INSPECT + const MT_HANDLE_KEEP_ALIVE + const MT_HANDLE_SHARE + const MT_OPEN_FIAT + const MT_OPEN_FROM + const MT_PING + const MT_QUEUE_CREATE + const MT_QUEUE_INSERT + const MT_QUEUE_INSPECT + const MT_QUEUE_NEXT + const MT_QUEUE_SUB_TO_VOLUME + const MT_TOPIC_TELL + const MT_TX_ABORT + const MT_TX_ADD_FROM + const MT_TX_COMMIT + const MT_TX_DELETE + const MT_TX_EXISTS + const MT_TX_GET + const MT_TX_INSPECT + const MT_TX_IS_VISITED + const MT_TX_LINK + const MT_TX_LOAD + const MT_TX_POST + const MT_TX_POST_SALT + const MT_TX_SAVE + const MT_TX_UNLINK + const MT_TX_VISIT + const MT_TX_VISIT_LINKS + const MT_UNKNOWN + const MT_VOLUME_AWAIT + const MT_VOLUME_BEGIN_TX + const MT_VOLUME_CLONE + const MT_VOLUME_INSPECT + func (mt MessageType) IsError() bool + func (mt MessageType) IsOK() bool + type NextReq struct + Max int + Opts blobcache.NextOpts + func (nr *NextReq) Unmarshal(data []byte) error + func (nr NextReq) Marshal(out []byte) []byte + type NextResp struct + Messages []blobcache.Message + func (nr *NextResp) Unmarshal(data []byte) error + func (nr NextResp) Marshal(out []byte) []byte + type OpenFiatReq struct + Mask blobcache.ActionSet + Target blobcache.OID + func (oa *OpenFiatReq) Unmarshal(data []byte) error + func (oa OpenFiatReq) Marshal(out []byte) []byte + type OpenFiatResp struct + Handle blobcache.Handle + Info blobcache.VolumeInfo + func (oa *OpenFiatResp) Unmarshal(data []byte) error + func (oa OpenFiatResp) Marshal(out []byte) []byte + type OpenFromReq struct + Base blobcache.Handle + Mask blobcache.ActionSet + Target blobcache.OID + func (of *OpenFromReq) Unmarshal(data []byte) error + func (of OpenFromReq) Marshal(out []byte) []byte + type OpenFromResp struct + Handle blobcache.Handle + Info blobcache.VolumeInfo + func (of *OpenFromResp) Unmarshal(data []byte) error + func (of OpenFromResp) Marshal(out []byte) []byte + type SaveReq struct + Root []byte + Tx blobcache.Handle + func (r *SaveReq) Unmarshal(data []byte) error + func (r SaveReq) Marshal(out []byte) []byte + type SaveResp struct + func (r *SaveResp) Unmarshal(data []byte) error + func (r SaveResp) Marshal(out []byte) []byte + type Sendable interface + Marshal func(out []byte) []byte + type ShareReq struct + Handle blobcache.Handle + Mask blobcache.ActionSet + Peer blobcache.PeerID + func (sr *ShareReq) Unmarshal(data []byte) error + func (sr ShareReq) Marshal(out []byte) []byte + type ShareResp struct + Handle blobcache.Handle + func (sr *ShareResp) Unmarshal(data []byte) error + func (sr ShareResp) Marshal(out []byte) []byte + type SubToVolumeReq struct + Queue blobcache.Handle + Volume blobcache.Handle + func (sr *SubToVolumeReq) Unmarshal(data []byte) error + func (sr SubToVolumeReq) Marshal(out []byte) []byte + type SubToVolumeResp struct + func (sr *SubToVolumeResp) Unmarshal(data []byte) error + func (sr SubToVolumeResp) Marshal(out []byte) []byte + type Teller interface + Tell func(ctx context.Context, remote blobcache.Endpoint, req Message) error + type TopicTellMsg struct + Ciphertext []byte + TopicHash blobcache.CID + func (dst *TopicTellMsg) Encrypt(topicID blobcache.TID, ptext []byte) + func (ttm *TopicTellMsg) Decrypt(tid blobcache.TID, dst *blobcache.Message) error + func (ttm *TopicTellMsg) Unmarshal(data []byte) error + func (ttm TopicTellMsg) Marshal(out []byte) []byte + type UnlinkReq struct + Targets []blobcache.OID + Tx blobcache.Handle + func (ur *UnlinkReq) Unmarshal(data []byte) error + func (ur UnlinkReq) Marshal(out []byte) []byte + type UnlinkResp struct + func (ur *UnlinkResp) Unmarshal(data []byte) error + func (ur UnlinkResp) Marshal(out []byte) []byte + type VisitLinksReq struct + Targets []blobcache.OID + Tx blobcache.Handle + func (vr *VisitLinksReq) Unmarshal(data []byte) error + func (vr VisitLinksReq) Marshal(out []byte) []byte + type VisitLinksResp struct + func (vr *VisitLinksResp) Unmarshal(data []byte) error + func (vr VisitLinksResp) Marshal(out []byte) []byte + type VisitReq struct + CIDs []blobcache.CID + Tx blobcache.Handle + func (vr *VisitReq) Unmarshal(data []byte) error + func (vr VisitReq) Marshal(out []byte) []byte + type VisitResp struct + func (vr *VisitResp) Unmarshal(data []byte) error + func (vr VisitResp) Marshal(out []byte) []byte