Documentation ¶
Index ¶
- Constants
- Variables
- func GetOutboundIP() []string
- func PeerInfoFromString(peerAddr string) (*peer.AddrInfo, error)
- type ConnManagerError
- type IncognitoNetworkManager
- func (man *IncognitoNetworkManager) BroadcastMessage(msg []byte)
- func (man *IncognitoNetworkManager) Close() error
- func (man *IncognitoNetworkManager) ConnectToPeerID(peerID string)
- func (man *IncognitoNetworkManager) GetAllPeers() []peer.ID
- func (man *IncognitoNetworkManager) GetTagInfo(peer.ID) *connmgr.TagInfo
- func (man *IncognitoNetworkManager) IsProtected(id peer.ID, tag string) (protected bool)
- func (man *IncognitoNetworkManager) Notifee() network.Notifiee
- func (man *IncognitoNetworkManager) Protect(peer.ID, string)
- func (man *IncognitoNetworkManager) SendMessageToPeerID(msg []byte, peerID peer.ID)
- func (man *IncognitoNetworkManager) TagPeer(peer.ID, string, int)
- func (man *IncognitoNetworkManager) TrimOpenConns(ctx context.Context)
- func (man *IncognitoNetworkManager) Unprotect(peer.ID, string) bool
- func (man *IncognitoNetworkManager) UntagPeer(peer.ID, string)
- func (man *IncognitoNetworkManager) UpsertTag(peer.ID, string, func(int) int)
- type IncognitoPeer
- type NetworkOption
- type Server
- func (s *Server) ConnectPeerByAddr(peerAddr string) error
- func (s *Server) GetBroadcastAddr() []string
- func (s *Server) GetHost() host.Host
- func (s *Server) GetHostID() peer.ID
- func (s *Server) GetListenAddrs() []string
- func (s *Server) GetListeningPort() int
- func (s *Server) GetNATType() network.Reachability
- func (s *Server) Quit()
- type ServerOption
- type TraversalMethod
Constants ¶
View Source
const ( TraversalPMP = "pmp" TraversalHolePunch = "punching" TraversalHW = "highway" TraversalNone = "none" )
View Source
const ( UnexpectedError = iota GetPeerIdError ConnectError StartError StopError NotAcceptConnectionError PeerGenerateKeyPairError CreateP2PNodeError CreateP2PAddressError GetPeerIdFromProtocolError OpeningStreamP2PError HandleNewStreamError // PeerConn err HandleMessageCheckResponse HandleMessageCheck LimitByteForMessageError ReadStringMessageError HexDecodeMessageError UnzipMessageError HashToPoolError MessageTypeError CheckForwardError ParseJsonMessageError CacheMessageHashError UnhandleMessageTypeError )
Variables ¶
View Source
var ( //ErrShouldHaveIPAddress ... ErrShouldHaveIPAddress = errors.New("error machine should have an assigned IP address") //ErrNoNATDeviceFound ... ErrNoNATDeviceFound = errors.New("error no NAT devices found") //ErrCreatingHost ... ErrCreatingHost = errors.New("error creating host") //ErrCantUpdateBroadcastAddress ... ErrCantUpdateBroadcastAddress = errors.New("error cant update broadcast address") //ErrCantConnectToNATDiscoverAddress ... ErrCantConnectToNATDiscoverAddress = errors.New("error cant connect to NAT discover address") // ErrNoMapping signals no mapping exists for an address ErrNoMapping = errors.New("mapping not established") // ErrCantGetExternalAddress ... ErrCantGetExternalAddress = errors.New("error cant get external address") // ErrCreateStream ... ErrCreateStreamExist = errors.New("error stream of this protocol to this peerID already exist") )
View Source
var ErrCodeMessage = map[int]struct { Code int Message string }{ UnexpectedError: {-1, "Unexpected error"}, GetPeerIdError: {-2, "Get peer id fail"}, ConnectError: {-3, "Connect error"}, StartError: {-4, "Start error"}, StopError: {-5, "Stop errior"}, NotAcceptConnectionError: {-6, "Not accept connection"}, PeerGenerateKeyPairError: {-1001, "Can not generate key pair with reader"}, CreateP2PNodeError: {-1002, "Can not create libp2p node"}, CreateP2PAddressError: {-1003, "Can not create libp2p address for node"}, GetPeerIdFromProtocolError: {-1004, "Can not get peer id from protocol"}, OpeningStreamP2PError: {-1005, "Fail in opening stream "}, HandleNewStreamError: {-1006, "Handle new stream error"}, HandleMessageCheckResponse: {-2001, "Handle message check response error"}, HandleMessageCheck: {-2002, "Handle message check error"}, LimitByteForMessageError: {-2003, "Limit byte for message"}, ReadStringMessageError: {-2004, "Read message error"}, HexDecodeMessageError: {-2005, "Hex decode message error"}, UnzipMessageError: {-2006, "Unzip message error"}, HashToPoolError: {-2007, "Insert hash of message to pool error"}, MessageTypeError: {-2008, "Can not find particular message for message cmd type"}, CheckForwardError: {-2009, "Check forward error"}, ParseJsonMessageError: {-2010, "Can not parse struct from json message"}, CacheMessageHashError: {-2011, "Cache messagse hash error"}, UnhandleMessageTypeError: {-2012, "Received unhandled message of type"}, }
Functions ¶
Types ¶
type ConnManagerError ¶
func NewConnManagerError ¶
func NewConnManagerError(key int, err error) *ConnManagerError
func (ConnManagerError) Error ¶
func (e ConnManagerError) Error() string
type IncognitoNetworkManager ¶
type IncognitoNetworkManager struct { PeerWithIncognitoID map[string][]peer.ID // contains filtered or unexported fields }
func InitNetwork ¶
func InitNetwork(ctx context.Context, hop *ServerOption, protocol protocol.ID, processInMessage func(peer.ID, []byte)) (*IncognitoNetworkManager, error)
func (*IncognitoNetworkManager) BroadcastMessage ¶
func (man *IncognitoNetworkManager) BroadcastMessage(msg []byte)
func (*IncognitoNetworkManager) Close ¶
func (man *IncognitoNetworkManager) Close() error
func (*IncognitoNetworkManager) ConnectToPeerID ¶
func (man *IncognitoNetworkManager) ConnectToPeerID(peerID string)
func (*IncognitoNetworkManager) GetAllPeers ¶ added in v0.1.3
func (man *IncognitoNetworkManager) GetAllPeers() []peer.ID
func (*IncognitoNetworkManager) GetTagInfo ¶
func (man *IncognitoNetworkManager) GetTagInfo(peer.ID) *connmgr.TagInfo
func (*IncognitoNetworkManager) IsProtected ¶
func (man *IncognitoNetworkManager) IsProtected(id peer.ID, tag string) (protected bool)
func (*IncognitoNetworkManager) Notifee ¶
func (man *IncognitoNetworkManager) Notifee() network.Notifiee
func (*IncognitoNetworkManager) Protect ¶
func (man *IncognitoNetworkManager) Protect(peer.ID, string)
func (*IncognitoNetworkManager) SendMessageToPeerID ¶
func (man *IncognitoNetworkManager) SendMessageToPeerID(msg []byte, peerID peer.ID)
func (*IncognitoNetworkManager) TagPeer ¶
func (man *IncognitoNetworkManager) TagPeer(peer.ID, string, int)
func (*IncognitoNetworkManager) TrimOpenConns ¶
func (man *IncognitoNetworkManager) TrimOpenConns(ctx context.Context)
func (*IncognitoNetworkManager) Unprotect ¶
func (man *IncognitoNetworkManager) Unprotect(peer.ID, string) bool
type IncognitoPeer ¶
type NetworkOption ¶ added in v0.1.3
type NetworkOption struct { }
type Server ¶ added in v0.1.3
type Server struct {
// contains filtered or unexported fields
}
func (*Server) ConnectPeerByAddr ¶ added in v0.1.3
func (*Server) GetBroadcastAddr ¶ added in v0.1.3
func (*Server) GetListenAddrs ¶ added in v0.1.3
func (*Server) GetListeningPort ¶ added in v0.1.3
func (*Server) GetNATType ¶ added in v0.1.3
func (s *Server) GetNATType() network.Reachability
type ServerOption ¶ added in v0.1.3
type TraversalMethod ¶
type TraversalMethod string
Click to show internal directories.
Click to hide internal directories.