Skip to content

Commit

Permalink
DNC
Browse files Browse the repository at this point in the history
  • Loading branch information
txthinking committed Feb 16, 2020
1 parent 9b7be05 commit 8d6b938
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 30 deletions.
4 changes: 2 additions & 2 deletions cli/brook/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -529,7 +529,7 @@ func main() {
Usage: "See more: https://github.com/txthinking/brook/wiki/How-to-run-transparent-proxy-on-Linux%3F",
},
&cli.BoolFlag{
Name: "clearBrookDidForMe",
Name: "cleanBrookDidForMe",
Usage: "See more: https://github.com/txthinking/brook/wiki/How-to-run-transparent-proxy-on-Linux%3F",
},
&cli.IntFlag{
Expand Down Expand Up @@ -560,7 +560,7 @@ func main() {
if err != nil {
return err
}
if c.Bool("clearBrookDidForMe") {
if c.Bool("cleanBrookDidForMe") {
if err := s.ClearAutoScripts(); err != nil {
return err
}
Expand Down
2 changes: 1 addition & 1 deletion plugin/authman.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ type ClientAuthman interface {
// ServerAuthman is used to provide extra authentication mechanism
type ServerAuthman interface {
// VerifyToken is used for server to verify token.
VerifyToken(token []byte, network, dst string) (Internet, error)
VerifyToken(token []byte, network string, a byte, dst string, b []byte) (Internet, error)
}

type Internet interface {
Expand Down
5 changes: 3 additions & 2 deletions server.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,14 +159,15 @@ func (s *Server) TCPHandle(c *net.TCPConn) error {
return err
}
address := socks5.ToAddress(b[0], b[1:len(b)-2], b[len(b)-2:])
a := b[0]

var ai plugin.Internet
if s.ServerAuthman != nil {
b, cn, err = ReadFrom(c, ck, cn, false)
if err != nil {
return err
}
ai, err = s.ServerAuthman.VerifyToken(b, "tcp", address)
ai, err = s.ServerAuthman.VerifyToken(b, "tcp", a, address, nil)
if err != nil {
return err
}
Expand Down Expand Up @@ -296,7 +297,7 @@ func (s *Server) UDPHandle(addr *net.UDPAddr, b []byte) error {
var ai plugin.Internet
if s.ServerAuthman != nil {
l := int(binary.BigEndian.Uint16(data[len(data)-2:]))
ai, err = s.ServerAuthman.VerifyToken(data[len(data)-l-2:len(data)-2], "udp", address)
ai, err = s.ServerAuthman.VerifyToken(data[len(data)-l-2:len(data)-2], "udp", a, address, data[0:len(data)-l-2])
if err != nil {
return err
}
Expand Down
23 changes: 0 additions & 23 deletions test_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,31 +15,8 @@
package brook

import (
"bytes"
"io/ioutil"
"log"
"net/http"
"strings"
"testing"
"time"
)

func TestTest(t *testing.T) {
hc := &http.Client{
Timeout: 9 * time.Second,
}
r, err := hc.Get("https://blackwhite.txthinking.com/white_cidr.list")
if err != nil {
// return err
}
defer r.Body.Close()
data, err := ioutil.ReadAll(r.Body)
if err != nil {
// return err
}
data = bytes.TrimSpace(data)
data = bytes.Replace(data, []byte{0x20}, []byte{}, -1)
data = bytes.Replace(data, []byte{0x0d, 0x0a}, []byte{0x0a}, -1)
cidrlist := strings.Split(string(data), "\n")
log.Println(":" + cidrlist[len(cidrlist)-1] + ":")
}
5 changes: 3 additions & 2 deletions wsserver.go
Original file line number Diff line number Diff line change
Expand Up @@ -189,14 +189,15 @@ func (s *WSServer) TCPHandle(c net.Conn) error {
return err
}
address := socks5.ToAddress(b[0], b[1:len(b)-2], b[len(b)-2:])
a := b[0]

var ai plugin.Internet
if s.ServerAuthman != nil {
b, cn, err = ReadFrom(c, ck, cn, false)
if err != nil {
return err
}
ai, err = s.ServerAuthman.VerifyToken(b, "tcp", address)
ai, err = s.ServerAuthman.VerifyToken(b, "tcp", a, address, nil)
if err != nil {
return err
}
Expand Down Expand Up @@ -329,7 +330,7 @@ func (s *WSServer) UDPHandle(c net.Conn) error {
address := socks5.ToAddress(a, h, p)
if s.ServerAuthman != nil {
l := int(binary.BigEndian.Uint16(data[len(data)-2:]))
ai, err = s.ServerAuthman.VerifyToken(data[len(data)-2-l:len(data)-2], "udp", address)
ai, err = s.ServerAuthman.VerifyToken(data[len(data)-2-l:len(data)-2], "udp", a, address, data[0:len(data)-2-l])
if err != nil {
return err
}
Expand Down

0 comments on commit 8d6b938

Please sign in to comment.