transport

package
v0.3.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 9, 2018 License: GPL-3.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChannelBindingMechanism

type ChannelBindingMechanism int

ChannelBindingMechanism represents a scram channel binding mechanism.

const (
	// TLSUnique represents 'tls-unique' channel binding mechanism.
	TLSUnique ChannelBindingMechanism = iota
)

type Transport

type Transport interface {
	io.ReadWriteCloser

	// Type returns transport type value.
	Type() TransportType

	// WriteString writes a raw string to the transport.
	WriteString(s string) (n int, err error)

	// StartTLS secures the transport using SSL/TLS
	StartTLS(cfg *tls.Config, asClient bool)

	// EnableCompression activates a compression
	// mechanism on the transport.
	EnableCompression(compress.Level)

	// ChannelBindingBytes returns current transport
	// channel binding bytes.
	ChannelBindingBytes(ChannelBindingMechanism) []byte

	// PeerCertificates returns the certificate chain
	// presented by remote peer.
	PeerCertificates() []*x509.Certificate
}

Transport represents a stream transport mechanism.

func NewSocketTransport

func NewSocketTransport(conn net.Conn, keepAlive time.Duration) Transport

NewSocketTransport creates a socket class stream transport.

func NewWebSocketTransport

func NewWebSocketTransport(conn WebSocketConn, keepAlive time.Duration) Transport

NewWebSocketTransport creates a socket class stream transport.

type TransportType

type TransportType int

TransportType represents a stream transport type (socket).

const (
	// Socket represents a socket transport type.
	Socket TransportType = iota + 1

	// WebSocket represents a websocket transport type.
	WebSocket
)

func (TransportType) String

func (tt TransportType) String() string

String returns TransportType string representation.

type WebSocketConn

type WebSocketConn interface {
	NextReader() (messageType int, r io.Reader, err error)
	NextWriter(int) (io.WriteCloser, error)
	Close() error
	UnderlyingConn() net.Conn
	SetReadDeadline(t time.Time) error
}

WebSocketConn represents a websocket connection interface.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL