Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( ErrListenerClosed = verror.Register("v.io/x/ref/runtime/protocols/lib/websocket.ListenerClosed", verror.NoRetry, "{1:}{2:} listener is already closed.") ErrListenCalledInNaCl = verror.Register("v.io/x/ref/runtime/protocols/lib/websocket.ListenCalledInNaCl", verror.NoRetry, "{1:}{2:} Listen cannot be called in NaCl code.") )
Functions ¶
func NewErrListenCalledInNaCl ¶
NewErrListenCalledInNaCl returns an error with the ErrListenCalledInNaCl ID.
func NewErrListenerClosed ¶
NewErrListenerClosed returns an error with the ErrListenerClosed ID.
Types ¶
type WSH ¶
type WSH struct{}
func (WSH) Dial ¶
Dial returns flow.Conn that can be used with a HybridListener but always uses tcp. A client must specifically elect to use websockets by calling websocket.Dialer. The returned net.Conn will report 'tcp' as its Network.
func (WSH) Listen ¶
Listener returns a flow.Conn that supports both tcp and websockets over the same, single, port. A listen address of --v23.tcp.protocol=wsh --v23.tcp.address=127.0.0.1:8101 means that port 8101 can accept connections that use either tcp or websocket. The listener looks at the first 4 bytes of the incoming data stream to decide if it's a websocket protocol or not. These must be 'GET ' for websockets, all other protocols must guarantee to not send 'GET ' as the first four bytes of the payload.