|
@@ -14,10 +14,7 @@
|
|
|
|
|
|
package msg
|
|
package msg
|
|
|
|
|
|
-import (
|
|
|
|
- "net"
|
|
|
|
- "reflect"
|
|
|
|
-)
|
|
|
|
|
|
+import "net"
|
|
|
|
|
|
const (
|
|
const (
|
|
TypeLogin = 'o'
|
|
TypeLogin = 'o'
|
|
@@ -40,39 +37,26 @@ const (
|
|
)
|
|
)
|
|
|
|
|
|
var (
|
|
var (
|
|
- TypeMap map[byte]reflect.Type
|
|
|
|
- TypeStringMap map[reflect.Type]byte
|
|
|
|
-)
|
|
|
|
-
|
|
|
|
-func init() {
|
|
|
|
- TypeMap = make(map[byte]reflect.Type)
|
|
|
|
- TypeStringMap = make(map[reflect.Type]byte)
|
|
|
|
-
|
|
|
|
- TypeMap[TypeLogin] = reflect.TypeOf(Login{})
|
|
|
|
- TypeMap[TypeLoginResp] = reflect.TypeOf(LoginResp{})
|
|
|
|
- TypeMap[TypeNewProxy] = reflect.TypeOf(NewProxy{})
|
|
|
|
- TypeMap[TypeNewProxyResp] = reflect.TypeOf(NewProxyResp{})
|
|
|
|
- TypeMap[TypeCloseProxy] = reflect.TypeOf(CloseProxy{})
|
|
|
|
- TypeMap[TypeNewWorkConn] = reflect.TypeOf(NewWorkConn{})
|
|
|
|
- TypeMap[TypeReqWorkConn] = reflect.TypeOf(ReqWorkConn{})
|
|
|
|
- TypeMap[TypeStartWorkConn] = reflect.TypeOf(StartWorkConn{})
|
|
|
|
- TypeMap[TypeNewVisitorConn] = reflect.TypeOf(NewVisitorConn{})
|
|
|
|
- TypeMap[TypeNewVisitorConnResp] = reflect.TypeOf(NewVisitorConnResp{})
|
|
|
|
- TypeMap[TypePing] = reflect.TypeOf(Ping{})
|
|
|
|
- TypeMap[TypePong] = reflect.TypeOf(Pong{})
|
|
|
|
- TypeMap[TypeUdpPacket] = reflect.TypeOf(UdpPacket{})
|
|
|
|
- TypeMap[TypeNatHoleVisitor] = reflect.TypeOf(NatHoleVisitor{})
|
|
|
|
- TypeMap[TypeNatHoleClient] = reflect.TypeOf(NatHoleClient{})
|
|
|
|
- TypeMap[TypeNatHoleResp] = reflect.TypeOf(NatHoleResp{})
|
|
|
|
- TypeMap[TypeNatHoleSid] = reflect.TypeOf(NatHoleSid{})
|
|
|
|
-
|
|
|
|
- for k, v := range TypeMap {
|
|
|
|
- TypeStringMap[v] = k
|
|
|
|
|
|
+ msgTypeMap = map[byte]interface{}{
|
|
|
|
+ TypeLogin: Login{},
|
|
|
|
+ TypeLoginResp: LoginResp{},
|
|
|
|
+ TypeNewProxy: NewProxy{},
|
|
|
|
+ TypeNewProxyResp: NewProxyResp{},
|
|
|
|
+ TypeCloseProxy: CloseProxy{},
|
|
|
|
+ TypeNewWorkConn: NewWorkConn{},
|
|
|
|
+ TypeReqWorkConn: ReqWorkConn{},
|
|
|
|
+ TypeStartWorkConn: StartWorkConn{},
|
|
|
|
+ TypeNewVisitorConn: NewVisitorConn{},
|
|
|
|
+ TypeNewVisitorConnResp: NewVisitorConnResp{},
|
|
|
|
+ TypePing: Ping{},
|
|
|
|
+ TypePong: Pong{},
|
|
|
|
+ TypeUdpPacket: UdpPacket{},
|
|
|
|
+ TypeNatHoleVisitor: NatHoleVisitor{},
|
|
|
|
+ TypeNatHoleClient: NatHoleClient{},
|
|
|
|
+ TypeNatHoleResp: NatHoleResp{},
|
|
|
|
+ TypeNatHoleSid: NatHoleSid{},
|
|
}
|
|
}
|
|
-}
|
|
|
|
-
|
|
|
|
-// Message wraps socket packages for communicating between frpc and frps.
|
|
|
|
-type Message interface{}
|
|
|
|
|
|
+)
|
|
|
|
|
|
// When frpc start, client send this message to login to server.
|
|
// When frpc start, client send this message to login to server.
|
|
type Login struct {
|
|
type Login struct {
|