mirror of
https://gitee.com/IrisVega/frp.git
synced 2024-11-01 22:31:29 +08:00
commit
595aba5a9b
11
Release.md
11
Release.md
@ -1,9 +1,4 @@
|
|||||||
### New
|
### Fix
|
||||||
|
|
||||||
* Add `oidc_scope` parameter to frpc when `authentication_method = oidc`.
|
* Server Plugin send incorrect op name for NewWorkConn.
|
||||||
* Support quic protocol between frpc and frps.
|
* QUIC stream leak.
|
||||||
|
|
||||||
|
|
||||||
### Improve
|
|
||||||
|
|
||||||
* Upgrade oidc and oauth2 package which is forward compatible.
|
|
||||||
|
@ -59,7 +59,8 @@ var stcpCmd = &cobra.Command{
|
|||||||
prefix = user + "."
|
prefix = user + "."
|
||||||
}
|
}
|
||||||
|
|
||||||
if role == "server" {
|
switch role {
|
||||||
|
case "server":
|
||||||
cfg := &config.STCPProxyConf{}
|
cfg := &config.STCPProxyConf{}
|
||||||
cfg.ProxyName = prefix + proxyName
|
cfg.ProxyName = prefix + proxyName
|
||||||
cfg.ProxyType = consts.STCPProxy
|
cfg.ProxyType = consts.STCPProxy
|
||||||
@ -75,7 +76,7 @@ var stcpCmd = &cobra.Command{
|
|||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
proxyConfs[cfg.ProxyName] = cfg
|
proxyConfs[cfg.ProxyName] = cfg
|
||||||
} else if role == "visitor" {
|
case "visitor":
|
||||||
cfg := &config.STCPVisitorConf{}
|
cfg := &config.STCPVisitorConf{}
|
||||||
cfg.ProxyName = prefix + proxyName
|
cfg.ProxyName = prefix + proxyName
|
||||||
cfg.ProxyType = consts.STCPProxy
|
cfg.ProxyType = consts.STCPProxy
|
||||||
@ -92,7 +93,7 @@ var stcpCmd = &cobra.Command{
|
|||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
visitorConfs[cfg.ProxyName] = cfg
|
visitorConfs[cfg.ProxyName] = cfg
|
||||||
} else {
|
default:
|
||||||
fmt.Println("invalid role")
|
fmt.Println("invalid role")
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -59,7 +59,8 @@ var sudpCmd = &cobra.Command{
|
|||||||
prefix = user + "."
|
prefix = user + "."
|
||||||
}
|
}
|
||||||
|
|
||||||
if role == "server" {
|
switch role {
|
||||||
|
case "server":
|
||||||
cfg := &config.SUDPProxyConf{}
|
cfg := &config.SUDPProxyConf{}
|
||||||
cfg.ProxyName = prefix + proxyName
|
cfg.ProxyName = prefix + proxyName
|
||||||
cfg.ProxyType = consts.SUDPProxy
|
cfg.ProxyType = consts.SUDPProxy
|
||||||
@ -75,7 +76,7 @@ var sudpCmd = &cobra.Command{
|
|||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
proxyConfs[cfg.ProxyName] = cfg
|
proxyConfs[cfg.ProxyName] = cfg
|
||||||
} else if role == "visitor" {
|
case "visitor":
|
||||||
cfg := &config.SUDPVisitorConf{}
|
cfg := &config.SUDPVisitorConf{}
|
||||||
cfg.ProxyName = prefix + proxyName
|
cfg.ProxyName = prefix + proxyName
|
||||||
cfg.ProxyType = consts.SUDPProxy
|
cfg.ProxyType = consts.SUDPProxy
|
||||||
@ -92,7 +93,7 @@ var sudpCmd = &cobra.Command{
|
|||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
visitorConfs[cfg.ProxyName] = cfg
|
visitorConfs[cfg.ProxyName] = cfg
|
||||||
} else {
|
default:
|
||||||
fmt.Println("invalid role")
|
fmt.Println("invalid role")
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -59,7 +59,8 @@ var xtcpCmd = &cobra.Command{
|
|||||||
prefix = user + "."
|
prefix = user + "."
|
||||||
}
|
}
|
||||||
|
|
||||||
if role == "server" {
|
switch role {
|
||||||
|
case "server":
|
||||||
cfg := &config.XTCPProxyConf{}
|
cfg := &config.XTCPProxyConf{}
|
||||||
cfg.ProxyName = prefix + proxyName
|
cfg.ProxyName = prefix + proxyName
|
||||||
cfg.ProxyType = consts.XTCPProxy
|
cfg.ProxyType = consts.XTCPProxy
|
||||||
@ -75,7 +76,7 @@ var xtcpCmd = &cobra.Command{
|
|||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
proxyConfs[cfg.ProxyName] = cfg
|
proxyConfs[cfg.ProxyName] = cfg
|
||||||
} else if role == "visitor" {
|
case "visitor":
|
||||||
cfg := &config.XTCPVisitorConf{}
|
cfg := &config.XTCPVisitorConf{}
|
||||||
cfg.ProxyName = prefix + proxyName
|
cfg.ProxyName = prefix + proxyName
|
||||||
cfg.ProxyType = consts.XTCPProxy
|
cfg.ProxyType = consts.XTCPProxy
|
||||||
@ -92,7 +93,7 @@ var xtcpCmd = &cobra.Command{
|
|||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
visitorConfs[cfg.ProxyName] = cfg
|
visitorConfs[cfg.ProxyName] = cfg
|
||||||
} else {
|
default:
|
||||||
fmt.Println("invalid role")
|
fmt.Println("invalid role")
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
@ -211,7 +211,7 @@ func (m *Manager) NewWorkConn(content *NewWorkConnContent) (*NewWorkConnContent,
|
|||||||
ctx = NewReqidContext(ctx, reqid)
|
ctx = NewReqidContext(ctx, reqid)
|
||||||
|
|
||||||
for _, p := range m.newWorkConnPlugins {
|
for _, p := range m.newWorkConnPlugins {
|
||||||
res, retContent, err = p.Handle(ctx, OpPing, *content)
|
res, retContent, err = p.Handle(ctx, OpNewWorkConn, *content)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
xl.Warn("send NewWorkConn request to plugin [%s] error: %v", p.Name(), err)
|
xl.Warn("send NewWorkConn request to plugin [%s] error: %v", p.Name(), err)
|
||||||
return nil, errors.New("send NewWorkConn request to plugin error")
|
return nil, errors.New("send NewWorkConn request to plugin error")
|
||||||
|
@ -211,3 +211,8 @@ func (conn *wrapQuicStream) RemoteAddr() net.Addr {
|
|||||||
}
|
}
|
||||||
return (*net.TCPAddr)(nil)
|
return (*net.TCPAddr)(nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (conn *wrapQuicStream) Close() error {
|
||||||
|
conn.Stream.CancelRead(0)
|
||||||
|
return conn.Stream.Close()
|
||||||
|
}
|
||||||
|
@ -19,7 +19,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
var version = "0.46.0"
|
var version = "0.46.1"
|
||||||
|
|
||||||
func Full() string {
|
func Full() string {
|
||||||
return version
|
return version
|
||||||
|
Loading…
Reference in New Issue
Block a user