Documentation ¶
Index ¶
- Variables
- func GetAddresses(protocol string, l net.Listener) []string
- func GetLocalPeerAddresses(port int) ([]string, error)
- func Read(conn *Connection) (object.Object, error)
- func Write(o object.Object, conn *Connection) error
- type Connection
- type Middleware
- type MiddlewareHandler
- type Network
- type Option
- type Options
- type Transport
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrAllAddressesFailed for when a peer cannot be dialed ErrAllAddressesFailed = errors.New("all addresses failed to dial") // ErrNoAddresses for when a peer has no addresses ErrNoAddresses = errors.New("no addresses") // ErrNotForUs object is not meant for us ErrNotForUs = errors.New("object not for us") // ErrMissingKey when a key is not passed ErrMissingKey = errors.New("missing key") // ErrECDSAPrivateKeyRequired when a key is not an ECDSA key ErrECDSAPrivateKeyRequired = errors.New( "network currently requires an ecdsa private key") // ErrNonce is when the nonce does not match ErrNonce = errors.New("nonce does not match") )
View Source
var (
BindLocal = false // TODO(geoah) refactor to remove global
)
View Source
var (
UseUPNP = false
)
Functions ¶
func GetAddresses ¶
GetAddresses returns the addresses the transport is listening to
func GetLocalPeerAddresses ¶
GetLocalPeerAddresses returns the addresses TCP can listen to on the local machine
Types ¶
type Connection ¶
type Connection struct { RemotePeerKey *crypto.PublicKey IsIncoming bool // contains filtered or unexported fields }
func (*Connection) Close ¶ added in v0.3.2
func (c *Connection) Close() error
func (*Connection) LocalAddr ¶ added in v0.4.0
func (c *Connection) LocalAddr() string
func (*Connection) RemoteAddr ¶ added in v0.4.0
func (c *Connection) RemoteAddr() string
type MiddlewareHandler ¶
type MiddlewareHandler func(ctx context.Context, conn *Connection) (*Connection, error)
MiddlewareHandler ...
type Network ¶
type Network interface { Dial(ctx context.Context, address string, options ...Option) (*Connection, error) Listen(ctx context.Context) (chan *Connection, error) AddMiddleware(handler MiddlewareHandler) AddTransport(tag string, tsp Transport) }
Network interface
type Option ¶
type Option func(*Options)
func WithLocalDiscoveryOnly ¶
func WithLocalDiscoveryOnly() Option
type Transport ¶
type Transport interface { Dial(ctx context.Context, address string) (*Connection, error) Listen(ctx context.Context) (chan *Connection, error) }
func NewHTTPTransport ¶ added in v0.3.1
Source Files ¶
Click to show internal directories.
Click to hide internal directories.