mirror of https://github.com/fatedier/frp.git
This commit is contained in:
parent
e9775bd70f
commit
22412851b4
|
@ -33,6 +33,8 @@ type Response struct {
|
|||
|
||||
type LoginContent struct {
|
||||
msg.Login
|
||||
|
||||
ClientAddress string `json:"client_address,omitempty"`
|
||||
}
|
||||
|
||||
type UserInfo struct {
|
||||
|
|
|
@ -334,7 +334,8 @@ func (svr *Service) handleConnection(ctx context.Context, conn net.Conn) {
|
|||
case *msg.Login:
|
||||
// server plugin hook
|
||||
content := &plugin.LoginContent{
|
||||
Login: *m,
|
||||
Login: *m,
|
||||
ClientAddress: conn.RemoteAddr().String(),
|
||||
}
|
||||
retContent, err := svr.pluginManager.Login(content)
|
||||
if err == nil {
|
||||
|
|
|
@ -24,9 +24,14 @@ var _ = Describe("[Feature: Server-Plugins]", func() {
|
|||
|
||||
It("Auth for custom meta token", func() {
|
||||
localPort := f.AllocPort()
|
||||
|
||||
clientAddressGot := false
|
||||
handler := func(req *plugin.Request) *plugin.Response {
|
||||
var ret plugin.Response
|
||||
content := req.Content.(*plugin.LoginContent)
|
||||
if content.ClientAddress != "" {
|
||||
clientAddressGot = true
|
||||
}
|
||||
if content.Metas["token"] == "123" {
|
||||
ret.Unchange = true
|
||||
} else {
|
||||
|
@ -69,6 +74,8 @@ var _ = Describe("[Feature: Server-Plugins]", func() {
|
|||
|
||||
framework.NewRequestExpect(f).Port(remotePort).Ensure()
|
||||
framework.NewRequestExpect(f).Port(remotePort2).ExpectError(true).Ensure()
|
||||
|
||||
framework.ExpectTrue(clientAddressGot)
|
||||
})
|
||||
})
|
||||
|
||||
|
|
Loading…
Reference in New Issue