Versions in this module Expand all Collapse all v0 v0.2.0 Mar 13, 2019 v0.1.0 Jul 23, 2018 Changes in this version + const DefaultConfigPath + const PrivateWithCoordinatorMode + var ErrConnectionRefused = errors.New("connection refused") + var ErrInvalidCoordinatorAddr = errors.New("invalid coordinator address") + var ErrInvalidCoordinatorID = errors.New("invalid coordinator ID") + var ErrMissingCoordinatorAddr = errors.New("missing coordinator address") + var ErrMissingNonLocalAddr = errors.New("need a non-local peer address") + type ConfigSaver struct + func (c *ConfigSaver) AddPeer(ctx context.Context, peerID peer.ID, addrs []multiaddr.Multiaddr) error + func (c *ConfigSaver) RemovePeer(ctx context.Context, peerID peer.ID) error + func (c *ConfigSaver) Reset(ctx context.Context, networkConfig *pb.NetworkConfig) error + func (c *ConfigSaver) Save(ctx context.Context) error + func (c *ConfigSaver) SetNetworkState(ctx context.Context, networkState pb.NetworkState) error + type ConfigSigner struct + func (c *ConfigSigner) AddPeer(ctx context.Context, peerID peer.ID, addrs []multiaddr.Multiaddr) error + func (c *ConfigSigner) RemovePeer(ctx context.Context, peerID peer.ID) error + func (c *ConfigSigner) Reset(ctx context.Context, networkConfig *pb.NetworkConfig) error + func (c *ConfigSigner) SetNetworkState(ctx context.Context, networkState pb.NetworkState) error + type InMemoryConfig struct + func (c *InMemoryConfig) AddPeer(ctx context.Context, peerID peer.ID, addrs []multiaddr.Multiaddr) error + func (c *InMemoryConfig) AllowedAddrs(ctx context.Context, peerID peer.ID) []multiaddr.Multiaddr + func (c *InMemoryConfig) AllowedPeers(ctx context.Context) []peer.ID + func (c *InMemoryConfig) Copy(ctx context.Context) pb.NetworkConfig + func (c *InMemoryConfig) IsAllowed(ctx context.Context, peerID peer.ID) bool + func (c *InMemoryConfig) NetworkState(ctx context.Context) pb.NetworkState + func (c *InMemoryConfig) RemovePeer(ctx context.Context, peerID peer.ID) error + func (c *InMemoryConfig) Reset(ctx context.Context, networkConfig *pb.NetworkConfig) error + func (c *InMemoryConfig) SetNetworkState(ctx context.Context, networkState pb.NetworkState) error + func (c *InMemoryConfig) Sign(ctx context.Context, privKey crypto.PrivKey) error + type NetworkConfig interface + Copy func(context.Context) pb.NetworkConfig + Reset func(context.Context, *pb.NetworkConfig) error + Sign func(context.Context, crypto.PrivKey) error + func LoadOrInitNetworkConfig(ctx context.Context, configPath string, privKey crypto.PrivKey, ...) (NetworkConfig, error) + func NewInMemoryConfig(ctx context.Context, networkConfig *pb.NetworkConfig) (NetworkConfig, error) + func WrapWithProtectUpdater(networkConfig NetworkConfig, protect Protector, peerStore peerstore.Peerstore) NetworkConfig + func WrapWithSaver(networkConfig NetworkConfig, configPath string) NetworkConfig + func WrapWithSignature(networkConfig NetworkConfig, privKey crypto.PrivKey) NetworkConfig + type NetworkConfigReader interface + type NetworkConfigWriter interface + type NetworkMode struct + CoordinatorAddrs []multiaddr.Multiaddr + CoordinatorID peer.ID + IsCoordinator bool + ProtectionMode string + func NewCoordinatedNetworkMode(coordinatorID string, coordinatorAddrs []string) (*NetworkMode, error) + func NewCoordinatorNetworkMode() *NetworkMode + type NetworkPeersReader interface + AllowedAddrs func(context.Context, peer.ID) []multiaddr.Multiaddr + AllowedPeers func(context.Context) []peer.ID + IsAllowed func(context.Context, peer.ID) bool + type NetworkPeersWriter interface + AddPeer func(context.Context, peer.ID, []multiaddr.Multiaddr) error + RemovePeer func(context.Context, peer.ID) error + type NetworkStateReader interface + NetworkState func(context.Context) pb.NetworkState + type NetworkStateWriter interface + SetNetworkState func(context.Context, pb.NetworkState) error + type NetworkUpdate struct + PeerID peer.ID + Type NetworkUpdateType + func CreateAddNetworkUpdate(peerID peer.ID) NetworkUpdate + func CreateRemoveNetworkUpdate(peerID peer.ID) NetworkUpdate + type NetworkUpdateType byte + const Add + const Remove + type PrivateNetwork struct + func (p *PrivateNetwork) AllowedAddrs(ctx context.Context) []multiaddr.Multiaddr + func (p *PrivateNetwork) AllowedPeers(ctx context.Context) []peer.ID + func (p *PrivateNetwork) Fingerprint() []byte + func (p *PrivateNetwork) ListenForUpdates(updateChan <-chan NetworkUpdate) + func (p *PrivateNetwork) Protect(conn transport.Conn) (transport.Conn, error) + type PrivateNetworkWithBootstrap struct + func (p *PrivateNetworkWithBootstrap) AllowedAddrs(ctx context.Context) []multiaddr.Multiaddr + func (p *PrivateNetworkWithBootstrap) AllowedPeers(ctx context.Context) []peer.ID + func (p *PrivateNetworkWithBootstrap) Fingerprint() []byte + func (p *PrivateNetworkWithBootstrap) ListenForUpdates(updateChan <-chan NetworkUpdate) + func (p *PrivateNetworkWithBootstrap) Protect(conn transport.Conn) (transport.Conn, error) + func (p *PrivateNetworkWithBootstrap) SetNetworkState(_ context.Context, networkState pb.NetworkState) error + type ProtectUpdater struct + func (c *ProtectUpdater) AddPeer(ctx context.Context, peerID peer.ID, addrs []multiaddr.Multiaddr) error + func (c *ProtectUpdater) RemovePeer(ctx context.Context, peerID peer.ID) error + func (c *ProtectUpdater) Reset(ctx context.Context, networkConfig *pb.NetworkConfig) error + func (c *ProtectUpdater) SetNetworkState(ctx context.Context, networkState pb.NetworkState) error + type Protector interface + AllowedAddrs func(context.Context) []multiaddr.Multiaddr + AllowedPeers func(context.Context) []peer.ID + ListenForUpdates func(<-chan NetworkUpdate) + func NewPrivateNetwork(peerStore peerstore.Peerstore) Protector + func NewPrivateNetworkWithBootstrap(peerStore peerstore.Peerstore) Protector + type StateAwareProtector interface