Documentation ¶
Index ¶
- Constants
- func Init(ug *ugate.UGate)
- func InitEvent(h host.Host)
- func P2PAddrFromString(c string) (*peer.AddrInfo, error)
- type IPFS
- func (ipfs *IPFS) DialContext(ctx context.Context, net string, addr string) (net.Conn, error)
- func (ipfs *IPFS) FindPeer(ctx context.Context, id peer.ID) (peer.AddrInfo, error)
- func (p2p *IPFS) InterceptAccept(multiaddrs network.ConnMultiaddrs) (allow bool)
- func (p2p *IPFS) InterceptAddrDial(id peer.ID, m multiaddr.Multiaddr) (allow bool)
- func (p2p *IPFS) InterceptPeerDial(p peer.ID) (allow bool)
- func (p2p *IPFS) InterceptSecured(direction network.Direction, id peer.ID, multiaddrs network.ConnMultiaddrs) (allow bool)
- func (p2p *IPFS) InterceptUpgraded(conn network.Conn) (allow bool, reason control.DisconnectReason)
- type IPFSDiscovery
- func (r *IPFSDiscovery) FindPeers(ctx context.Context, pid peer.ID, limit int) (iter.ResultIter[*types.PeerRecord], error)
- func (r *IPFSDiscovery) FindProviders(ctx context.Context, key cid.Cid, limit int) (iter.ResultIter[types.Record], error)
- func (r *IPFSDiscovery) GetIPNS(ctx context.Context, name ipns.Name) (*ipns.Record, error)
- func (ipfsd *IPFSDiscovery) Init(ctx context.Context) error
- func (p2p *IPFSDiscovery) InterceptAccept(multiaddrs network.ConnMultiaddrs) (allow bool)
- func (p2p *IPFSDiscovery) InterceptAddrDial(id peer.ID, m multiaddr.Multiaddr) (allow bool)
- func (p2p *IPFSDiscovery) InterceptPeerDial(p peer.ID) (allow bool)
- func (p2p *IPFSDiscovery) InterceptSecured(direction network.Direction, id peer.ID, multiaddrs network.ConnMultiaddrs) (allow bool)
- func (p2p *IPFSDiscovery) InterceptUpgraded(conn network.Conn) (allow bool, reason control.DisconnectReason)
- func (ipfsd *IPFSDiscovery) LogAddr()
- func (d *IPFSDiscovery) Peering(h host.Host, rt string)
- func (r *IPFSDiscovery) ProvideBitswap(ctx context.Context, req *server.BitswapWriteProvideRequest) (time.Duration, error)
- func (r *IPFSDiscovery) PutIPNS(ctx context.Context, name ipns.Name, record *ipns.Record) error
- func (d *IPFSDiscovery) ServeHTTP(w http.ResponseWriter, r *http.Request)
- func (d *IPFSDiscovery) StartDHT()
Constants ¶
const Protocol = "/ugate/0.0.1"
Variables ¶
This section is empty.
Functions ¶
Types ¶
type IPFS ¶
ConnectionGater, Server
func InitIPFS ¶
InitIPFS creates LibP2P compatible transport. Identity is based on the EC256 workload identity in auth.
Routing is based on HTTP.
Main purpose of this integration is to take advantage of public auto-relay code and infra, for control/signaling channels.
func (*IPFS) DialContext ¶
func (*IPFS) InterceptAccept ¶
func (p2p *IPFS) InterceptAccept(multiaddrs network.ConnMultiaddrs) (allow bool)
func (*IPFS) InterceptAddrDial ¶
func (*IPFS) InterceptSecured ¶
func (*IPFS) InterceptUpgraded ¶
type IPFSDiscovery ¶
type IPFSDiscovery struct { DHT *dht.IpfsDHT Host host.Host Port int Auth *meshauth.MeshAuth Bootstrap []multiaddr.Multiaddr Key crypto.PrivKey // If empty, this is used with the public infra Domain string // contains filtered or unexported fields }
IPFSDiscovery registers in the libp2p DHT infra ( by default public - but can also be a private DHT mesh) and acts as a DHT node, implementing the http routing server API.
func (*IPFSDiscovery) FindPeers ¶
func (r *IPFSDiscovery) FindPeers(ctx context.Context, pid peer.ID, limit int) (iter.ResultIter[*types.PeerRecord], error)
func (*IPFSDiscovery) FindProviders ¶
func (r *IPFSDiscovery) FindProviders(ctx context.Context, key cid.Cid, limit int) (iter.ResultIter[types.Record], error)
func (*IPFSDiscovery) Init ¶
func (ipfsd *IPFSDiscovery) Init(ctx context.Context) error
NewDHT creates a host using DHT and router server.
func (*IPFSDiscovery) InterceptAccept ¶
func (p2p *IPFSDiscovery) InterceptAccept(multiaddrs network.ConnMultiaddrs) (allow bool)
func (*IPFSDiscovery) InterceptAddrDial ¶
func (p2p *IPFSDiscovery) InterceptAddrDial(id peer.ID, m multiaddr.Multiaddr) (allow bool)
func (*IPFSDiscovery) InterceptPeerDial ¶
func (p2p *IPFSDiscovery) InterceptPeerDial(p peer.ID) (allow bool)
func (*IPFSDiscovery) InterceptSecured ¶
func (p2p *IPFSDiscovery) InterceptSecured(direction network.Direction, id peer.ID, multiaddrs network.ConnMultiaddrs) (allow bool)
func (*IPFSDiscovery) InterceptUpgraded ¶
func (p2p *IPFSDiscovery) InterceptUpgraded(conn network.Conn) (allow bool, reason control.DisconnectReason)
func (*IPFSDiscovery) LogAddr ¶
func (ipfsd *IPFSDiscovery) LogAddr()
func (*IPFSDiscovery) ProvideBitswap ¶
func (r *IPFSDiscovery) ProvideBitswap(ctx context.Context, req *server.BitswapWriteProvideRequest) (time.Duration, error)
nolint deprecated
func (*IPFSDiscovery) ServeHTTP ¶
func (d *IPFSDiscovery) ServeHTTP(w http.ResponseWriter, r *http.Request)
IPFS autoregistration and debug function.
Normally should only be exposed to mesh workloads - i.e. the request should be over ambient or authenticated with JWT or mTLS.
func (*IPFSDiscovery) StartDHT ¶
func (d *IPFSDiscovery) StartDHT()