mirror of
https://github.com/cbeuw/Cloak.git
synced 2024-10-23 15:46:25 +00:00
22 lines
576 B
Go
22 lines
576 B
Go
|
package server
|
||
|
|
||
|
import (
|
||
|
"github.com/cbeuw/Cloak/internal/util"
|
||
|
"net"
|
||
|
)
|
||
|
|
||
|
type Transport interface {
|
||
|
HasRecordLayer() bool
|
||
|
UnitReadFunc() func(net.Conn, []byte) (int, error)
|
||
|
}
|
||
|
|
||
|
type TLS struct{}
|
||
|
|
||
|
func (*TLS) HasRecordLayer() bool { return true }
|
||
|
func (*TLS) UnitReadFunc() func(net.Conn, []byte) (int, error) { return util.ReadTLS }
|
||
|
|
||
|
type WebSocket struct{}
|
||
|
|
||
|
func (*WebSocket) HasRecordLayer() bool { return false }
|
||
|
func (*WebSocket) UnitReadFunc() func(net.Conn, []byte) (int, error) { return util.ReadWebSocket }
|