Allow multiple sub sections for tcp/udp server
This commit is contained in:
parent
e5b261d827
commit
6adca072d2
@ -40,6 +40,7 @@ type Proxy interface {
|
|||||||
Run() (remoteAddr string, err error)
|
Run() (remoteAddr string, err error)
|
||||||
GetControl() *Control
|
GetControl() *Control
|
||||||
GetName() string
|
GetName() string
|
||||||
|
GetToken() string
|
||||||
GetConf() config.ProxyConf
|
GetConf() config.ProxyConf
|
||||||
GetWorkConnFromPool() (workConn frpNet.Conn, err error)
|
GetWorkConnFromPool() (workConn frpNet.Conn, err error)
|
||||||
GetUsedPortsNum() int
|
GetUsedPortsNum() int
|
||||||
@ -52,6 +53,7 @@ type BaseProxy struct {
|
|||||||
ctl *Control
|
ctl *Control
|
||||||
listeners []frpNet.Listener
|
listeners []frpNet.Listener
|
||||||
usedPortsNum int
|
usedPortsNum int
|
||||||
|
token string
|
||||||
|
|
||||||
mu sync.RWMutex
|
mu sync.RWMutex
|
||||||
log.Logger
|
log.Logger
|
||||||
@ -61,6 +63,10 @@ func (pxy *BaseProxy) GetName() string {
|
|||||||
return pxy.name
|
return pxy.name
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (pxy *BaseProxy) GetToken() string {
|
||||||
|
return pxy.token
|
||||||
|
}
|
||||||
|
|
||||||
func (pxy *BaseProxy) GetControl() *Control {
|
func (pxy *BaseProxy) GetControl() *Control {
|
||||||
return pxy.ctl
|
return pxy.ctl
|
||||||
}
|
}
|
||||||
@ -308,7 +314,7 @@ func (pxy *HttpProxy) GetRealConn() (workConn frpNet.Conn, err error) {
|
|||||||
|
|
||||||
var rwc io.ReadWriteCloser = tmpConn
|
var rwc io.ReadWriteCloser = tmpConn
|
||||||
if pxy.cfg.UseEncryption {
|
if pxy.cfg.UseEncryption {
|
||||||
rwc, err = frpIo.WithEncryption(rwc, []byte(g.GlbServerCfg.Token))
|
rwc, err = frpIo.WithEncryption(rwc, []byte(pxy.token))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
pxy.Error("create encryption stream error: %v", err)
|
pxy.Error("create encryption stream error: %v", err)
|
||||||
return
|
return
|
||||||
@ -664,9 +670,12 @@ func HandleUserTcpConnection(pxy Proxy, userConn frpNet.Conn) {
|
|||||||
defer workConn.Close()
|
defer workConn.Close()
|
||||||
|
|
||||||
var local io.ReadWriteCloser = workConn
|
var local io.ReadWriteCloser = workConn
|
||||||
|
var token string = pxy.GetToken()
|
||||||
|
|
||||||
cfg := pxy.GetConf().GetBaseInfo()
|
cfg := pxy.GetConf().GetBaseInfo()
|
||||||
|
|
||||||
if cfg.UseEncryption {
|
if cfg.UseEncryption {
|
||||||
local, err = frpIo.WithEncryption(local, []byte(g.GlbServerCfg.Token))
|
local, err = frpIo.WithEncryption(local, []byte(token))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
pxy.Error("create encryption stream error: %v", err)
|
pxy.Error("create encryption stream error: %v", err)
|
||||||
return
|
return
|
||||||
|
Loading…
Reference in New Issue
Block a user