go-libp2p-core
go-libp2p-core copied to clipboard
Interfaces and abstractions that make up go-libp2p
This tries to provide a simple-to-reason-about solution to the list of problems in https://github.com/libp2p/go-libp2p/issues/1554
Currently, there's no conflict management.
For https://github.com/libp2p/go-libp2p/issues/1012. AutoNAT PR at https://github.com/libp2p/go-libp2p-autonat/pull/98. As discussed with @Stebalien , sub-systems that discover new dialable addresses will emit this event which will then be consumed by AutoNAT to determine...
## Changes to the `Transport` interface `Protocols()` now returns a `[]ma.Protocol`, not a slice of untyped ints. Note that this also changes the interpretation if more than one element is...
I need to unicast messages to other peers on my network. I want to store the AddrInfo struct on my message so I have the nodes addr who unicast me...
See https://github.com/libp2p/go-libp2p-quic-transport/pull/122#discussion_r393442483.
# Content Using type casting in go-libp2p and go-libp2p-swarm this change will be seem less to users and subsystems (except maybe for more stream reset due to OnBetter events). I...
This PR introduces an `AddressProvenance` data type that acts like an _unsealed_ enum. This means that users can add user-defined values, and have them tracked by the peerstore. Address provenances...
The current `PrivKey` is a `Key` that can also sign stuff, so it actually is a `SigKey`. You could also let MACs implement this interface. - Signatures (`SigKey` and `VerifyKey`)...
A transport implementation should be able to signal the capabilities it has by default. Some transports might already have some of the layers we currently add on top, such as...