Documentation ¶
Overview ¶
Package meeklite provides an implementation of the Meek circumvention protocol. Only a client implementation is provided, and no effort is made to normalize the TLS fingerprint.
It borrows quite liberally from the real meek-client code.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotSupported is the error returned for a unsupported operation. ErrNotSupported = errors.New("meek_lite: operation not supported") )
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { URL *gourl.URL `json:"url"` Front string `json:"front"` Address string `json:"address"` }
Config puts the parameters in a json compatible format
type MeekTransport ¶
type MeekTransport struct {
// contains filtered or unexported fields
}
MeekTransport that uses domain fronting to shapeshift the application network traffic
func NewMeekTransportWithFront ¶
func NewMeekTransportWithFront(url string, front string, dialer proxy.Dialer) *MeekTransport
NewMeekTransportWithFront is a public initializer method to get a new meek transport
func (*MeekTransport) Dial ¶
func (transport *MeekTransport) Dial() (net.Conn, error)
Dial creates outgoing transport connection
func (*MeekTransport) Listen ¶
func (transport *MeekTransport) Listen() (net.Listener, error)
Listen for the meek transport does not have a corresponding server, only a client
func (*MeekTransport) NetworkDialer ¶
func (transport *MeekTransport) NetworkDialer() proxy.Dialer
NetworkDialer is a dialer for the underlying network connection The Dialer can be modified to change how the network connections are made.
type Transport ¶
Transport contains parameters used in Optimizer