libp2p.peer package
Submodules
libp2p.peer.addrbook_interface module
- class libp2p.peer.addrbook_interface.IAddrBook
Bases:
ABC
- abstract add_addr(peer_id: ID, addr: Multiaddr, ttl: int) None
Calls add_addrs(peer_id, [addr], ttl)
- Parameters:
peer_id – the peer to add address for
addr – multiaddress of the peer
ttl – time-to-live for the address (after this time, address is no longer valid)
- abstract add_addrs(peer_id: ID, addrs: Sequence[Multiaddr], ttl: int) None
Adds addresses for a given peer all with the same time-to-live. If one of the addresses already exists for the peer and has a longer TTL, no operation should take place. If one of the addresses exists with a shorter TTL, extend the TTL to equal param ttl.
- Parameters:
peer_id – the peer to add address for
addr – multiaddresses of the peer
ttl – time-to-live for the address (after this time, address is no longer valid
- abstract addrs(peer_id: ID) List[Multiaddr]
- Parameters:
peer_id – peer to get addresses of
- Returns:
all known (and valid) addresses for the given peer
libp2p.peer.id module
libp2p.peer.peerdata module
- class libp2p.peer.peerdata.PeerData
Bases:
IPeerData
- add_privkey(privkey: PrivateKey) None
- Parameters:
privkey –
- get_metadata(key: str) Any
- Parameters:
key – key in KV pair
- Returns:
val for key
- Raises:
PeerDataError – key not found
- get_privkey() PrivateKey
- Returns:
private key of the peer
- Raises:
PeerDataError – if private key not found
- get_pubkey() PublicKey
- Returns:
public key of the peer
- Raises:
PeerDataError – if public key not found
- privkey: PrivateKey
libp2p.peer.peerdata_interface module
- class libp2p.peer.peerdata_interface.IPeerData
Bases:
ABC
- abstract add_privkey(privkey: PrivateKey) None
- Parameters:
privkey –
- abstract get_metadata(key: str) IPeerMetadata
- Parameters:
key – key in KV pair
- Returns:
val for key
- Raises:
PeerDataError – key not found
- abstract get_privkey() PrivateKey
- Returns:
private key of the peer
- Raises:
PeerDataError – if private key not found
- abstract get_pubkey() PublicKey
- Returns:
public key of the peer
- Raises:
PeerDataError – if public key not found
libp2p.peer.peerinfo module
- exception libp2p.peer.peerinfo.InvalidAddrError
Bases:
ValueError
libp2p.peer.peermetadata_interface module
libp2p.peer.peerstore module
- class libp2p.peer.peerstore.PeerStore
Bases:
IPeerStore
- add_addr(peer_id: ID, addr: Multiaddr, ttl: int) None
- Parameters:
peer_id – peer ID to add address for
addr –
ttl – time-to-live for the this record
- add_addrs(peer_id: ID, addrs: Sequence[Multiaddr], ttl: int) None
- Parameters:
peer_id – peer ID to add address for
addrs –
ttl – time-to-live for the this record
- add_key_pair(peer_id: ID, key_pair: KeyPair) None
- Parameters:
peer_id – peer ID to add private key for
key_pair –
- add_privkey(peer_id: ID, privkey: PrivateKey) None
- Parameters:
peer_id – peer ID to add private key for
privkey –
- Raises:
PeerStoreError – if peer ID or peer privkey not found
- add_protocols(peer_id: ID, protocols: Sequence[str]) None
- Parameters:
peer_id – peer ID to add protocols for
protocols – protocols to add
- add_pubkey(peer_id: ID, pubkey: PublicKey) None
- Parameters:
peer_id – peer ID to add public key for
pubkey –
- Raises:
PeerStoreError – if peer ID and pubkey does not match
- addrs(peer_id: ID) List[Multiaddr]
- Parameters:
peer_id – peer ID to get addrs for
- Returns:
list of addrs
- Raises:
PeerStoreError – if peer ID not found
- get(peer_id: ID, key: str) Any
- Parameters:
peer_id – peer ID to get peer data for
key – the key to search value for
- Returns:
value corresponding to the key
- Raises:
PeerStoreError – if peer ID or value not found
- get_protocols(peer_id: ID) List[str]
- Parameters:
peer_id – peer ID to get protocols for
- Returns:
protocols (as list of strings)
- Raises:
PeerStoreError – if peer ID not found
- peer_info(peer_id: ID) PeerInfo
- Parameters:
peer_id – peer ID to get info for
- Returns:
peer info object
- privkey(peer_id: ID) PrivateKey
- Parameters:
peer_id – peer ID to get private key for
- Returns:
private key of the peer
- Raises:
PeerStoreError – if peer ID or peer privkey not found
- pubkey(peer_id: ID) PublicKey
- Parameters:
peer_id – peer ID to get public key for
- Returns:
public key of the peer
- Raises:
PeerStoreError – if peer ID or peer pubkey not found
libp2p.peer.peerstore_interface module
- class libp2p.peer.peerstore_interface.IPeerStore
Bases:
IAddrBook
,IPeerMetadata
- abstract add_addr(peer_id: ID, addr: Multiaddr, ttl: int) None
- Parameters:
peer_id – peer ID to add address for
addr –
ttl – time-to-live for the this record
- abstract add_addrs(peer_id: ID, addrs: Sequence[Multiaddr], ttl: int) None
- Parameters:
peer_id – peer ID to add address for
addrs –
ttl – time-to-live for the this record
- abstract add_key_pair(peer_id: ID, key_pair: KeyPair) None
- Parameters:
peer_id – peer ID to add private key for
key_pair –
- Raises:
PeerStoreError – if peer ID already has pubkey or privkey set
- abstract add_privkey(peer_id: ID, privkey: PrivateKey) None
- Parameters:
peer_id – peer ID to add private key for
privkey –
- Raises:
PeerStoreError – if peer ID already has privkey set
- abstract add_protocols(peer_id: ID, protocols: Sequence[str]) None
- Parameters:
peer_id – peer ID to add protocols for
protocols – protocols to add
- abstract add_pubkey(peer_id: ID, pubkey: PublicKey) None
- Parameters:
peer_id – peer ID to add public key for
pubkey –
- Raises:
PeerStoreError – if peer ID already has pubkey set
- abstract addrs(peer_id: ID) List[Multiaddr]
- Parameters:
peer_id – peer ID to get addrs for
- Returns:
list of addrs
- abstract get(peer_id: ID, key: str) Any
- Parameters:
peer_id – peer ID to get peer data for
key – the key to search value for
- Returns:
value corresponding to the key
- Raises:
PeerStoreError – if peer ID or value not found
- abstract get_protocols(peer_id: ID) List[str]
- Parameters:
peer_id – peer ID to get protocols for
- Returns:
protocols (as list of strings)
- Raises:
PeerStoreError – if peer ID not found
- abstract peer_info(peer_id: ID) PeerInfo
- Parameters:
peer_id – peer ID to get info for
- Returns:
peer info object
- abstract peers_with_addrs() List[ID]
- Returns:
all of the peer IDs which has addrs stored in peer store
- abstract privkey(peer_id: ID) PrivateKey
- Parameters:
peer_id – peer ID to get private key for
- Returns:
private key of the peer
- Raises:
PeerStoreError – if peer ID not found
- abstract pubkey(peer_id: ID) PublicKey
- Parameters:
peer_id – peer ID to get public key for
- Returns:
public key of the peer
- Raises:
PeerStoreError – if peer ID not found