Documentation ¶
Overview ¶
Package websocket implements Websocket transport
Websocket transport implements an HTTP(S) compliable, surveillance proof transport method with plausible deniability.
Index ¶
- Variables
- func Dial(ctx context.Context, dest net.Destination, ...) (internet.Connection, error)
- func ListenWS(ctx context.Context, address net.Address, port net.Port, ...) (internet.Listener, error)
- type Config
- func (*Config) Descriptor() ([]byte, []int)deprecated
- func (x *Config) GetAcceptProxyProtocol() bool
- func (x *Config) GetEarlyDataHeaderName() string
- func (x *Config) GetHeader() []*Header
- func (x *Config) GetMaxEarlyData() int32
- func (c *Config) GetNormalizedPath() string
- func (x *Config) GetPath() string
- func (c *Config) GetRequestHeader() http.Header
- func (x *Config) GetUseBrowserForwarding() bool
- func (*Config) ProtoMessage()
- func (x *Config) ProtoReflect() protoreflect.Message
- func (x *Config) Reset()
- func (x *Config) String() string
- type DelayedDialer
- type DelayedDialerForwarded
- type Header
- type Listener
Constants ¶
This section is empty.
Variables ¶
View Source
var File_transport_internet_websocket_config_proto protoreflect.FileDescriptor
Functions ¶
func Dial ¶
func Dial(ctx context.Context, dest net.Destination, streamSettings *internet.MemoryStreamConfig) (internet.Connection, error)
Dial dials a WebSocket connection to the given destination.
Types ¶
type Config ¶
type Config struct { // URL path to the WebSocket service. Empty value means root(/). Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` Header []*Header `protobuf:"bytes,3,rep,name=header,proto3" json:"header,omitempty"` AcceptProxyProtocol bool `protobuf:"varint,4,opt,name=accept_proxy_protocol,json=acceptProxyProtocol,proto3" json:"accept_proxy_protocol,omitempty"` MaxEarlyData int32 `protobuf:"varint,5,opt,name=max_early_data,json=maxEarlyData,proto3" json:"max_early_data,omitempty"` UseBrowserForwarding bool `protobuf:"varint,6,opt,name=use_browser_forwarding,json=useBrowserForwarding,proto3" json:"use_browser_forwarding,omitempty"` EarlyDataHeaderName string `protobuf:"bytes,7,opt,name=early_data_header_name,json=earlyDataHeaderName,proto3" json:"early_data_header_name,omitempty"` // contains filtered or unexported fields }
func (*Config) Descriptor
deprecated
func (*Config) GetAcceptProxyProtocol ¶
func (*Config) GetEarlyDataHeaderName ¶
func (*Config) GetMaxEarlyData ¶
func (*Config) GetNormalizedPath ¶
func (*Config) GetRequestHeader ¶
func (*Config) GetUseBrowserForwarding ¶
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) ProtoReflect ¶
func (x *Config) ProtoReflect() protoreflect.Message
type DelayedDialer ¶
type DelayedDialerForwarded ¶
type DelayedDialerForwarded interface {
Dial(earlyData []byte) (io.ReadWriteCloser, error)
}
type Header ¶
type Header struct { Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // contains filtered or unexported fields }
func (*Header) Descriptor
deprecated
func (*Header) ProtoMessage ¶
func (*Header) ProtoMessage()
func (*Header) ProtoReflect ¶
func (x *Header) ProtoReflect() protoreflect.Message
Click to show internal directories.
Click to hide internal directories.