Versions in this module Expand all Collapse all v1 v1.0.1 Aug 31, 2021 v1.0.0 Aug 28, 2021 v0 v0.0.1 Aug 28, 2021 Changes in this version + var ErrSharedSecretIsZero = errors.New("shared secret is all zeroes") + var ErrSmallOrderRemotePubKey = errors.New("detected low order point from remote peer") + func NetPipe() (net.Conn, net.Conn) + func RegisterPacket(cdc *amino.Codec) + type Channel struct + Logger log.Logger + func (ch *Channel) SetLogger(l log.Logger) + type ChannelDescriptor struct + ID byte + Priority int + RecvBufferCapacity int + RecvMessageCapacity int + SendQueueCapacity int + func (chDesc ChannelDescriptor) FillDefaults() (filled ChannelDescriptor) + type ChannelStatus struct + ID byte + Priority int + RecentlySent int64 + SendQueueCapacity int + SendQueueSize int + type ConnectionStatus struct + Channels []ChannelStatus + Duration time.Duration + RecvMonitor flow.Status + SendMonitor flow.Status + type MConnConfig struct + FlushThrottle time.Duration + MaxPacketMsgPayloadSize int + PingInterval time.Duration + PongTimeout time.Duration + RecvRate int64 + SendRate int64 + func DefaultMConnConfig() MConnConfig + type MConnection struct + func NewMConnection(conn net.Conn, chDescs []*ChannelDescriptor, onReceive receiveCbFunc, ...) *MConnection + func NewMConnectionWithConfig(conn net.Conn, chDescs []*ChannelDescriptor, onReceive receiveCbFunc, ...) *MConnection + func (c *MConnection) CanSend(chID byte) bool + func (c *MConnection) FlushStop() + func (c *MConnection) OnStart() error + func (c *MConnection) OnStop() + func (c *MConnection) Send(chID byte, msgBytes []byte) bool + func (c *MConnection) SetLogger(l log.Logger) + func (c *MConnection) Status() ConnectionStatus + func (c *MConnection) String() string + func (c *MConnection) TrySend(chID byte, msgBytes []byte) bool + type Packet interface + AssertIsPacket func() + type PacketMsg struct + Bytes []byte + ChannelID byte + EOF byte + func (_ PacketMsg) AssertIsPacket() + func (mp PacketMsg) String() string + type PacketPing struct + func (_ PacketPing) AssertIsPacket() + type PacketPong struct + func (_ PacketPong) AssertIsPacket() + type SecretConnection struct + func MakeSecretConnection(conn io.ReadWriteCloser, locPrivKey crypto.PrivKey) (*SecretConnection, error) + func (sc *SecretConnection) Close() error + func (sc *SecretConnection) LocalAddr() net.Addr + func (sc *SecretConnection) Read(data []byte) (n int, err error) + func (sc *SecretConnection) RemoteAddr() net.Addr + func (sc *SecretConnection) RemotePubKey() crypto.PubKey + func (sc *SecretConnection) SetDeadline(t time.Time) error + func (sc *SecretConnection) SetReadDeadline(t time.Time) error + func (sc *SecretConnection) SetWriteDeadline(t time.Time) error + func (sc *SecretConnection) Write(data []byte) (n int, err error)