libp2p.transport package

Submodules

libp2p.transport.exceptions module

exception libp2p.transport.exceptions.MuxerUpgradeFailure

Bases: libp2p.transport.exceptions.UpgradeFailure

exception libp2p.transport.exceptions.OpenConnectionError

Bases: libp2p.exceptions.BaseLibp2pError

exception libp2p.transport.exceptions.SecurityUpgradeFailure

Bases: libp2p.transport.exceptions.UpgradeFailure

exception libp2p.transport.exceptions.UpgradeFailure

Bases: libp2p.exceptions.BaseLibp2pError

libp2p.transport.listener_interface module

class libp2p.transport.listener_interface.IListener

Bases: abc.ABC

abstract async close() → None
abstract get_addrs() → Tuple[multiaddr.multiaddr.Multiaddr, ...]

retrieve list of addresses the listener is listening on.

Returns

return list of addrs

abstract async listen(maddr: multiaddr.multiaddr.Multiaddr, nursery: trio.Nursery) → bool

put listener in listening mode and wait for incoming connections.

Parameters

maddr – multiaddr of peer

Returns

return True if successful

libp2p.transport.transport_interface module

class libp2p.transport.transport_interface.ITransport

Bases: abc.ABC

abstract create_listener(handler_function: Callable[[libp2p.io.abc.ReadWriteCloser], Awaitable[None]]) → libp2p.transport.listener_interface.IListener

create listener on transport.

Parameters

handler_function – a function called when a new conntion is received that takes a connection as argument which implements interface-connection

Returns

a listener object that implements listener_interface.py

abstract async dial(maddr: multiaddr.multiaddr.Multiaddr) → libp2p.network.connection.raw_connection_interface.IRawConnection

dial a transport to peer listening on multiaddr.

Parameters
  • multiaddr – multiaddr of peer

  • self_id – peer_id of the dialer (to send to receiver)

Returns

list of multiaddrs

libp2p.transport.typing module

libp2p.transport.upgrader module

class libp2p.transport.upgrader.TransportUpgrader(secure_transports_by_protocol: Mapping[NewType.<locals>.new_type, libp2p.security.secure_transport_interface.ISecureTransport], muxer_transports_by_protocol: Mapping[NewType.<locals>.new_type, Type[libp2p.stream_muxer.abc.IMuxedConn]])

Bases: object

muxer_multistream: MuxerMultistream = None
security_multistream: SecurityMultistream = None
async upgrade_connection(conn: libp2p.security.secure_conn_interface.ISecureConn, peer_id: libp2p.peer.id.ID) → libp2p.stream_muxer.abc.IMuxedConn

Upgrade secured connection to a muxed connection.

upgrade_listener(transport: libp2p.transport.transport_interface.ITransport, listeners: libp2p.transport.listener_interface.IListener) → None

Upgrade multiaddr listeners to libp2p-transport listeners.

async upgrade_security(raw_conn: libp2p.network.connection.raw_connection_interface.IRawConnection, peer_id: libp2p.peer.id.ID, is_initiator: bool) → libp2p.security.secure_conn_interface.ISecureConn

Upgrade conn to a secured connection.

Module contents